学年

教科

質問の種類

情報: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 高校生

教えてください😭😭😭😭😭😭

情報 Ⅰ ・Question ④ 「何らかの仕事を実現する処理の並びを一つにまとめて名前を付けたもの」 を関数といいます。 数は、値を渡したり戻したりできるのが特徴で、 関数に与える文字や数字を「引数」。返される値を 「戻り値」 といいます。 また、 もともとの主なプログラムをメインルーチン。 関数をサブルーチンと いいます。 関数 書式 234 def 関数名(引数1, 引数2, ….....): ロロロロ処理 | ロロロロ処理 2 0000 return 戻り値 説明 関数を定義する。インデントした範囲内がひとまとまりの関数と見なされる。 関数を呼び出す ときに同時に値を関数に渡したときは、引数の部分で受け取り、関数内部で使う。 関数内で 理した結果や何らかの値を呼び出し側に通知する場合は、 return に続けて値や計算式などを 記述する。 次のプログラムは、実行者の名前をメインルーチンで入力させて、それを関数に渡して挨拶と一緒 に表示するプログラムです。 1 def aisatu(a): 2 3 print (a, "Hello!") return 4 5 print("これから英語で挨拶します") 6 b = aisatu(input("Please name :")) 7 aisatu(b) 8 print("どうでしたか? ") 1 def aisatu (a): 上記のプログラムでは、挨拶の表示処理を関数側に行わせていましたが、値を戻してメインルーチ ンで行わせることもできます。 上記のプログラムをもとに、以下の空欄を埋めて、 プログラムを作り なさい。 (実行例は上記と同じ) (ファイル名は「出席番号 94 名前」 で保存すること) a= return 実行例 これから英語で挨拶します Please name: Taro Taro Hello ! どうでしたか? 5 print("これから英語で挨拶します") 6 b=input("Please name :") 7 print( 8 print("どうでしたか? ") 開始 「これから英語で挨拶 します」 と表示 名前を入力させる →関数に渡す aisatu 関数 戻り値を 受け取って表示 「どうでしたか?」 と表示 関数定義 終了 CITIO aisatu 関数開始 ← 受け取った引数 atak 「Hello!」を合体 a を戻り値 aisatu 関数終了

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

教えて欲しいです🙇‍♀️🙇‍♀️🙇‍♀️🙇‍♀️🙇‍♀️

番氏名 · Question33 変数にデータを入れるとき、 [] (括弧)にまとめて代入し、リスト(配列) として定義することが できます。 変数の大きさを知りたい場合には、 len() を使います。また、リストはリスト内の値を入 れるといった処理も行えます。 リスト 書式 説明 len(). 書式 説明 6 変数の値の交換! 書式 変数1, 変数2 = 変数2, 変数 1 説明 年 変数 = [データ 1, データ 2, データ 3, …] 1つの変数の中に、 複数の数値や、 複数の文字列を格納するときの書き方。 文字列を格納す る場合には、各データをダブルクォーテーションやシングルクォーテーションで囲む必要が ある。 格納されたデータの一つ一つは要素と呼ばれる。 組 la = [5,8,4,3,6,9,2,1,7] print (a) #並べ替える前のリスト 3b = 4 for i in range(b): 5 c=i for j in range (i + 1,b): if a[c] > a[j]: (大きさの知りたい変数) 変数=len リストならデータの個数を知る。 結果は普通、 別の変数に格納する。 変数なら文字列、 変数の値を変数2に、 変数2の値を変数に入れ替える書き方。 リスト内のデータを比較して並べ替える操作を「選択ソート」 という。以下のプログラムの空欄を埋めて、選択ソートでリスト 内の9つの数字を昇順に並べ替えるプログラムを作りなさい。 1.olleHond T (#の文は入力しない) (ファイル名は「出席番号 93 名前」 で保存すること) 8 9 a[i], a[c] = 10 print (a) #並べ替えた後のリスト 実行例 [5, 8, 4,3, 6, 9, 2, 1,7] [1,2,3,4,5,6,7,8,9] リスト作成 Aceptos 開始 長さ判定 入替処理 リストの作成 リストαの表示 リストの個数 繰り返し (0からbの数まで ci の値 繰り返し (i+1 から b の数まで) a[c]> a[j] Yes c←jの値 繰り返し | a[i] と a[c] の値を交換 繰り返し リストの表示 終了 No.

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

期末課題なのですがテストが無い分これで成績が決まってしまうのですが全く分かりません💦教えて欲しいです

■アルゴリズムとプログラミング (課題) 以下の課題に取り組み、 作成したファイルをデスクトップに保存し、PCの「課題提出全日制」 → 「2学年」 「自分のクラスのフォルダー」→「問題番号に対応したフォルダー」にドラッグアンド ドロップして提出しなさい。 (作成できたファイルのみ提出すること) ・Question ① マウスの移動量を表す単位で 「ミッキー」というものがある。 | ミッキーあたり0.254mm(ミリ メートル) である。 以下のプログラムの空欄を埋めて、キーボードからマウスの移動量をミッキーで 入力されたら、 cm (センチメートル) で表示されるプログラムを作りなさい。 (ファイル名は 「出席番号 q1 名前」 で保存すること) 1 a = float(input("マウスを何ミッキー動かしましたか?>")) 2b = 3. print("あなたは", b, "センチメートル動かしました。 ") 実行例 マウスを何ミッキー動かしましたか? >100 あなたは 2.54センチメートル動かしました。 • Question ② 製 以下のプログラムの空欄を埋めて、 「おはよう」, 「さよなら」 と言われたら挨拶を返すプログラム を作りなさい。 (ファイル名は「出席番号 92 名前」 で保存すること) 1 a=str(input("挨拶をしてください>")) 2 if a | "おはよう": print("コンピュータ:", a) "さよなら": print("コンピュータ:", a) 3 4 elifa 5 6 else: 7 実行例 挨拶をしてください > おはよう コンピュータ:おはよう print("コンピュータ:よくわかりません") 挨拶をしてください > さよなら コンピュータ: さよなら 挨拶をしてください > こんにちは コンピュータ: よくわかりません 開始 at 挨拶をしてください> aは "おはよう Yes おはよう 終了 No. は さよなら Yes さよなら No. よくわかりませ

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

情報の「データの配列から最大値を考えるプログラミング」です。解説を見ても意味が理解できません。解説していただきたいです!

テーマ2 データの配列から最大値を考えるプログラミング 例題:次のプログラムAについて、以下の問いに答えよ。 ただし、配列の添字は0から 始まるものとする。 [0) T.630 [1]ndoor (C 美月 (6) LLTokuten[i] = temp (1) Tokuten = [57,70,65,821 (2) を1から3まで1ずつ増やしながら繰り返す: (3) (4) || temp = Tokuten [0] (5) || Tokuten[0]= Tokuten [i] i 〈プログラムA> (aa 問1 (2) 行目を実行する前の Tokuten [0], Tokuten [1], Tokuten [2], Tokuten [3] の値をそれぞれ求めよ。 1 2 3 Tokuten [0] < Tokuten [i] 512:0) $100 > [0]medusio (1 of 1500 Telan TOYOT 問2 表1も使いながら、以下の(ア)~ (ウ), (カ)~(コ)に当てはま る数を求めよ。 また、(エ)・(オ)は適当なものを選べ。 i=1のとき, Tokuten [0] < Tokuten [1] が成り立つ。 MUEVE (4)行目を実行すると変数 temp には (ア)が代入され,その後, (5), (6)行目を 実行することで Tokuten [0] (イ), Tokuten [1] には (ウ)が代入さ れる。 i=2のとき, Tokuten [0] ・ > ) Tokuten [i] であるから, (4), (5) (6) 行目は(オ実行される ・ 実行されない)。 さらに,i=3のときの処理を終えた後, 配列 Tokuten の要素は[(カ), (キ), (ク),(ケ)] となり, 変数 temp に代入されている数は コ) コ である。 57 (イ) (カ) ITE OF ED 027 表1 配列 rokuten と変数 temp の変化 Tokuten [0] Tokuten [1] Tokuten [2] Tokuten [3] 65 982 70 (3) (キ) cepler (or [S Budo! (ク) [2] 0330E=1.011 SudoT OT (ケ) temp に近づ (ア) (コ) POINT ●配列の構造を正しく理解する。 ●条件分岐(もし・・・)について, 実行されるか・実行されないかを正確に判断する。 ●プログラムの一つずつの手順を丁寧に解読していく。 SM

回答募集中 回答数: 0
1/6