5行の入力から適切な5行を出力する問題と、その提出コードの解答例です。
paizaラーニングのレベルアップ問題集「その他セット」からの出典です。
paiza.jp
・問題「ifを使いますか?三項演算子を使いますか?」
5行の入力が与えられます。
1行目では整数aが与えられます。
aが0より大きいなら"plus"、そうでなければそのまま1行目で表示してください。
2行目では文字列bが与えられます。
bが"hoge"に一致するなら"yes"、そうでなければそのまま2行目で表示してください。
3行目では文字列cが与えられます。
cが10文字なら"ten"、そうでなければそのまま3行目で表示してください。
4行目では文字列dが与えられます。
dが文字"x"を含むなら"x"が最初に見つかった位置、そうでなければ"nothing"を4行目で表示してください。
・5行目では文字列eが与えられます。
eが5文字なら"five"、そうでなければeの最初の1文字だけを5行目で表示してください。
・入力される値
5行の各行でa,b,c,d,eが与えられます。
入力値最終行の末尾に改行が1つ入ります。
文字列は標準入力から渡されます。
・期待する出力
適切な5行の出力してください。
・条件
なし
僕が作成、提出したコードは、以下のとおりです。
/* C言語による5行の入出力 https://paiza.jp/works/mondai 提出コードの解答例 https://neguse-atama.hatenablog.com */ #include<stdio.h> #include<string.h> int main(void){ int a; char b[100],c[100],d[100],e[100]; const char *ava=d; int f='x'; char *posi; scanf("%d",&a); scanf("%s",b); scanf("%s",c); scanf("%s",d); scanf("%s",e); posi=strchr(ava,f); if(a>0){ printf("plus\n"); }else{ printf("%d\n",a); } if(strcmp(b,"hoge")==0){ printf("yes\n"); }else{ printf("%s\n",b); } if(strlen(c)==10){ printf("ten\n"); }else{ printf("%s\n",c); } if(posi!=NULL){ printf("%ld\n",posi-d); }else{ printf("nothing\n"); } if(strlen(e)==5){ printf("five\n"); }else{ printf("%.1s\n",e); } return 0; }
/* Javaによる5行の入出力 https://paiza.jp/works/mondai 提出コードの解答例 https://neguse-atama.hatenablog.com */ import java.util.Scanner; public class Main{ public static void main(String[] args) { Scanner sc = new Scanner(System.in); String A = sc.nextLine(); int a = Integer.parseInt(A); if(a > 0) { System.out.println("plus"); }else { System.out.println(a); } String b = sc.nextLine(); if(b.contentEquals("hoge")) { System.out.println("yes"); }else { System.out.println(b); } String c = sc.nextLine(); if(c.length() == 10) { System.out.println("ten"); }else { System.out.println(c); } String d = sc.nextLine(); if(d.contains("x")) { System.out.println(d.indexOf("x")); }else { System.out.println("nothing"); } String e = sc.nextLine(); if(e.length() == 5) { System.out.println("five"); }else { System.out.println(e.substring(0,1)); } } }
paizaラーニングのレベルアップ問題集については、ユーザー同士で解答を教え合ったり、コードを公開したりするのは自由としています。
また授業や研修、教材などにも利用できるそうです。