変数

コンピュータ(プログラム)に入力された値は一時的にメモリに記録する必要があります。メモリの特定領域を確保して、指定した名前でアクセスするための仕組みが変数です。

xという名前の変数は以下のように宣言します。

let x;

代入演算

変数の役割は、プログラムで扱う値をメモリへ書き込み、必要な時に参照することです。最も基本となる代入演算では=の左側の変数(メモリ領域)に、右側の式の計算結果が書き込まれます。変数はその名の通り「変わる数」で、代入演算によって値を何度でも変更することができます。一方、式の中に含まれる変数は、それが指すメモリ領域の値を返します。たとえば次のプログラムは、変数a, b にそれぞれ5, 8 を格納し、その後それらの中身を交換するプログラムです。

let a = 5;
let b = 8;
let tmp = a;
a = b;
b = tmp;

算術演算

プログラミングの目的はコンピュータに計算をさせることです。計算の最も基本となるものが算術演算です。定数、変数、関数などに対して算術演算を行い計算式を記述します。四則演算はそれぞれ、+、-、*、/、で行います。たとえば

y = 2*a - b/c;

は、「2 × a − b ÷ c」の計算結果を y に代入するという意味になります。代入演算=は、左辺に右辺の計算結果を代入するという意味になることに注意してください。

標準入力

コンピュータへの最も基本的な入力の1つが標準入力です。データの入力先は主にプログラム中に宣言された変数(メモリ)になります。JavaScriptではfsモジュールを使って標準入力を表す特殊ファイル(/dev/stdin)をreadFileSyncで読み込みます。

標準入力から1つの文字列を変数xに読み込むには以下のように記述します。

let x = require("fs").readFileSync("/dev/stdin", "utf8");

数値変換

文字列を数値に変換するには、グローバル関数であるparseInt関数を使います。入力された文字列を数値に変換して変数xに代入するには以下のように記述します。

let x = parseInt(require("fs").readFileSync("/dev/stdin", "utf8"));

parseInt関数は最初の文字が数値に変換できない場合はNaNを返します。 ※NaNとはNot-a-Numberの略で、数値ではないことを意味します。


Reference

 

オンラインジャッジではじめるC/C++プログラミング入門 (マイナビ)

AIZU ONLINE JUDGE のコース問題を題材にした解説書です。各トピックごとに C/C++ 言語の基礎的な内容を学習し、Introduction to Programming の演習問題にチャレンジしていきます。内容は敷居の高いものではなく、プログラミング初学者が取り組む例題からスタートしています。