C++
1 2C++の勉強中です。 3下記のようにコマンドラインから引数としてA,B,Cのいずれの組み合わせを入力 4すると、表示されるように作成しました。 5 6このコードを変更したいと思っており、現状A,B,Cの組み合わせは 7全部で15種類なのですが、組み合わせのパターンが増えることを想定した 8サンプルコードなど教えていただけますでしょうか? 9(例)組み合わせがA,B,C,D,E,Fなど 10 11#define などで文字を追加し組み合わせのパターンを増やしたり、減らしたり対応できる 12ようにしたいです。 13よろしくお願い致します。 14 15 16#include <iostream> 17#include <string> 18#include <unordered_set> 19using namespace std; 20 21int main(int argc, char* argv[]) 22{ 23 string str; 24 static const unordered_set<string> ptn 25 { 26 "A", 27 "A,B", 28 "A,C", 29 "A,B,C", 30 "A,C,B", 31 "B", 32 "B,A", 33 "B,C", 34 "B,A,C", 35 "B,C,A", 36 "C", 37 "C,A", 38 "C,B", 39 "C,A,B", 40 "C,B,A", 41 }; 42 bool found = false; 43 int cnt = 1; 44 45 if(ptn.count(argv[cnt])) 46 { 47 found = true; 48 } 49 if(found) 50 { 51 cout << "コマンドラインの引き数は : " << argv[cnt] << endl; 52 } 53 else 54 { 55 cout << "error: 入力誤りです"<< endl; 56 } 57}
ソートしたのと比較するならそんなに多くならないんじゃ?
回答2件
あなたの回答
tips
プレビュー