差分

この文書の現在のバージョンと選択したバージョンの差分を表示します。

この比較画面にリンクする

次のリビジョン
前のリビジョン
lecture:kiso2:ex:ex05-6.c [2018/10/18 18:42]
sano 作成
lecture:kiso2:ex:ex05-6.c [2019/10/21 12:41] (現在)
sano
ライン 1: ライン 1:
 === 演習課題 ex05-6.c === === 演習課題 ex05-6.c ===
-キーボードから実数値 ​//a, b, c// 入力すると、//​3a// ​出力することを繰り返すプログラムを作成しなさい。ただし、入力された ​//a// の値が ​0 未満とき繰り返し終了し、また、//a// の値3の倍数のきは何も出力しないものとする。 +キーボードから三角形の各辺の長さ ​//a, b, c// を実数として入力すると、三角形が直角三角形であるかどうか判定するプログラム ​<wrap em>​ex05-6.c</​wrap> ​を作成し、__kiso2コマンドを用いて提出しなさい。__ 
-このようなプログラム <wrap em>​ex05-2.c</​wrap>​ を作成し、__kiso2コマンドを用いて提出しなさい。__+ただし、//​a, b, c// の値のいずれか値でない場合、あるい、三角形構成できない組み合わせ(とえば$a=1, b=2, c=3)入力された場合は、「三角形ではない」と出力するものとする。
  
 実行例: 実行例:
 <​code>​ <​code>​
-t180900@s01cd0542-160:​~/​kiso2-2018/ex05$ ./ex05-2 +t190900@s01cd0542-160:​~/​kiso2-2019/ex05$ ./ex05-
-a? 0 +a b c? 3 
-a? 3 +三角形ではない 
-a? +t190900@s01cd0542-160:​~/​kiso2-2019/​ex05$ ./ex05-6 
-a? 7 +b c2 1 0 
-7 +三角形ではない 
-a? 8 +t190900@s01cd0542-160:​~/​kiso2-2019/​ex05$ ./ex05-6 
-8 +b c4 
-a? 9 +直角三角形ではない 
-a? 10 +t190900@s01cd0542-160:​~/​kiso2-2019/​ex05$ ./ex05-
-10 +b c3 4 5 
-a? -1+直角三角形である 
 +t190900@s01cd0542-160:​~/​kiso2-2019/​ex05$ ./ex05-6 
 +b c1 2.3 2.4 
 +直角三角形ではない 
 +t190900@s01cd0542-160:​~/​kiso2-2019/​ex05$ ./ex05-6 
 +b c6.3 8.4 10.5 
 +直角三角形である
 </​code>​ </​code>​
 +
 +<WRAP tip>
 +//a, b, c// の3つの辺の長さが与えられたとき、この三角形が直角三角形となる条件は次のいずれかである。
 +  - $a^2 = b^2 + c^2$ または、$b^2 = c^2 + a^2$ または、$c^2 = a^2 + b^2$
 +  - もっとも大きな値を //a// としたとき、$a^2 = b^2 + c^2$
 +</​WRAP>​
 +<WRAP tip>
 +===変数の値の交換===
 +左右ぞれぞれの手に中身の入った熱いラーメンどんぶりを一つずつもっていると想像してみてください。
 +左右のどんぶりを持ち替えようとしたとき、アクロバティックな方法(どんぶりを宙に放ったり)を取らない限り、2つの熱いどんぶりを同時に交換することはできません。
 +オーソドックスには、いったん片方のどんぶりをテーブルの上に置き、もう一つのどんぶりを持ち替え、最後に空いた方の手で一旦テーブルに置いたどんぶりを持つ、といった方法で持ち替えると思います。
 +
 +==変数 x の値と、変数 y の値を交換する==
 +<code C>
 +int x, y, buf;
 +x = 1;
 +y = 2;
 +
 +buf = x;      // x の値をいったん buf に代入
 +// x = 1, y = 2, buf = 1
 +
 +x = y;        // y の値を x に代入(x の値は上書きされる)
 +// x = 2, y = 2, buf = 1
 +
 +y = buf;     // buf にある元の x の値を y に代入
 +// x = 2, y = 1, buf = 1
 +</​code>​
 +</​WRAP>​
 +
  • lecture/kiso2/ex/ex05-6.c.1539855725.txt.gz
  • 最終更新: 2018/10/18 18:42
  • by sano