C++で指定された文字列の母音のペアを数えます
文字列が与えられ、タスクは両方の要素を母音として持つペアの数を計算することです。私たちが知っているように、英語のアルファベットには5つの母音があります。つまり、a、i、e、o、u、およびその他の文字は子音として知られています。
入力 − string str="チュートリアルポイント"
出力 −指定された文字列の母音のペアを数えます: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()関数を使用して文字列の長さを計算します
-
母音のペアの数を格納するために一時変数の数を取ります。
-
文字列の長さまでiから0までのループを開始します
-
ループ内で、ifstr[i]が'a'OR'i' OR'e' OR'o' OR'u'であることを確認してから、IF str [i+1]が'a'OR'i'OR'eであることを確認します。 'OR' o'OR' u'次に、カウントの値を1ずつ増やします
-
カウントを返す
-
結果を印刷する
例
#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 the pairs of vowels in the given string are: "<<count_pairs(str, length); return 0; }
出力
上記のコードを実行すると、次の出力が生成されます-
Count the pairs of vowels in the given string are: 2
-
C ++で指定された文字列内の「1(0+)1」のすべてのパターンを検索します
文字列に1(0+)1のようなパターンがあるとします。ここで、(0+)は、空でない連続した1の出現を示します。すべてのパターンを見つける必要があります。パターンは重複する可能性があります。文字列は必ずしもバイナリ文字列である必要はありません。数字と小文字のみを保持できます。文字列が1101001のようなものであるとすると、そのようなパターンが2つあります。 101と1001。 この問題を解決するために、次の手順に従います- 文字列内のすべての文字cを繰り返し処理します cが1の場合、要素が0になるまで繰り返します 0のストリームが終了すると、次の文字が1かどうかを確認します
-
C++プログラムのポインタを使用して文字列内の母音をカウントするには
ポインタを使用して文字列内の母音の数を見つけるには、文字列、母音、および文字列でのポインタの使用方法を理解する必要があります。 文字列は文字の配列です。また、母音は集合{a、e、i、o、u}の文字です。ポインタは、変数のメモリ位置の値を格納する変数です。 文字列内の母音の数を検索します。文字列をトラバースしてから、各文字を母音と比較します。等しい場合はカウンターを増やし、そうでない場合はカウンターを増やします。 以下のコードの条件は、すべて小文字の文字列が必要なことです。そうでない場合は、tolower()メソッドを使用できます。 例 #include <iostream>