c言語
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
#includeint main(){ int x[] = {1,2,3,4,5,6,7,8,9}; int c =0; int i,t; printf("1から9の中で3で割ったときの余りが1のものは、\n"); for(i=0;i<9;i++){ t = x[i] % 3; if(t == 1){ printf("%d\n",x[i]); c++; } } printf("の%dつです。\n",c); return(0); }
このプログラムと同じ動作をするJavaプログラムを作成せよ。
exa.java
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
class exa{ public static void main(String args[]){ int x[]={1,2,3,4,5,6,7,8,9}; // ------------------------------------ (a) int c =0; // ----------------------------------------------------- (b) int i,t; // ----------------------------------------------------- (c) System.out.println("1から9の中で3で割ったときの余りが1のものは、"); for(i=0;i<9;i++){ // ----------------------------------------------------- (d) t = x[i] % 3; // ----------------------------------------------------- (e) if(t == 1){ // ----------------------------------------------------- (f) System.out.println(x[i]+""); // ------------------------------------ (g) c++; // ----------------------------------------------------- (h) } } System.out.println("の"+c+"つです。"); // ------------------------------------ (i) } }
% javac exa.java % java exa 1から9の中で3で割ったときの余りが1のものは、 1 4 7 の3つです。
(a)-xに整数の値1~9までを格納 (b)-cに0を格納 (c)-整数型でi,tを定義 (d)-9回繰り返す (e)-xを3で割ったあまりをtに格納 (f)-tが1の時に行う (g)-x[i]の値を出力 (h)-cを1つ増やす (i)-cの値をはさんで、文字を出力
今回はc言語から先に作り、そのあとJava言語で作ったのでソースコードが似たようになりました。c言語は久しぶりでしたが、それほど苦労することなくできたのでよかったです。また、Javaに直す時に、思っていたほどエラーがでなかったので驚きました。htmlは前回の構成と同じようにやりましたが、表現しずらいところもあったので、もう少し考えようと思います。
参考文献