C++で波のパターンで文字列を印刷します
この問題では、文字列と整数nが与えられます。私たちのタスクは、指定された文字列を波のパターンで印刷することです。 n行の。
問題を理解するために例を見てみましょう
Input: Tutorial n = 3 Output: T r U o i s t l
ウェーブパターンは、文字列の各文字を次の行に1つずつ印刷し、次の要素からn行目までタブスペースで印刷します。また、印刷タブは最初の行まで上の行に配置され、文字列に文字が含まれるまで同じパターンに従います。
例
以下のコードは、私たちのソリューションの実装を示しています
#include<bits/stdc++.h> using namespace std; void printWavePattern(string s, int n) { if (n==1) { cout<<s; return; } int len=s.length(); char a[len][len]={ }; int row=0; bool down; for (int i=0; i<len; i++) { a[row][i]=s[i]; if (row==n-1) down=false; else if (row==0) down=true; (down)?(row++):(row--); } for (int i=0; i<n; i++) { for (int j=0; j<len; j++) { cout<<a[i][j]<<" "; } cout<<endl; } } int main() { string str = "TutorialsPoint"; int n = 4; cout<<n<<" Line wave pattern '"<<str<<"' is:\n"; printWavePattern(str, n); }
4 Line wave pattern 'TutorialsPoint' is − T a n u i l i t t r s o o P
-
C ++で文字列をintに解析する方法は?
文字列ストリームを使用して、C++のintをintに解析できます。この方法では、エラーチェックを行う必要があります。 例 #include<iostream> #include<sstream> using namespace std; int str_to_int(const string &str) { stringstream ss(str); int num; ss >> num; return num; } int main() {
-
C ++でintをstringに変換する方法は?
Cのitoa関数を使用して、intを文字列に変換できます。 例 #include<iostream> int main() { int a = 10; char *intStr = itoa(a); string str = string(intStr); cout << str; } 出力 これにより、出力が得られます- 10 これにより、整数が文字列に変換されます。 C ++ 11では、同じ目的で使用できる新しいメソッドto_stringが追加されました。次の