A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
入力データが取引先コード 1000 だった場合、ループ 2 の動作は
Mid = Floor((0 + 19) / 2) = 9
ループ判定 → まだ見つからないので続行
Jogen = 9 - 1 = 8
Mid = Floor((0 + 8) / 2) = 4
ループ判定 → まだ見つからないので続行
(中略)
ループ判定 → まだ見つからないので続行
Jogen = 0 - 1 = -1
Mid = Floor((0 + -1) / 2) = -1
ループ判定 → 探索範囲を外れたので終了
Jogen <= Kagen でない状態で計算した Mid の値は、
配列の範囲外になってしまう可能性があります。
そのためループ後に Sco(Mid) = Tco を実行すると、
上記例の場合に Sco(-1) と評価され範囲外参照のエラーになります。
ループ終了条件は以下の二通りだけなので
ループ後ならば Jogen ≦ Kagen だけ評価すれば、
見つかったか否かを判断ができます。
1) Jogen ≦ Kagen かつ Sco(Mid) = Tco
→ 探索範囲内に値が見つかった
2) Jogen > Kagen
→ 探索範囲外になったのでもう探しても無駄
余談ではありますが、
ループ条件が "Jogen ≦ Kagen かつ Sco(Mid) ≠ Tco" なので、
Mid=-1 だとエラーになるのではと不安になりますが、
「先に記述された条件式が偽になった時点で、判定を終了する」
と注記があり、短絡評価をしているから間違いではないと言いたい様です。
参考)
https://ja.wikipedia.org/wiki/%E7%9F%AD%E7%B5%A1 …
ですが (4) の条件を考えると、些か配慮が足りない出題だと感じました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(形式科学) 再投稿 この問題がわかりません 1 2021/12/16 15:39
- 数学 三択問題が14問あり1回毎に正解数がわかる時、どんな方法であれば最低回数の試行で全問正解が分かるか? 2 2021/12/16 09:43
- その他(教育・科学・学問) フローチャートについて質問です。 質問Aと質問Bに対するYesかNoの答えで4パターンの場合分けが行 5 2021/12/26 02:30
- 電気工事士 変圧器について この問題の答えは2,3,4であってますか? 【問題】現実の変圧器において,二次巻線に 1 2021/11/30 16:09
- その他(教育・科学・学問) 確率の問題 6 2022/07/27 12:00
- 英語 うまく伝わるかわからないんですけど、真剣な質問です。 英文法の問題、文があって、途中にかっこ( )が 3 2021/11/03 22:34
- 数学 三角比の不等式の問題です。 0°≦θ≦180°のとき、次の不等式を満たすθの値の範囲を求めよ。 解答 2 2021/11/24 00:31
- 教えて!goo Quoraで私の質問がのってました。どうして?? 1 2021/10/21 19:41
- 教えて!goo 質問削除のお知らせに付いて。 3 2022/02/02 17:31
- 数学 数学が得意な方。 私は数学がとても苦手で、他の教科と比べ物にならないくらい点数が取れません。 また、 6 2021/10/26 18:09
このQ&Aを見た人はこんなQ&Aも見ています
-
新NISA制度は今までと何が変わる?非課税枠の拡大や投資対象の変更などを解説!
少額から投資を行う人のための非課税制度であるNISAが、2024年に改正される。おすすめの銘柄や投資額の目安について教えてもらった。
-
C言語って古いですか?
C言語・C++・C#
-
算数、数学解りません。 足し、引き、掛け、割り算程度しか出来なくても、Excel覚えられますか?
Excel(エクセル)
-
jpgの画像ファイルを、ペイントソフトで編集" するときは 先にパソコンやアプリでよくPNGに変換"
画像編集・動画編集・音楽編集
-
-
4
会社のPCに入っているExcelでバーコードを作ろうと思い、「開発」→「挿入」→「コントロールの選択
その他(Microsoft Office)
-
5
プログラムの素朴な質問です 分岐するコードを書く時に、 /** * 関数 */ sub(){ ...
その他(プログラミング・Web制作)
-
6
どうしてPDFが文書フォーマットの覇権を取ったの? 複雑すぎて規格に完全準拠したPDFを生成するの無
PDF
-
7
プログラマーがHTMLとCSSでウェブデザインをするのは大人の幼稚園なんじゃないかと思い込んでる
その他(プログラミング・Web制作)
-
8
int関数について。
Excel(エクセル)
-
9
win11は
Windows 10
-
10
ノートPCにネット上の画像を保存することがあるのですが、数年前に、「ネット上の画像ファイルにはウイル
マルウェア・コンピュータウイルス
-
11
C言語 バッファについて。
C言語・C++・C#
-
12
MS-DOS 6.22のダウンロード
その他(OS)
-
13
HDDのファイルが知らないうちに削除されてしまいました
Windows 10
-
14
コンピュータの仕組みについて
システム
-
15
写真のプログラムは、1からnまでの、全整数の積すなわち階乗値を求めて返却する関数を作成したいのですが
C言語・C++・C#
-
16
DBCS関数とは何ぞやッ!
Excel(エクセル)
-
17
擬似コード
C言語・C++・C#
-
18
C言語について。
C言語・C++・C#
-
19
大抵のアプリが32bitバージョンなのは何故ですか?64bitのパソコンでも正常に動作しますか?
フリーソフト
-
20
C言語について。
C言語・C++・C#
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
画面を強制的に再描画させる方法
-
乱数の桁数指定、または範囲指定。
-
プログラミングについて。 1つ...
-
「偶数・奇数の和」のフローチ...
-
アクティブセルから、A列最終行...
-
VBA for文が止まらない
-
DoEventsが必要な理由について
-
テキストボックスの名前に変数...
-
UWSCの終了の仕方
-
vb.netです。2次元配列の要素を...
-
エクセル関数で1〜12の数字がル...
-
Javaでゲーム
-
プログラムはif文とforループが...
-
vbscriptでIE自動入力(途中で...
-
範囲指定したセルを1つずつ飛...
-
エクセルの当番表を作っていま...
-
Pro Tools の 波形を伸ばす方...
-
select case について
-
sscanfより速い方法について。
-
ListBox 複数選択 で オートフ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
画面を強制的に再描画させる方法
-
VBAで3秒だけ時間を止めたい
-
VBAでの一時停止と再開の方法
-
どなたかこのプログラミングを...
-
Escキーを押すと、中断する時と...
-
UWSCの終了の仕方
-
エクセルの当番表を作っていま...
-
VBA for i=1 to lastrow
-
「偶数・奇数の和」のフローチ...
-
アクティブセルから、A列最終行...
-
DoEventsが必要な理由について
-
vb.netからエクセル関数書き込み
-
GIFアニメをループさせたくない
-
DOSコマンドのループ内のTIMEコ...
-
範囲指定したセルを1つずつ飛...
-
流れ図(フローチャート)が分か...
-
乱数の桁数指定、または範囲指定。
-
テキストボックスの名前に変数...
-
CSVファイルの特定の行だけを読...
-
vb.netです。2次元配列の要素を...
おすすめ情報