在C ++中将所有小写字符转换为ASCII值与k互质的大写

在本教程中,我们将讨论将所有小写字符转换为ASCII值与k互质的大写字母的程序。

为此,我们将提供一个字符串和一个整数值k。我们的任务是遍历给定的字符串,并将ASCII值与给定的整数k互质的所有那些字符更改为大写。

示例

#include <bits/stdc++.h>
using namespace std;
//修改给定的字符串
void convert_string(string s, int k){
   int l = s.length();
   for (int i = 0; i < l; i++) {
      int ascii = (int)s[i];
      //检查值是否与k互质
      if (ascii >= 'a' && ascii <= 'z'&& __gcd(ascii, k) == 1) {
         char c = s[i] - 32;
         s[i] = c;
      }
   }
   cout << s << "\n";
}
int main(){
   string s = "nhooo";
   int k = 3;
   convert_string(s, k);
   return 0;
}

输出结果

讲故事