[C言語]繰り返し処理と足し算のみを利用してa×bを計算するプログラム

プログラミング
<<プログラミングを学びたい方はこちら!>>

今回は以下のプログラムの書き方を解説していきます。

キーボードから二つの整数 a,b を入力し,繰り返し処理と足し算のみを利用して a×
b を計算するプログラムを作成せよ.ただし,a, b が負の数の場合には,0 以上の値が入力されるまで入力処理を繰り返すこと.

整数の正負判定と、負だった場合の繰り返し入力処理では二つの書き方を紹介します。aとbそれぞれ異なるコードで読み込みます。

サンプルコードと実行結果

キーボードから二つの整数 a,b を入力し,繰り返し処理と足し算のみを利用して a×
b を計算するプログラムを作成せよ.ただし,b が負の数の場合には,0 以上の値が入力されるまで入力処理を繰り返すこと.

サンプルコード

コードは以下の通り (/**/で囲まれた部分は説明文のためコードではないです)

負だった時の繰り返し入力処理を、aとbそれぞれで2パターン紹介します。

#include<stdio.h>

int main(){

    /*整数型変数a,b,cを定義*/
    int a,b,c;
    /*整数型変数iを定義*/
    int i;

    /*a,bの数値をキーボードから代入*/

    /*do-whileを利用した書き方*/
    do{
        printf("入力:a=");
        scanf("%d",&a);
    }while(a<0);

    /*while無限ループを利用した書き方*/
    while(1){
        printf("入力:b=");
        scanf("%d",&b);
        if(b<0){
            printf("0以上の数値を入力してください.\n");
        }else{
            break;
        }
    }

    /*c,iを初期化*/
    c=0;
    i=0;
    while(i<b){
        c+=a;
        i++;
    }

    /*結果を表示*/
    printf("出力:a × b = %d\n",c);

    return 0;

}

実行結果

実行結果は以下の通り

入力:a=4
入力:b=6
出力:a × b = 24

入力値が負の値だと

入力:a=-4
入力:a=4
入力:b=-6
0以上の数値を入力してください.
入力:b=6
出力:a × b = 24

do-whileでも「0以上の数値を入力してください.」といったアナウンスを入れることもできますが少し面倒です。while無限ループの方が細かな条件を組み込みやすいです。

繰り返し処理(for/while)の解説

[C言語]1からnまでの整数の総和を求めるプログラム(while/for解説)
今回は以下のプログラムの書き方を解説していきます。整数型変数 n を定義し,1 以上の値をキーボードから入力して,1 から n までの整数の総和を求めるプログラムを作成せよ.サンプルコードと実行結果整数型変数 n ...

おすすめ参考書紹介

「苦しんで覚えるC言語」はひとつひとつの要素をスローモーションでゆっくり確実に解説していることが特徴です。真面目にC言語を覚えたい初心者向けで、コツコツと確実に力をつけていくことができます。

「スッキリわかるC言語入門 第2版 (スッキリわかる入門シリーズ)」は「苦しんで覚えるC言語」に比べより親しみやすいイラストや構成で苦手意識を持ちにくい工夫が施されています。

コメント

タイトルとURLをコピーしました