在 C++ 中计算给定字符串中的元音对数

c++server side programmingprogramming

我们给出一个字符串,任务是计算两个元素都是元音的对数。众所周知,英文字母中有五个元音,即 a、i、e、o、u,其他字符称为辅音。

输入 − string str = "tutorials point”

输出 − 计算给定字符串中的元音对数:2

解释 −从给定的字符串中,我们可以形成 (t, u)、(u, t)、(t, o)、(o, r)、(r, i)、(i, a)、(a, l)、(l, s)、(s, p)、(p, o)、(o, i)、(i, n) 和 (n , t) 等对。因此,两个元素均为元音的对为 (i, a) 和 (o, i),因此元音对的数量为 2。

输入 − string str = "learning”

输出 −计算给定字符串中元音对的数量:1

输入 −从给定的字符串中,我们可以形成 (l, e)、(e, a)、(a, r)、(r, n)、(n, i)、(i, n) 和 (n, g) 这样的元音对。因此,两个元素都是元音的对只有 (e, a),因此元音对的数量为 1。

以下程序中使用的方法如下

  • 在字符串类型变量中输入字符串

  • 使用 length() 函数计算字符串的长度,该函数将返回字符串中的字符总数

  • 使用临时变量 count 来存储元音对的数量。

  • 开始循环,从 i 到 0,直到字符串的长度

  • 在循环内部,检查 str[i] 是否为 ‘a’ 或 ‘i’ 或 ‘e’ 或 ‘o’ 或 ‘u’然后检查 str[i+1] 是否为 ‘a’ 或 ‘i’ 或 ‘e’ 或 ‘o’ 或 ‘u’ 则将 count 的值加 1

  • 返回 count

  • 打印结果

示例

#include <bits/stdc++.h>
using namespace std;
int count_pairs(string str, int length){
   int count = 0;
   for(int i=0 ;i<length-1; i++){
      if(str[i]=='a' || str[i]=='i'||str[i]=='e'||str[i]=='o'||str[i]=='u'){
         if(str[i+1]=='a'||str[i+1]=='i'||str[i+1]=='e'||str[i+1]=='o'||str[i+1]=='u'){
            count++;
         }
      }
   }
   return count;
}
int main(){
   string str = "tutorials point";
   int length = str.length();
   cout<<"计算给定字符串中的元音对数: "<<count_pairs(str, length);
   return 0;
}

输出

如果我们运行上述代码,它将生成以下输出 −

计算给定字符串中的元音对数: 2

相关文章