学年

教科

質問の種類

情報:IT 高校生

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

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

回答募集中 回答数: 0
情報:IT 高校生

3問とも計算方法も答えも分からず、質問させて頂きました。 教えていただけると幸いですm(_ _)m

[3]表 2.1の命令を持つSEP-E の CPU が、あるプログラムを7000番地から実行開始して 数命令動いたところで、現在は命令フェッチ前の状態にあるとする。 この時、汎用レジスタの値 は表 2-2 主記憶装置(メインメモリ)の内容は表 2-3 のようになっている。 なお、レジスタの内 容および番地はすべて16進数である。 以下の設問に答えなさい。000円 2005 LOOT 80001 表2.1 命令一覧表(一部抜粋) P-E ニモニック TVCM 動作概要 0005 NZ V C* |ADD, F:T 加算 (T+F→T)VOY * * * * |AND, F:T ビット毎の論理積 (TAF→T) 0000 ** 0- BIT,F:T ビット毎の論理積 (TAF, フラグ変化のみ) * * 0- CMP,F:T 比較 (T-F, フラグ変化のみの減算) * * * * DEC,D-:T 値を1減らす (T-1→T) * * * * |HLT, D-:D- 実行を停止する |INC, D-:T |JCY,F:D7 値を1増やす (T+1→T) |C=1のときジャンプ (F→(R7) if C=1) |JMI,F:D7 |N=1のときジャンプ (F→(R7) if N=1) |JOV,F:D7 |V=1のときジャンプ (F→(R7) ifV=1) 無条件ジャンプ(F→(R7)) |JP,F:D7 |JR,F:D7 無条件相対ジャンプ ((R7)+F→(R7)) **** --- |JRM,F:D7 |N=1のとき相対ジャンプ ((R7)+F (R7) ifN=1) JZE,F:D7 |Z=1のときジャンプ (F→(R7) if Z=1) MOV,F:T 移動 (FT) OR,F:T ビット毎の論理和(TVF→T) SLA,D-:T 左シフト (T×2→T) |SLR, D-:T 左ローテイト SRA,D-:T |右シフト(T÷2→T) |SRR, D-:T 右ローテイト |SUB, F:T 減算 (T-F→T) |XOR,F:T ビット毎の排他的論理和 (TF→T) * * 0- **0- * * * * * * 0 * * * 0 * * * 0 * * * * * **0- ※N (Negative; 負), Z (Zero; ゼロ), C (Carry; キャリー), V (Overflow; オーバーフ ロー), * 演算結果に応じて変化する, -: 変化しない, 0: 必ず0になる 5

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

①がエになる理由を教えてください

引数 戻り値 ① Function mysurface (radius As Double) As Double Dim pi As Double Dims As Double ⑤3.14 ⑥⑥ = pi (8) S ✓ = End Function 3 ア. 円の半径 オ. 戻り値 ⑥'円の面積を計算 円周率を定義 戻り値として円の面積を戻す イ. 円の面積 力. radius 右のフローチャートは,線形 探索を行う関数のアルゴリズ ムを表したものである。探索 する値を引数として受け取 り、右図のようにセルA1~ A10に格納されたデータに 対して線形探索を行い,探索 する値が存在した場合は,戻 り値として“あり” を, 存在 しなかった場合は,“なし” を戻す。 空欄 ①~⑤に該当す るものを下のア〜カから選 び, 記号で答えなさい。 ア. 戻り値 = “あり” ウ.flag = 0 オ. Cells(i, 1).value = 引数 考えてみよう 関数を使う意義を考えてみよう。 #. mysurface 開始 i=1 GRAME flag=1 ウ. 整数 (Long) Yes 実数 (Double) 4 flag = 0 ループ 終了 No. イ. 戻り値 = “なし” エ. flag=1の間繰り返し 力. i>10 in 1 i=i+1 4 7. S Yes 戻り値= "なし" (5 ③③ No. 4 ⑤ ア 1 15 カ 工. 実数 (Double) ケ.pi 1 2 3 4 15 6 7 2 (1) 7 S 2 8 10 jus 円の半径 (4 円の面積 実数 pi ⑤5⑤ radius mysurface A (コ. 3.14 1 2 3 4 5 6 7 8 9 [10] 16 2 Ⅰ flag=1の間繰り返し 明和 オ Cells(i).Value=引数 ア戻り値="あげ カ i> 10 flag=0 91

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