学年

教科

質問の種類

情報:IT 高校生

マーカー部分の意味がわかりません

17〈二次元配列と関数〉 あるカレー屋では、辛さは1辛~5辛まで, ライスは普通・ 大盛・特盛の3種類から選べる。基本料金は800円で辛さを1増すごとに基本料 金の1割増となる。ライスは大盛が50円,特盛は100円加算される。 価格一覧を 作るため、料金を入れた配列 kakaku を返す関数を作成した。 なお、配列の添字は 0から始まるものとする。 また, 「整数 (a) 」 はaを整数に変換する関数, 「戻り値 (a)」はaを呼び出し元に返す関数である。 空欄に入る最も適当なものを、次の(ア) 〜(オ)から一つずつ選べ。 (1) 関数 メニュー (kihon, ① の定義: riceを0から2まで1ずつ増やしながら繰り返す: karasaを0から4まで1ずつ増やしながら繰り返す: 渡され るようにする。 この例では,rice, karasa, kakaku は関数内で値が設定 されており,kihon, rate は設定されて いないことに着目す る。 (2) (3) (4) (5) _kakaku [rice][karasa] 整数 (kihon * (1 + 戻り値 (kakaku) * rate) + 50 * = (ア) rice (イ) karasa (ウ) (rice + 1) () (karasa +1) (オ) rate 18 〈関数〉 今日の曜日 ("月","火",・・・) を戻り値とする関数「曜日()」と,問題 17 で作成した関数を使い,辛さ割増率を平日1割,土日2割とすることにした。なお, 「初期化 (a, b, c)」はb×cの二次元配列 a を初期化する関数である。 空欄に入る 最も適当なものを,右の(ア)~(カ)から一つずつ選べ。 (1) 初期化 (menulist, 5, 3) 18 関数は, 引数を変え て何度も呼び出すこ とができる。 (ア) and (2) もし曜日 () == "土" 曜日)=="日"ならば : (イ) or (3)| menulist = メニュー (800, ② エ (ウ) 0.1 (4) そうでなければ : (エ) 0.2 (5) menulist = メニュー ( 800, (オ) 1 (6) 表示する (menulist) (カ) 2

解決済み 回答数: 1
情報:IT 高校生

sが合計点を表すということはどこから判断できるのか分かりません、問題文から分かるのですか? 四角6で①ではいけない理由が知りたいです。なぜ得点にゼロであるsを足す必要があるのでしょうか、、、

2 プログラミングの問題例 予想問題にチャレンジ 次の文章を読み, 空欄 1 2 • 3 4 5 にあてはまる数字 をマークせよ。また,空欄 6 ~ 9 に入れるのに最も 適当なものを,下の解答群のうちから一つずつ選べ。 ただし、 3 同じものを繰り返し選んでもよい。 プログラミング 高等学校の数学教員であるAさんは,期末試験を実施した。 集計作業を簡単化するため, 試験の点数の平均値と分散をコン ピュータで計算する手続きを作成することにした。 ここで,生 徒の人数がn人, 試験の点数が x, x1, ..., x,-1 であるとき, 平均値xと分散s' は x= n (x + x1 +... + x,-1) 5=12121{(x_x)^2+(x-x)2 +... + (ギョ-1-x) 2} n である。例えば,生徒5人の試験の点数が50,60,70, 70, 100 であったとき,平均値は 12 分散は345 となる。 できた手続きを図1に示す。 図1の手続きでは生徒全員の 人数を格納した変数ninzu, 生徒の識別番号 (0~ ninzu-1) を添字として生徒の試験の点数が格納された配列 Tokuten が 与えられるものとする。 さらに, 変数heikin には平均値を, bunsan には分散を,それぞれ計算して格納する。

解決済み 回答数: 1
情報:IT 高校生

情報:高3 [ウ]の部分がなぜ③になるのか分かりません。 iが 1〜kazu-1 になるから jは 0〜kazu-2 までは考えられたのですが、ここから kazu-2 が kazu-1-i になるのはなぜでしょうか、、教えてください🙇🏻

次の生徒 (S) と先生 (T) の会話文を読み, 空欄 解答群のうちから一つずつ選べ。 ア ~ に入れるのに最も適当なものを,後の 201 T:データを昇順または降順に並べ替えるアルゴリズムのことをソートといいます。まずはじめに,バブルソー トというアルゴリズムを考えてみましょう。 バブルソートは、配列の中の隣り合うデータの大小を比較し交 換を繰り返す方法です。 図1は、10個の要素を持つ配列 Data に対してバブルソートを行う場合の流れを 表しています。グラムの まず、配列の先頭とその次の要素を比較し, 左の方が大きければ右と交換する。 これを一つずつずらしなが ら配列の最後尾まで繰り返していき、最後尾まで繰り返したら1周目の比較が終了します。 S: つまり, 1周目の比較がすべて終了した段階で、 配列の最後尾には ア が入っているのですね。 イ T: その通りです。 2周目は、配列の を除いて1周目と同じように比較していきます。 これを繰り返 して、最後には配列が並び変わっているという具合ですね。図2はバブルソートのプログラムを表してい ます。 1071 配列 Data 77 52 89 48 97 3 18 62 33 29 1周目/ 1回目の比較 77 52 89 48 97 3 18 62 33 29 交換する 1周目/ 2回目の比較 52 77 89 48 97 3 18 62 33 29 交換しない (81) 1周目/3回目の比較 52 77 89 48 97 交換する 3 18 62 33 29 図1 配列 Data に対するバブルソートの流れ Irabid (1) (2) (Data) (3) (4) (5) Data = [77,52,89,48,97, 3,18,62,33,29] kazu = iを1から kazu 1まで1ずつ増やしながら繰り返す : を0から ウ まで1ずつ増やしながら繰り返す: もしData[j] > Data [j + 1] ならば: & FURS ipin (6) hokan = Data[j] ① Ad>(7) (8) エ _Data [j+1] = hokan 図2 バブルソートのプログラム 0000 1036 0 kouk 4-1 S図2のプログラムだと, もし仮に最初からデータが昇順に並んでいても、配列 Data の場合と同じ回数だけ 比較を繰り返さないといけないですよね? T:いいところに気が付きましたね。 最初から昇順に整列された配列をバブルソートすると、交換回数は オ だけど比較回数は |ので効率が悪いです。 それでは,データの整列が完了した段階で繰り返 しを抜けるように図1のプログラムを修正してみましょう。 まず, 変数 koukan を用意して初期化してお きます(図3の (3) 行目)。 次に, 交換が発生した場合, 変数 koukan に 「1」 を代入するようにしましょ (図3の (10) 行目)。 さて、ここで図4のプログラムを, 図3のプログラムのどこに挿入すればいいか 分かりますか? S:繰り返しが1周終わるごとに変数 koukan の値を確認する必要がありますから、 T:正解です! よくできました。 98 第3章 コンピュータとプログラミング キ だと思います。 0

解決済み 回答数: 1
1/3