プログラミング言語共通の知識(1)ー変数と計算

変数

よくゲームとかで名前を設定すると「xxxさんの番です」みたいに設定した名前が出ますよね。あれはもちろんプログラム中に直打ちなんてできないので、「変数」というものを使います。

変数とは、値を入れておける箱のようなもので、それぞれに名前がついています。
箱の名前を指定して値を入れることができたり、箱の名前を指定すると入っている値を表示できたりします。

変数の役割は主に3つあります。
宣言
 → この名前の変数を使いますよという宣言
代入
 → 指定した名前の変数に値を入れますよという命令
参照
 → 指定した名前の変数の値を見ますよという命令

変数の宣言と代入を一緒にすることを初期化と言います。

また、変数宣言時には言語によってデータ型と呼ばれる変数の種類を指定する必要があります。
私の投稿ではどの言語でも共通の整数型(int)および小数型(double)を使用してサンプルコードを書きます。

C

// 変数の宣言
int num;

// 値の代入
num = 10;

// 初期化
double dec = 3.14;

// 変数の値を表示(参照)
printf("num=%d\n", num);
printf("dec=%f\n", dec);

C++

// 変数の宣言
int num;

// 値の代入
num = 10;

// 初期化
double dec = 3.14;

// 変数の値を表示(参照)
std::cout << "num=" << num << std::endl;
std::cout << "dec=" << dec << std::endl;

Java

// 変数の宣言
int num;

// 値の代入
num = 10;

// 初期化
double dec = 3.14;

// 変数の値を表示(参照)
System.out.print("num=");
System.out.println(num);

System.out.print("dec=");
System.out.println(dec);


PHP

// 変数の宣言(初期化)
// PHPは型指定が不要
$num = 10;
$dec = 3.14;

// 変数の値を表示(参照)
echo "num=";
echo $num;
echo "\n";

echo "dec=";
echo $dec;
echo "\n";


Ruby

# 変数の宣言(初期化)
# Rubyは型指定が不要
num = 10
dec = 3.14

# 変数の値を表示(参照)
print "num="
puts num

print "dec="
puts dec


Python3

# 変数の宣言(初期化)
# Python3は型指定が不要
num = 10
dec = 3.14

# 変数の値を表示(参照)
print("num=", end='')
print(num)

print("dec=", end='')
print(dec)


JavaScript

// 変数の宣言(初期化)
// JavaScriptは型指定が不要
const num = 10;
const dec = 3.14;
// 変数の値を表示(参照)
console.log("num=" + num);
console.log("dec=" + dec);


四則演算

四則演算は「+(和)」「-(差)」「*(積)」「/(商)」の記号を使います。

C

int num = 100;

int sum = num + 5;
int sub = num - 5;
int mul = num * 5;
int div = num / 5;

printf("sum=%d\n", sum);
printf("sum=%d\n", sub);
printf("sum=%d\n", mul);
printf("sum=%d\n", div);


C++

int num = 100;

int sum = num + 5;
std::cout << "sum=" << sum << std::endl;

int sub = num - 5;
std::cout << "sub=" << sub << std::endl;

int mul = num * 5;
std::cout << "mul=" << mul << std::endl;

int div = num / 5;
std::cout << "div=" << div << std::endl;

Java

int num = 100;

int sum = num + 5;
System.out.print("sum=");
System.out.println(sum);

int sub = num - 5;
System.out.print("sub=");
System.out.println(sub);

int mul = num * 5;
System.out.print("mul=");
System.out.println(mul);

int div = num / 5;
System.out.print("div=");
System.out.println(div);


PHP

$num = 100;

$sum = $num + 5;
echo "sum=";
echo $sum;
echo "\n";

$sub = $num - 5;
echo "sub=";
echo $sub;
echo "\n";

$mul = $num * 5;
echo "mul=";
echo $mul;
echo "\n";

$div = $num / 5;
echo "div=";
echo $div;
echo "\n";


Ruby

num = 100

sum = num + 5
print "sum="
puts sum

sub = num - 5
print "sub="
puts sub

mul = num * 5
print "mul="
puts mul

div = num / 5
print "div="
puts div


Python3

num = 100

sum = 100 + 5
print("sum=", end='')
print(sum)

sub = 100 - 5
print("sub=", end='')
print(sub)

mul = 100 * 5
print("mul=", end='')
print(mul)

div = 100 / 5
print("div=", end='')
print(div)


JavaScript

const num = 100

const sum = num + 5;
console.log("sum=" + sum);

const sub = num - 5;
console.log("sub=" + sub);

const mul = num * 5;
console.log("mul=" + mul);

const div = num / 5;
console.log("div=" + div);


剰余算

いわゆる「余り」のことですね。
10個のみかんを3人に同じ数分けました。余りはいくつでしょう?の余りです。

余りって結構使うんですよ。
例えば3の倍数を判定するときとか、整数の下1桁だけ必要なときとか。

そんな剰余算の計算は「%」の記号を使います。

C

int mod = 10 % 3;
printf("mod=%d\n", mod);


C++

int mod = 10 % 3;
std::cout << "mod=" << mod << std::endl;


Java

int mod = 10 % 3;
System.out.print("mod=");
System.out.println(mod);


PHP

$mod = 10 % 3;
echo "mod=";
echo $mod;
echo "\n";


Ruby

mod = 10 % 3
print "mod="
puts mod


Python3

mod = 10 % 3
print("mod=", end='')
print(mod)


JavaScript

const mod = 10 % 3;
console.log("mod=" + mod);

計算の優先順位

四則演算および剰余算には優先順位があります。
足し算より掛け算の方が先って算数でもやりましたよね。

ちなみに、( )で囲まれた箇所が最も優先順位が高くなります。

優先度


( )
*, /, %
+, -

C

int brackets = (8 + 5) * 2;
int noBrackets = 8 + 5 * 2;

printf("(8 + 5) * 2 = %d\n", brackets);
printf("8 + 5 * 2 = %d\n", noBrackets);


C++

int brackets = (8 + 5) * 2;
int noBrackets = 8 + 5 * 2;

std::cout << "(8 + 5) * 2 = " << brackets << std::endl;
std::cout << "8 + 5 * 2 = " << noBrackets << std::endl;


Java

int brackets = (8 + 5) * 2;
int noBrackets = 8 + 5 * 2;

System.out.print("(8 + 5) * 2 = ");
System.out.println(brackets);

System.out.print("8 + 5 * 2 = ");
System.out.println(noBrackets);

PHP

$brackets = (8 + 5) * 2;
$noBrackets = 8 + 5 * 2;

echo "(8 + 5) * 2 = ";
echo $brackets;
echo "\n";

echo "8 + 5 * 2 = ";
echo $noBrackets;
echo "\n";


Ruby

brackets = (8 + 5) * 2;
no_brackets = 8 + 5 * 2;

print "(8 + 5) * 2 = "
puts brackets

print "8 + 5 * 2 = "
puts no_brackets


Python3

brackets = (8 + 5) * 2;
no_brackets = 8 + 5 * 2;

print("(8 + 5) * 2 = ", end='')
print(brackets)

print("8 + 5 * 2 = ", end='')
print(no_brackets)


JavaScript

const brackets = (8 + 5) * 2;
const noBrackets = 8 + 5 * 2;

console.log("(8 + 5) * 2 = " + brackets); 
console.log("8 + 5 * 2 = " + noBrackets); 

この記事が気に入ったらサポートをしてみませんか?