paizaラーニングのレベルアップ問題集「文字列処理メニュー」からの出典です。
paiza.jp
C++による「文字列処理メニュー」問題集と、それらの提出コードの解答例です。
僕が作成、提出したコードは、以下のとおりです。
・C : 文字列から数値への変換
/* C++による「文字列処理メニュー」問題集(3) C : 文字列から数値への変換 https://paiza.jp/works/mondai 提出コードの解答例 https://neguse-atama.hatenablog.com */ #include<bits/stdc++.h> using namespace std; using ll=long long; int main(void){ ll s; cin>>s; cout<<s-813<<endl; return 0; }
・D : 数値から文字列への変換
/* C++による「文字列処理メニュー」問題集(3) D : 数値から文字列への変換 https://paiza.jp/works/mondai 提出コードの解答例 https://neguse-atama.hatenablog.com */ #include<bits/stdc++.h> using namespace std; int main(void){ int x,y,n; cin>>x>>y>>n; int xy=x+y; string s=to_string(xy); cout<<s[n-1]<<endl; return 0; }
・D : 大文字から小文字への変換
/* C++による「文字列処理メニュー」問題集(3) D : 大文字から小文字への変換 https://paiza.jp/works/mondai 提出コードの解答例 https://neguse-atama.hatenablog.com */ #include<bits/stdc++.h> using namespace std; int main(void){ string s; cin>>s; transform(s.begin(),s.end(),s.begin(),::tolower); cout<<s<<endl; return 0; }
・D : 小文字から大文字への変換
/* C++による「文字列処理メニュー」問題集(3) D : 小文字から大文字への変換 https://paiza.jp/works/mondai 提出コードの解答例 https://neguse-atama.hatenablog.com */ #include<bits/stdc++.h> using namespace std; int main(void){ string s; cin>>s; transform(s.begin(),s.end(),s.begin(),::toupper); cout<<s<<endl; return 0; }
・D : 大文字小文字の反転
/* C++による「文字列処理メニュー」問題集(3) D : 大文字小文字の反転 https://paiza.jp/works/mondai 提出コードの解答例 https://neguse-atama.hatenablog.com */ #include<bits/stdc++.h> using namespace std; int main(void){ string s; cin>>s; for(int i=0;i<s.size();i++){ if(isupper(s[i])){ s[i]+=32; }else{ s[i]-=32; } } cout<<s<<endl; return 0; }
paizaラーニングのレベルアップ問題集については、ユーザー同士で解答を教え合ったり、コードを公開したりするのは自由としています。
また授業や研修、教材などにも利用できるそうです。