入力値からカウンタの値を順番に10個出力する問題と、その提出コードの解答例です。
paizaラーニングのレベルアップ問題集「Dランク早解きセット」からの出典です。
paiza.jp
・問題
0から9までを数えるカウンタを考えます。
0 → 1 → 2 → 3 → 4 → 5 → 6 → 7 → 8 → 9
このカウンタの拡張として、任意の数から始められるカウンタを考えました。
2 → 3 → 4 → 5 → 6 → 7 → 8 → 9 → 0 → 1
(2から始める例、カウンタは9まで進んだら0に戻ります)
入力から数字nを受け取り、nからカウンタをスタートさせて、
カウンタの値を順番に10個出力するプログラムを実装してください。
・入力される値:入力は以下のフォーマットで与えられます。
n
nはカウンタの最初の値
入力値最終行の末尾に改行が1つ入ります。
文字列は標準入力から渡されます。
・期待する出力
nから始まるカウンタの10個の値を、順番に改行区切りで出力してください。
(出力する値は10行からなることを期待します)
・条件
すべてのテストケースにおいて、以下の条件をみたします。
0 ≤ n ≤ 9
僕が作成、提出したコードは、以下のとおりです。
/* C言語による0から9までのカウンタ https://paiza.jp/works/mondai 提出コードの解答例 https://neguse-atama.hatenablog.com */ #include<stdio.h> int main(void){ int n; scanf("%d",&n); if(n==0){ printf("0\n1\n2\n3\n4\n5\n6\n7\n8\n9\n"); }else if(n==1){ printf("1\n2\n3\n4\n5\n6\n7\n8\n9\n0\n"); }else if(n==2){ printf("2\n3\n4\n5\n6\n7\n8\n9\n0\n1\n"); }else if(n==3){ printf("3\n4\n5\n6\n7\n8\n9\n0\n1\n2\n"); }else if(n==4){ printf("4\n5\n6\n7\n8\n9\n0\n1\n2\n3\n"); }else if(n==5){ printf("5\n6\n7\n8\n9\n0\n1\n2\n3\n4\n"); }else if(n==6){ printf("6\n7\n8\n9\n0\n1\n2\n3\n4\n5\n"); }else if(n==7){ printf("7\n8\n9\n0\n1\n2\n3\n4\n5\n6\n"); }else if(n==8){ printf("8\n9\n0\n1\n2\n3\n4\n5\n6\n7\n"); }else if(n==9){ printf("9\n0\n1\n2\n3\n4\n5\n6\n7\n8\n"); } return 0; }
Pythonのバージョンは、3.x に対応します。
#Pythonによる0から9までのカウンタ #https://paiza.jp/works/mondai #提出コードの解答例 #https://neguse-atama.hatenablog.com n = int(input()) if n==0: print("0\n1\n2\n3\n4\n5\n6\n7\n8\n9\n") elif n==1: print("1\n2\n3\n4\n5\n6\n7\n8\n9\n0\n") elif n==2: print("2\n3\n4\n5\n6\n7\n8\n9\n0\n1\n") elif n==3: print("3\n4\n5\n6\n7\n8\n9\n0\n1\n2\n") elif n==4: print("4\n5\n6\n7\n8\n9\n0\n1\n2\n3\n") elif n==5: print("5\n6\n7\n8\n9\n0\n1\n2\n3\n4\n") elif n==6: print("6\n7\n8\n9\n0\n1\n2\n3\n4\n5\n") elif n==7: print("7\n8\n9\n0\n1\n2\n3\n4\n5\n6\n") elif n==8: print("8\n9\n0\n1\n2\n3\n4\n5\n6\n7\n") elif n==9: print("9\n0\n1\n2\n3\n4\n5\n6\n7\n8\n")
/* Javaによる0から9までのカウンタ 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); int n = sc.nextInt(); for(int i = 0; i < 10; i++){ if(n + i < 10){ System.out.println(n + i); }else{ System.out.println(n + i - 10); } } } }
paizaラーニングのレベルアップ問題集については、ユーザー同士で解答を教え合ったり、コードを公開したりするのは自由としています。
また授業や研修、教材などにも利用できるそうです。