演習7 問題5 第5問 p146∼147およびlist417x.cなどを参考にし て、右のような100KWから1000KWまでの仕事率につい て、50KWごとのKWと馬力(英馬力:hp)の対応表を印字す るプログラムを作成しなさい。ただし1KW = 1.341hpと する。また、カウンタ変数はint型にすること。 100 150 200 250 300 350 400 450 500 550 600 650 700 750 800 850 900 950 1000 [KW] [KW] [KW] [KW] [KW] [KW] [KW] [KW] [KW] [KW] [KW] [KW] [KW] [KW] [KW] [KW] [KW] [KW] [KW] 134.1000 201.1500 268.2000 335.2500 402.3000 469.3500 536.4000 603.4500 670.5000 737.5500 804.6000 871.6500 938.7000 1005.7500 1072.8000 1139.8500 1206.9000 1273.9500 1341.0000 [hp] [hp] [hp] [hp] [hp] [hp] [hp] [hp] [hp] [hp] [hp] [hp] [hp] [hp] [hp] [hp] [hp] [hp] [hp] #include "stdafx.h" int main(void) { 変数の名前:意味を持たせる double hp; int kw; const int step=50,lower=100,upper=1000; const double hp_kw=1.341; 数値定数:constにする } for(kw=lower;kw<=upper;kw+=step) { hp =hp_kw*kw; printf("%4d [KW]\t%10.4f [hp]\n",kw,hp); } return 0; 演習8 問題3 /* 66666 Tachibana Masayoshi */ #include "stdafx.h" int main(void) { int i,j,n; 2重ループ(1) n = 1; for (i=0;i<5;i++) { printf("%d: ",i); for (j=0;j<7;j++) { printf("%5d ",n); n = n+1; } printf("\n"); } } return 0; 2重ループ(2) 0: 1: 2: 3: 4: 1 8 15 22 29 2 9 16 23 30 3 10 17 24 31 4 11 18 25 32 5 12 19 26 33 6 13 20 27 34 7 14 21 28 35 #include "stdafx.h" 2重ループ(3) int main(void) { int i,j,n; n = 1; for (i=0;i<5;i++) { printf("%d: ",i); for (j=0;j<7;j++) { printf("%5d ",n); 二重になったfor文 n = n+1; } 内側のfor文が終了し printf("\n"); たら改行 } } return 0; 2重ループ(4) 外側のfor文が出力 内側のfor文が出力 0: 1: 2: 3: 4: 1 8 15 22 29 2 9 16 23 30 3 10 17 24 31 4 11 18 25 32 5 12 19 26 33 6 13 20 27 34 7 14 21 28 35 内側のfor文が終了したら改行 問題 掛け算の九九の表を図のように印刷するプ ログラムを作りなさい | 1 2 3 4 5 6 7 8 9 ---+---------------------------1| 1 2 3 4 5 6 7 8 9 2| 2 4 6 8 10 12 14 16 18 3| 3 6 9 12 15 18 21 24 27 4| 4 8 12 16 20 24 28 32 36 5| 5 10 15 20 25 30 35 40 45 6| 6 12 18 24 30 36 42 48 54 7| 7 14 21 28 35 42 49 56 63 8| 8 16 24 32 40 48 56 64 72 9| 9 18 27 36 45 54 63 72 81 問題を細かく分けて単純化する | 1 2 3 4 5 6 7 8 9 ---+---------------------------1| 1 2 3 4 5 6 7 8 9 2| 2 4 6 8 10 12 14 16 18 3| 3 6 9 12 15 18 21 24 27 4| 4 8 12 16 20 24 28 32 36 5| 5 10 15 20 25 30 35 40 45 6| 6 12 18 24 30 36 42 48 54 7| 7 14 21 28 35 42 49 56 63 8| 8 16 24 32 40 48 56 64 72 9| 9 18 27 36 45 54 63 72 81 aを出力してからbを出力する printfは前に戻って出力できない! a b a | 1 2 3 4 5 6 7 8 9 ---+---------------------------- a1 | a1 a2 改行 1 2 3 4 5 6 7 8 9 a13 a11 a12 1から9までくり返し jの値を変えて繰り返す b j b1 i 1| 2| 3| 4| 5| 6| 7| 8| 9| 1 2 3 4 5 6 7 8 9 2 4 6 8 10 12 14 16 18 3 6 9 12 15 18 21 24 27 4 8 12 16 20 24 28 32 36 5 10 15 20 25 30 35 40 45 6 12 18 24 30 36 42 48 54 7 14 21 28 35 42 49 56 63 8 16 24 32 40 48 56 64 72 9 18 27 36 45 54 63 72 81 j=4の場合 i b1 4| 4 改行 8 12 16 20 24 28 32 36 b13 b11 b12 i*j 小さな部分を組み上げてプログラムにする a11 a12 a1 a13 a a2 プログラム b11 b12 b13 b1 b 提出物と提出方法(1) • ソースコードを印刷し提出する – ソースコードにはきちんとインデントを付け ること – 学籍番号、名前をソースコードの先頭にコメ ントとして入れること – ソースコードはコンパイルエラーが無い状態 であること – 印刷したソースコードが2ページ以上となる場 合はステイプルでとじること – 以上が守られていない場合は再提出とする VisualStudioで作成したプログラムの 印刷方法 • Visual Studio で保存 – メニューバー ファイル→印刷 – プリンタの選択で「JUST PDF3」を選び、印刷する – 適当な場所にPDFファイルを保存する • JUST PDF 3 から印刷 – 先ほど保存したPDFファイルを右クリック – プログラムから開く → JUST PDF3 を選ぶ – JUST PDF 3 で表示 – メニューバー ファイル→ 印刷
© Copyright 2024 ExpyDoc