プログラミング入門 宿題 2017.10.23

Back


-6から6の範囲の整数を2つ乱数により発生させて,それらをxy平面の座標とする.その座標と図1に示す原点を中心とした内径6で外径10の円環の位置関係を判定するプログラムを作成せよ.なお,外側の場合には Out と,円環上であれば On で,内側の場合には In と表示するものとする.


図1

My student number: s174099

Coordinate: (-1, -1)
In

-----------------------------------

なお,結果の出力では必ず最初の行に自分の学生番号を,最後にハイフンによるラインをつけること.無い場合には減点するので注意.

平方根を使用しなくても可能な方法を考えてみてください.
解答用紙を使用する際には,学生番号と名前の記入も忘れないでください.さらに,解答用紙自体がC言語のプログラムとなっていますので, cc コマンドを実行して,コンパイルエラーの無いことを確認してから提出してください.

指定の解答用紙を使用していない,コンパイルエラーが出る,実行時に警告が出る,学生番号と名前が無い,というような答案は提出されても採点しません.注意してください.


解答例

/* ************************************************** */
/*                                                    */
/*      プログラミング入門                            */
/*      レポート課題                                  */
/*      2017.10.23                                    */
/*                                                    */
/* ************************************************** */
/*                                                    */
/*      学生番号:                                    */
/*                                                    */
/*      氏名:                                        */
/*                                                    */
/* ************************************************** */
/*                                                    */
/*      この行以降に解答のプログラムを書くこと        */

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

main()
{
	srand((unsigned) time(NULL));
	
	int x, y, r;
	
	printf("My student number: s174099\n\n");
	
	x = rand() % 13 - 6;
	y = rand() % 13 - 6;
	r = x * x + y* y;
	
	printf("Coordinate: (%d, %d)\n", x, y);
	
	if(r>25)
		printf("Out\n");
	else if(r>=9)
		printf("On\n");
	else
		printf("In\n");
	
	printf("\n-----------------------------------\n\n");
	
	return(0);
}


Back