変数・配列

テーマ

プログラミング · 変数・配列 · QUESTION 001

次のプログラムの実行した際の表示結果を答えよ。

(1)x = 3
(2)y = 4
(3)goukei = x + y
(4)表示する("合計は",goukei,"です。")
答えと解説を見る

答え合計は7です。

解説変数xとyに入っている値を足し、その結果を別の変数に保存します。
xが3、yが4なら、合計は7になります。

プログラミング · 変数・配列 · QUESTION 002

これは英語、数学、国語の平均点を求めるプログラムである。
このプログラムの誤りを指摘し、正しくせよ。

(1)eigo = 50
(2)sugaku = 65
(3)kokugo = 56
(4)heikin = eigo + sugaku + kokugo /3
(5)表示する("平均点は",heikin,"です。")
答えと解説を見る

答え(4)heikin = (eigo + sugaku + kokugo) / 3

解説計算式では、かっこ、乗除算、加減算の順に処理します。
平均を求める式は、合計を先に計算してから人数で割る形にします。

プログラミング · 変数・配列 · QUESTION 003

次のプログラムの実行した際の表示結果を答えよ。

(1)x = 1
(2)x = 2
(3)表示する("現在のxの値は", x, "です。")
答えと解説を見る

答え現在のxの値は2です。

解説代入文は、右辺を計算してから左辺の変数へ保存します。
同じ変数へ後から代入すると、前の値は新しい値に置き換わります。

プログラミング · 変数・配列 · QUESTION 004

次のプログラムの実行した際の表示結果を答えよ。

(1)x = 1
(2)y = 2
(3)x = y
(4)表示する("現在のxの値は", x, "です。")
(5)表示する("現在のyの値は", y, "です。")
答えと解説を見る

答え現在のxの値は2です。 現在のyの値は2です。

解説yの値をxへ代入しても、yの値は変わりません。
代入は値をコピーする操作で、二つの変数を自動的に結び付ける操作ではありません。

プログラミング · 変数・配列 · QUESTION 005

次のプログラムの実行した際の表示結果を答えよ。

(1)x = 1
(2)y = 2
(3)tmp = x
(4)x = y
(5)y = tmp
(6)表示する("現在のxの値は", x, "です。")
(7)表示する("現在のyの値は", y, "です。")
答えと解説を見る

答え現在のxの値は2です。 現在のyの値は1です。

解説二つの変数を交換するときは、一方の値を一時変数に退避します。
退避せずに上書きすると、最初の値を失ってしまいます。

プログラミング · 変数・配列 · QUESTION 006

次のプログラムの実行した際の表示結果を答えよ。

(1)x = 10
(2)x = x + 1
(3)表示する("現在のxの値は", x, "です。")
答えと解説を見る

答え現在のxの値は11です。

解説右辺のx+1を計算した結果を、同じxへ代入します。
読み出しは代入前に行われるので、xは元の値より1大きくなります。

プログラミング · 変数・配列 · QUESTION 007

次のプログラムの実行した際の表示結果を答えよ。

(1)x = 10
(2)x = x * x
(3)表示する("現在のxの値は", x, "です。")
答えと解説を見る

答え現在のxの値は100です。

解説xの二乗は、xをx自身に掛けて求めます。
xが10なら10×10となり、結果は100です。

プログラミング · 変数・配列 · QUESTION 008

次のプログラムの実行した際の表示結果を答えよ。

(1)x = 3
(2)y = 7
(3)x = x + y
(4)y = x - y
(5)x = x - y
(6)表示する("現在のxの値は", x, "です。")
(7)表示する("現在のyの値は", y, "です。")
答えと解説を見る

答え現在のxの値は7です。 現在のyの値は3です。

解説初期値はx=3、y=7です。
3行目でx=10、4行目でy=10−7=3、5行目でx=10−3=7となるので、「現在のxの値は7です。
」「現在のyの値は3です。
」と表示されます。

プログラミング · 変数・配列 · QUESTION 009

次のプログラムの実行した際の表示結果を答えよ。

(1)x = "あいう"
(2)y = "えお"
(3)表示する(x + y)
答えと解説を見る

答えあいうえお

解説xとyには数値ではなく文字列が入っています。
文字列に対する+は前後を連結するため、「あいう」の後ろに「えお」が続き、あいうえおと表示されます。

プログラミング · 変数・配列 · QUESTION 010

次の2つのプログラムのした際の表示実行結果を答えよ。

プログラムA
(1)x = 1
(2)y = 2
(3)表示する(x + y)
プログラムB
(1)x = "1"
(2)y = "2"
(3)表示する(x + y)
答えと解説を見る

答えプログラムA:3 プログラムB:12

解説プログラムAのxとyは数値なので、1+2を計算して3を表示します。
プログラムBのxとyは文字列なので、"1"と"2"を順につないで12を表示します。

プログラミング · 変数・配列 · QUESTION 011

次のプログラムの実行した際の表示結果を答えよ。

(1)Data = [3, 5, 9]
(2)表示する("Data[0]は", Data[0])
(3)表示する("Data[1]は", Data[1])
(4)表示する("Data[2]は", Data[2])
(5)表示する("Dataは", Data)
答えと解説を見る

答えData[0]は3 Data[1]は5 Data[2]は9 Dataは[3, 5, 9]

解説配列の添字が0から始まる場合、最初の要素はData[0]です。
添字を一つずつ増やすと、配列の先頭から順に参照できます。

プログラミング · 変数・配列 · QUESTION 012

次のプログラムの実行した際の表示結果を答えよ。

(1)Data = [3, 5, 9]
(2)Data[0] = 4
(3)表示する("現在のDataは",Data)
答えと解説を見る

答え現在のDataは[4, 5, 9]

解説Data[0]へ4を代入すると、配列の先頭要素だけが4になります。
配列全体の値が同じになる操作ではありません。

プログラミング · 変数・配列 · QUESTION 013

次のプログラムの実行した際の表示結果を答えよ。

(1)Data = [3, 5, 9]
(2)Data[0] = Data[1]
(3)表示する("現在のDataは",Data)
答えと解説を見る

答え現在のDataは[5, 5, 9]

解説Data[1]の値5をData[0]へ代入するので、先頭の3だけが5に置き換わります。
Data[1]とData[2]は変化しないため、表示される配列は[5, 5, 9]です。

プログラミング · 変数・配列 · QUESTION 014

次のプログラムの実行した際の表示結果を答えよ。

(1)Tokuten = [80, 45, 70]
(2)goukei = Tokuten[0] + Tokuten[1] + Tokuten[2]
(3)heikin = goukei / 3
(4)表示する("平均は", heikin)
答えと解説を見る

答え平均は65

解説平均点は、各点を足してからデータの個数で割ります。
80、45、70なら合計195、3人なので65点です。

プログラミング · 変数・配列 · QUESTION 015

次のプログラムの実行した際の表示結果を答えよ。

(1)Kamoku = ["英語", "数学", "国語"]
(2)Tokuten = [80, 75, 90]
(3)表示する(Kamoku[0], "の得点は", Tokuten[0])
(4)表示する(Kamoku[1], "の得点は", Tokuten[1])
(5)表示する(Kamoku[2], "の得点は", Tokuten[2])
答えと解説を見る

答え英語の得点は80 数学の得点は75 国語の得点は90

解説科目名と点数を別々の配列で管理するなら、同じ添字を使って対応付けます。
科目配列のi番目と点数配列のi番目が一組です。

プログラミング · 変数・配列 · QUESTION 016

次のプログラムの実行した際の表示結果を答えよ。

(1)Data = [3, 5, 9]
(2)a=0, b=2
(3)sum = Data[a] + Data[b]
(4)表示する("和は", sum)
答えと解説を見る

答え和は12

解説指定された添字の要素だけを取り出して足します。
Data[0]が3、Data[2]が9なら、結果は12です。

プログラミング · 変数・配列 · QUESTION 017

次のプログラムの実行した際の表示結果を答えよ。

(1)Data = [3, 5, 9]
(2)tmp = Data[0]
(3)Data[0] = Data[2]
(4)Data[2] = tmp
(5)表示する("現在のDataは", Data)
答えと解説を見る

答え現在のDataは[9, 5, 3]

解説まず先頭の3をtmpへ退避し、先頭へ末尾の9を代入します。
最後にtmpの3を末尾へ入れるので、先頭と末尾だけが交換され、Dataは[9, 5, 3]になります。

プログラミング · 変数・配列 · QUESTION 018

次のプログラムの実行した際の表示結果を答えよ。
2次元配列Matrixの要素の値Matrix[i, j]は次の通りである。
1 2 3
4 5 6

(1)表示する(Matrix[0, 0])
(2)表示する(Matrix[0, 1])
(3)表示する(Matrix[1, 2])
答えと解説を見る

答え1 2 6

解説添字は0から始まり、Matrix[行, 列]の順に位置を指定します。
Matrix[0,0]は1、Matrix[0,1]は2、Matrix[1,2]は6なので、1、2、6の順に表示されます。

プログラミング · 変数・配列 · QUESTION 019

次のプログラムの実行した際の表示結果を答えよ。
2次元配列Matrixの要素の値Matrix[i, j]は次の通りである。
1 2
3 4

(1)Matrix[1, 0] = 5
(2)表示する(Matrix)
答えと解説を見る

答え1 2 5 4

解説行列の要素を変更すると、その位置の値だけが置き換わります。
二行目の先頭を変更するなら、行と列の添字を取り違えないことが重要です。

プログラミング · 変数・配列 · QUESTION 020

2次元配列Kaiinは表の通りに名前、年齢、性別を格納している。
名前 年齢 性別
田中 25 男性
山田 30 女性
鈴木 23 女性
佐藤 44 男性
次のプログラムの実行した際の表示結果を答えよ。

(1)表示する(Kaiin[0, 0], "さんは", Kaiin[0, 1], "歳の", Kaiin[0, 2], "です。")
(2)表示する(Kaiin[1, 0], "さんは", Kaiin[1, 1], "歳の", Kaiin[1, 2], "です。")
(3)表示する(Kaiin[2, 0], "さんは", Kaiin[2, 1], "歳の", Kaiin[2, 2], "です。")
答えと解説を見る

答え田中さんは25歳の男性です。 山田さんは30歳の女性です。 鈴木さんは23歳の女性です。

解説列0・1・2には順に名前・年齢・性別が入り、行0・1・2は田中・山田・鈴木のデータです。
したがって「田中さんは25歳の男性です。
」「山田さんは30歳の女性です。
」「鈴木さんは23歳の女性です。
」の順に表示されます。

プログラミング · 変数・配列 · QUESTION 021

映画館の座席が5行3列の2次元配列Seatsで管理されている。
座席は0が空席、1が予約済みを表す。
現在のSeatsの要素の値は以下の通りになっている。
なお、この配列の添字は1から始まる。
0 1 0
1 1 0
0 1 0
0 0 1
1 0 0
次のプログラムの実行した際の表示結果を答えよ。

(1)gyou = 3
(2)retu = 2
(3)表示する( gyou, "行", retu, "列目の座席の状態は", Seats[gyou, retu], "です。")
答えと解説を見る

答え3行2列目の座席の状態は1です。 (予約済みです)

解説この配列は添字が1から始まるため、gyou=3、retu=2をそのままSeats[3,2]として参照します。
3行2列目の値は1なので、「3行2列目の座席の状態は1です。
」と表示され、予約済みだと分かります。

分野