第3回の演習の解答例

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

解答例:


#include <stdio.h>

void main()
{
    int a, b;

    printf("a = ");
    scanf("%d", &a);
    
    printf("b = ");
    scanf("%d", &b);

    printf("a x b = %d ¥n", a*b); 
    printf("a / b = %f ¥n", (float)a/(float)b); 
    printf("a %% b = %d ¥n", a%b);
    printf("a^2 + ab = %d ¥n", (a+b)*a);
    printf("底辺a,高さbの三角形の面積 = %d¥n", a*b/2); 
    printf("上底がa, 下底がa+4, 高さbの台形の面積 = %d¥n", (a+a+4)*b/2);
     
}



(2)人は1kg減量するためには7500kcal消費する必要があるとする。

  みんながビリーズブートキャンプでダイエットすると1週間のトレーニングで2500kcal消費できる.

  キーボードから今の体重(kg)と目標体重(kg)を入力すると,あと何kcal消費する必要があるか画面に表示するプログラムを作成せよ.

  *体重は浮動小数型で定義しなさい*

解答例:


#include <stdio.h>

void main()
{
    float a, b;
	float c = 7500;

    printf("今の体重(kg) = ");
    scanf("%f", &a);
    
    printf("目標体重(kg) = ");
    scanf("%f", &b);

    printf("あなたはあと%dkcal消費する必要があります。 ¥n", (int)((a-b)*c)); 
     
}

(3)次に,もし求めた消費カロリーが2500kcal 以上だったら「一週間以上ビリー確定!」

  と画面に表示されるようにプログラムを改良しよう.

解答例:


#include <stdio.h>

void main()
{
    float a, b;
	float c = 7500;

    printf("今の体重(kg) = ");
    scanf("%f", &a);
    
    printf("目標体重(kg) = ");
    scanf("%f", &b);

    printf("あなたはあと%dkcal消費する必要があります。 ¥n", (int)((a-b)*c));

    if ( (a-b)*c >=2500 ) 
    {
        printf("一週間以上ビリー確定!¥n "); 
    }


     
}




(4)以下の表のように,求めた消費カロリーがさらに細かく分類され,ビリー継続期間を画面に表示するようにプログラムを改良しよう.

消費カロリー(kcal)     ビリー継続期間
 0以内  ビリーとトレーニングする必要はありません 
 0・2500  ビリーと1週間くらい運動だね 
 2500・10000  ビリーと1ヵ月頑張ってみよう 
 10000・20000  ビリーと2ヵ月頑張ってみよう
 20000・30000  ビリーと3ヵ月頑張ってみよう 
 30000・40000  ビリーと4ヵ月頑張ってみよう 
 40000以上  やっぱり食生活から見直そう

解答例:



#include <stdio.h>

void main()
{
    float a, b, c;   /* aは今の体重,bは目標体重,cは必要な消費カロリー */

    printf("今の体重は?[kg]");
    scanf("%f", &a);
    
    printf("目標体重は?[kg]");
    scanf("%f", &b);

    c = (a-b) * 7500;

    printf("あなたはあと%fkcal消費する必要があります.¥n", c);

    if ( c < 0 ) {
 
        printf("ビリーとトレーニングする必要はありません¥n");              /* cが0未満の時実行 処理1*/
 
    } else if ( c < 2500 ) {
 
        printf("ビリーと1週間くらい運動だね¥n");                  /* cが2500未満の時実行 処理2*/
 
    } else if ( c < 10000 ) {
 
        printf("ビリーと1ヵ月頑張ってみよう¥n");              /* cが10000未満の時実行 処理3*/
 
    } else if ( c < 20000 ) {
 
        printf("ビリーと2ヵ月頑張ってみよう¥n");              /* cが20000未満の時実行 処理4*/
 
    } else if ( c < 30000 ) {
 
        printf("ビリーと3ヵ月頑張ってみよう¥n");              /* cが30000未満の時実行 処理5*/

    } else if ( c < 40000 ) {
 
        printf("ビリーと4ヵ月頑張ってみよう¥n");              /* cが40000未満の時実行 処理6*/
 
    } else {
 
        printf("やっぱり食生活から見直そう¥n");              /* cが40000以上の時実行 処理7*/
 
    }
}