[C言語]四則演算とその他の計算方法(演算子解説)

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

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

  1. 整数型変数 x,y,z を定義する.
  2. x と y にキーボードから値を入力する.
  3. x+y の値を z に代入する.
  4. 計算式と計算結果を画面表示する.
  5. x-y の値を z に代入する.
  6. 計算式と計算結果を画面表示する.
  7. x,y 以外の変数を使用せずにx÷y,及び y÷x の計算結果を画面表示する

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

  1. 整数型変数 x,y,z を定義する.
  2. x と y にキーボードから値を入力する.
  3. x+y の値を z に代入する.
  4. 計算式と計算結果を画面表示する.
  5. x-y の値を z に代入する.
  6. 計算式と計算結果を画面表示する.
  7. x,y 以外の変数を使用せずにx÷y,及び y÷x の計算結果を画面表示する

サンプルコード

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

#include<stdio.h>

int main(){

    /*整数型変数x,yの定義*/
    int x,y,z;

    /*数値をキーボードから代入*/
    printf("入力:x=");
    scanf("%d",&x);
    printf("入力:y=");
    scanf("%d",&y);

    /*zに代入*/
    z=x+y;
    /*計算式と計算結果を表示する*/
    printf("\n出力:x + y = %d\n",z);
    /*zに代入*/
    z=x-y;
    /*計算式と計算結果を表示する*/
    printf("出力:x - y = %d\n",z);

    /*x÷y,y÷xの計算結果を他の変数を使わずに表示*/
    /*計算式「x/y」を1つの変数として扱ってよい*/
    /*割り算の演算子「/」は商のみ表示する*/
    /*割り算の演算子「%」は余りのみ表示する*/
    printf("出力:x ÷ y = %d あまり %d\n",x/y,x%y);
    printf("出力:y ÷ x = %d あまり %d\n",y/x,y%x);

    return 0;
}

実行結果

実行結果は以下の通り

入力:x=8
入力:y=3

出力:x + y = 11
出力:x - y = 5
出力:x ÷ y = 2 あまり 2
出力:y ÷ x = 0 あまり 3

補足説明を以下でしていきます。

c言語の演算子

まずはC言語における加減乗除の方法について見ていきます。

算術演算子

算数や数学と同じ扱い方の演算子です。代表的なものを紹介します。

演算子 機能
+ 加算(足し算) a + b     (a=3,b=5の時は8)
減算(引き算) a - b     (a=7,b=2の時は5)
* 乗算(掛け算) a * b     (a=2,b=3の時は6)
/ 除算(割り算) a / b     (a=7,b=3の時は2)
% 剰余(余り) a % b     (a=7,b=3の時は1)

aとb以外の文字を使って計算結果を記憶します。(※a+bで一つの文字として扱うことも可能です)

例 c = a + b (a=3,b=5の時はc=8)

代入演算子

普段と扱い方が異なりプログラミング特有の表し方になります。演算や結合を行いながら代入をします。計算結果を左辺に代入するので、計算前と計算後の左辺の値が変わっていきます

演算子 機能
= 右辺を左辺に代入 a = b     (a=3,b=5の時はa=5)
+= 左辺と右辺を加算して左辺に代入 a += b     (a=2,b=7の時はa=9)
ー= 左辺と右辺を減算して左辺に代入 a ー= b     (a=8,b=5の時はa=3)
*= 左辺と右辺を乗算して左辺に代入 a *= b     (a=2,b=3の時はa=6)
/= 左辺と右辺を除算して左辺に代入 a /= b     (a=7,b=3の時はa=2)
%= 左辺と右辺を除算して余りを左辺に代入 a %= b     (a=7,b=3の時はa=1)

特定の文字を変化させたいときによく使います。

例 aに10を加えて、その後3倍する
  a += 10; ( aに10足す ) <または a = a + 10;
  a *= 3;  ( a(既に10足されている) に3掛ける ) <または a = a * 10;  

このようにすることでプログラムを簡潔に書くことができます。

二乗やカッコの計算方法

C言語には累乗を表す演算子がありません。そのため累乗は「乗算(掛け算)」の演算子を複数回用いて表現します。

例 aの三乗 a * a * a

またC言語でもカッコを使って計算することができます。しかし数学のように大カッコ[]、中カッコ{}、小カッコ()といった分け方はなく、何重のカッコでも小カッコ()を使います。

例 ( a + b ) / ( a + ( a -b ) )

おすすめ参考書紹介

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

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

コメント

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