練習課題:税込価格を求める(改良版2)

 以前、税込価格を求めるプログラムとして、以下のようなプログラムを作成しました。

#include <stdio.h>

int main(int argc, const char * argv[])
{
    
    // insert code here...
    int price;      // 価格
    int sum;        // 税込価格
    
    // 価格の設定
    printf("商品価格を入力して下さい。\n");
    scanf("%d", &price);
    
    // 税込価格を計算
    sum = price * 1.05;
    
    // 税込価格を表示
    printf("税込価格は%d円です。\n", sum);
    
    return 0;
}

 ここまで、サブルーチンについて学んできました。このプログラムでサブルーチンを使って書き換えてみましょう。

 課題:ある価格の商品の税込価格を表示して下さい。税込計算を行う部分をサブルーチンにしてmain関数の外で定義して下さい。

 ...

 では、回答の一例を掲載します。

#include <stdio.h>

int calcTax(int price) {
    int sum;
    sum = price * 1.05;
    return sum;
}

int main(int argc, const char * argv[])
{
    
    // insert code here...
    int price;      // 価格
    int sum;        // 税込価格
    
    // 価格の設定
    printf("商品価格を入力して下さい。\n");
    scanf("%d", &price);
    
    // 税込価格を計算
    sum = calcTax(price);
    
    // 税込価格を表示
    printf("税込価格は%d円です。\n", sum);
    
    return 0;
}

 実行し、1500(円)を入力して動作を確認してみて下さい。

商品価格を入力して下さい。
1500
税込価格は1575円です。

 Tips:以前からの繰り返しになりますが、今の状態だけですと、例えば、99円を入力すると計算結果が「103円」を返します。本来なら四捨五入で消費税を計算するべきですが、どうしても切り捨てで計算されてしまいます。四捨五入するための関数は存在していますが、それに関しては、今後の記事で「数学関連の処理」に関する項目を取り扱う予定で、その中で四捨五入の方法をご紹介する予定です。

■スポンサーリンク

このページの先頭へ