3回の演習の解答例

解答例:

(1)先週の課題(2)において,変数a, b をキーボードから入力して計算するように変更してみよう.


/*///////////////////////*/
/*    2008_3kadai1.c     */			/*ファイル名の表示:(コメント/**/間は,コンパイルされない*/
/*///////////////////////*/

#include <stdio.h>

void main()
{
	int a,b;				/*入力用変数(整数型)の定義*/
	
	printf("Please input number a : ");
	scanf("%d",&a);				/*変数aへの入力*/
	printf("Please input number b : ");
	scanf("%d",&b);				/*変数bへの入力*/
	
	printf("a+b=%d¥n",a+b);			/*以下,変数の計算と表示*/
	printf("a-b=%d¥n",a-b);
	printf("a×b=%d¥n",a*b);
	printf("a÷b=%d¥n",a/b);
	printf("a%b=%d¥n",a%b);
	printf("The area of a traiangle with base a and height b equal : %d¥n",a*b/2);
	printf("a^2+ab=%d¥n",a*a+a*b);
	
}

(2)肥満度を表す指標にBMI(Body Mass Index)というものがある.これはWHOで基準が発表されているが,18.5から25までが正常範囲とされている.
BMI=体重(kg) ÷ 身長^2(m)
キーボードから体重と身長を入力(単位に注意!)すると,BMI値を計算して画面に表示するプログラムを作成せよ.


/*///////////////////////*/
/*    2008_3kadai2.c     */
/*///////////////////////*/

#include <stdio.h>

void main()
{
	float mass, hei, BMI;				/*入力用変数(浮動小数点型)の定義*/
	
	printf("Please input your mass : ");
	scanf("%f",&mass);				/*体重の入力*/
	printf("Please input your height : ");
	scanf("%f",&hei);				/*身長の入力*/
	
	BMI = mass/(hei*hei);				/*BMIの計算.C言語では^記号が乗数計算を表さない*/
	
	printf("¥nYour BMI : %f¥n",BMI);		/*BMIの表示*/
	
}

(3)次に,もし求めたBMI値が25以上だったら「肥満です」と画面に表示されるようにプログラムを改良しよう.


/*///////////////////////*/
/*    2008_3kadai3.c     */
/*///////////////////////*/

#include <stdio.h>

void main()
{
	float mass, hei, BMI;				/*入力用変数(浮動小数点型)の定義*/
	
	printf("Please input your mass : ");
	scanf("%f",&mass);
	printf("Please input your height : ");
	scanf("%f",&hei);
	
	BMI = mass/(hei*hei);
	
	printf("your BMI : %f¥n",BMI);
	
	if(BMI >= 25.0){				/*if文(MBIが25以上ならば)*/
		printf("You are obese.¥n");		/*25以上で実行される文*/
	}
	
}

(4)以下の表のように,求めたBMI値がさらに細かく分類され,判定結果を画面に表示するようにプログラムを改良しよう.


/*///////////////////////*/
/*    2008_3kadai4.c     */
/*///////////////////////*/
#include <stdio.h>

void main()
{
	float mass, hei, BMI;
	
	printf("Please input your mass : ");
	scanf("%f",&mass);
	printf("Please input your height : ");
	scanf("%f",&hei);
	
	BMI = mass/(hei*hei);
	
	printf("your BMI : %f¥n",BMI);
	
	
	if(BMI <= 18.5){					/*if文(MBIが18.5以下ならばならば次のelse ifの判定を行う)*/
		printf("You are slemness.¥n");			/*18.5以下で実行される文*/
	}else if(BMI <= 25){
		printf("You are standard type.¥n");		/*18.5以上,25.0以下で実行される文*/
	}else if(BMI <= 30){
		printf("You are relatively overweight.¥n");	/*25.0以上,30.0以下で実行される文*/
	}else if(BMI <= 35){
		printf("You are fatness 1.¥n");			/*30.0以上,35.0以下で実行される文*/
	}else if(BMI <= 40){
		printf("You are fatness 2.¥n");			/*35.0以上,40.0以下で実行される文*/
	}else if(BMI > 40){
		printf("You are fatness 3.¥n");			/*40.0以上で実行される文*/
	}
	
}