指定された範囲のすべての数字を単語に変換するC++プログラム
aとbの2桁があるとします。各桁を単語に変換し、1つずつ印刷する必要があります。数字を単語に印刷すると、数字5を意味し、「5」と印刷されます。
したがって、入力がa =2、b =6のような場合、出力は
になります。Two Three Four Five Six
これを解決するには、次の手順に従います-
- d<0かつd>9の場合、次のようになります。
- return( "0〜9の範囲を超えています")
- それ以外の場合、dが0と同じ場合、次のようになります。
- return( "Zero")
- それ以外の場合、dが1と同じ場合、次のようになります。
- return( "One")
- それ以外の場合、dが2と同じ場合、次のようになります。
- return( "Two")
- それ以外の場合、dが3と同じ場合、次のようになります。
- return( "Three")
- それ以外の場合、dが4と同じ場合、次のようになります。
- return( "Four")
- それ以外の場合、dが5と同じ場合、次のようになります。
- return( "Five")
- それ以外の場合、dが6と同じ場合、次のようになります。
- return( "Six")
- それ以外の場合、dが7と同じ場合、次のようになります。
- return( "Seven")
- それ以外の場合、dが8と同じ場合、次のようになります。
- return( "Eight")
- それ以外の場合、dが9と同じ場合、次のようになります。
- return( "Nine")
- メインの方法から、次の手順を実行します。
- 範囲aのiについては、
- solve(i)
- カーソルを次の行に移動します
例
理解を深めるために、次の実装を見てみましょう-
#include <iostream> using namespace std; void solve(int d){ if(d < 0 || d > 9){ cout << "Beyond range of 0 - 9"; }else if(d == 0){ cout << "Zero"; }else if(d == 1){ cout << "One"; }else if(d == 2){ cout << "Two"; }else if(d == 3){ cout << "Three"; }else if(d == 4){ cout << "Four"; }else if(d == 5){ cout << "Five"; }else if(d == 6){ cout << "Six"; }else if(d == 7){ cout << "Seven"; }else if(d == 8){ cout << "Eight"; }else if(d == 9){ cout << "Nine"; } } int main(){ int a = 2, b = 6; for(int i = a; i <= b; i++){ solve(i); cout << endl; } }
入力
2, 6
出力
Two Three Four Five Six
-
辞書式順序で特定のセットのすべてのサブセットを生成するC++プログラム
これは、辞書式順序で特定のセットのすべてのサブセットを生成するC++プログラムです。このアルゴリズムは、指定された配列のセットからの各長さの可能なすべての組み合わせを昇順で出力します。このアルゴリズムの時間計算量はO(n *(2 ^ n))です。 アルゴリズム Begin For each length ‘i’ GenAllSubset() function is called: 1) In GenAllSubset(), if currLen is more than the reqLen then return.
-
指定された数値の桁を合計するC++プログラム
これは、C++言語で桁の合計を計算する例です。 例 #include<iostream> using namespace std; int main() { int x, s = 0; cout << "Enter the number : "; cin >> x; while (x != 0) { s = s + x % 10; x = x / 10;