4 月 25 日のレポートについて 基礎プログラミング A C106XXXX XXXXXXXX ---- 1.Q.Ruby はどの種類に属するプログラミング言語であるか。 A.Interpreter type (インタプリタ型)のプログラミング言語で、 人が入力したプログラムの文を一行ずつ変換して実行する。 一方、Compiler type (コンパイラ型)は一行ではなく一括変換。 Q.なぜ初心者向けなのか。 A.プログラミングに必要な文字数が他のプログラミング言語に 比べて少ないことや、計算機のしくみを理解しなくても プログラミングできるため。 Q.どのような指向を持った言語であるか。 A.「Object 指向」のプログラミング言語。 Object 指向とは、「目的のために、すでにある機能を 使うこと。」 (定義がいまいちわかりません。引用で失礼します。) 2.架空の市の人口増加をシュミレートしてみました。 A.x 市の人口は 毎年 2 % ずつ増加している。 1990 年時点での総人口は 8700 人であった。 総人口が 10000 人に到達するのは何年になるか。 B. #!/usr/koeki/bin/ruby printf("x 市の人口は 1 年で 2 % 増加している。\n") printf("1990 年の時点での総人口は 8700 人だった。\n") printf("総人口が 10000 人に到達するのは何年か。\n\n") p = p0 = 8700 y = 1 while p < 10000 p *= 1.02 printf("%d 年後では \t %d 人\n", y, p) y +=1 end printf("\n") printf("8 年後には 10000 人を越える。\n") printf("よって、総人口 10000 人を越えるのは 1998 年。\n") C.i を p に変更(効果不明)。\n を用いて改行を活用。 printf を多数追加。 D.x 市の人口は 1 年で 2 % 増加している。 1990 年の時点での総人口は 8700 人だった。 総人口が 10000 人に到達するのは何年か。 1 年後では 8874 人 2 年後では 9051 人 3 年後では 9232 人 4 年後では 9417 人 5 年後では 9605 人 6 年後では 9797 人 7 年後では 9993 人 8 年後では 10193 人 8 年後には 10000 人を越える。 よって、総人口 10000 人を越えるのは 1998 年。 E.単純な式であったが、完成までにはかなりの時間を費やした。 「8 年後には 10000 人を越える。」の部分が 「9 年後には 10193 人を越える。」となってしまい、 printf を使うという発想が肝だったと思う。 3.今回も進行スピードのためにとても大変でしたが、要点が HP に書いてあったので一安心です。 レポートをこの調子でこなしていけばなんとか 理解できるかもしれません。