忍者ブログ
バイオインフォマティックス技術者試験、情報処理試験など、IT系の試験を基礎から勉強します。また、Javaなどプログラミングを勉強します。

【VBAスタンダード対策】Do ... Loop While(後判定)の条件とループ構造を攻略!

お尻に条件を書く「後判定」のもう一つの形が Do ... Loop While です。「条件を満たしている間は繰り返す」というWhileの性質を持ちながら、お尻で判定するため「最低1回は実行される」という、VBAループ構文の中で最も見極めが必要な構造を持っています。

1. 問題:後判定(Loop While)における実行結果

【 問題 】 下記のコードを実行して PostWhileTest プロシージャを呼び出した際、メッセージボックスに表示される数値はいくつでしょうか?

Sub PostWhileTest()
    Dim n As Integer
    n = 5

    Do
        n = n + 5
    Loop While n < 5

    MsgBox n
End Sub

① 5(条件が最初から満たされていないため、1回も実行されない)
② 10(条件は満たしていないが、必ず1回は実行される)
③ 15
④ 判定が無限に繰り返されてフリーズ(無限ループ)する

2. 正解:後判定Whileループの処理フローに関する正解

正解: ② 10

3. 解説:「While(~の間)」が最後にある構造の罠

While は「条件が正しい(True)間は続ける」という構造ですが、それがお尻(Loopの後ろ)にあることで、実行タイミングに独特な変化が生まれます。

[ Loop While の実行フロー構造 ]

条件式:n < 5 (nが5未満の間はループを続ける!)

・スタート時:n = 5
ループ突入:後判定なので、最初の条件チェックはスルー!
  まず n = 5 + 5 = 10 を実行します。
お尻で判定:ここで初めて Loop While n < 5 の判定を行います。
  現在の n は 10 なので、10 < 5不成立(False!)になります。

While は「Trueの間だけ続ける」構造なので、Falseになった瞬間にループは終了(脱出)します。結果として、最初の1回だけが実行され、最終値は 10 になります。

ここが試験に出る!: スタンダード試験では、前判定の Do While なら実行回数が0回になるようなデータを用意し、あえて後判定の Do ... Loop While にすることで「最初の1回が実行されて値が変わる」というミスを誘ってきます。「While=Trueの間」「Loopの後ろ=最低1回実行」の2つの構造を掛け合わせて、落ち着いてトレースしましょう。


4. まとめ

「Loop Whileは、まずやってみてから、続けるかどうかを判断する」。この後判定構造を理解すれば、すべてのDoループ(Whileの前・後、Untilの前・後)の仕分けは完璧です。データの初期状態に左右されない、正確な繰り返し処理をコントロールしましょう。



PR

【VBAスタンダード対策】Do ... Loop Until(後判定)の罠とループ構造を攻略!

Do Until を記述する場所には、実は2つのパターンがあります。頭につける「前判定」と、お尻につける「後判定」です。条件式が全く同じでも、記述する場所によってループの実行回数が変わるという、VBAの構造的な仕組みを解き明かします。

1. 問題:後判定(Loop Until)における実行結果

【 問題 】 下記のコードを実行して PostTest プロシージャを呼び出した際、メッセージボックスに表示される数値はいくつでしょうか?

Sub PostTest()
    Dim n As Integer
    n = 10

    Do
        n = n + 5
    Loop Until n >= 10

    MsgBox n
End Sub

① 10(条件が最初から満たされているため、1回も実行されない)
② 15(条件を満たしているが、必ず1回は実行される)
③ 20
④ 判定が無限に繰り返されてフリーズ(無限ループ)する

2. 正解:後判定ループの処理フローに関する正解

正解: ② 15

3. 解説:「まず動く」後判定と「まず確認する」前判定

Until(~になるまで)の位置が Do の後ろか、Loop の後ろかによって、プログラムの初期動作が変わる構造になっています。

[ 前判定と後判定の構造的な違い ]

■ 前判定(Do Until ── Loop)
ループに入る「前」に条件をチェックします。もし最初から n = 10 で、条件が n >= 10 だった場合、「あ、もうゴールしてるから入らない」となり、実行回数は 0回 になります。

■ 後判定(Do ── Loop Until) ※今回の問題
条件チェックが最後(Loopの後ろ)にあります。そのため、たとえ最初から条件(n >= 10)を満たしていても、上から流れてきた処理は必ず最初に1回実行されてしまいます。

・スタート時:n = 10
ループ突入:条件を見ずに、まず n = 10 + 5 = 15 を実行!
お尻で判定15 >= 10成立(True!) ⇒ 終了して脱出!

★ 結果として、必ず1回は処理が通るため、最終値は 15 になります。

ここが試験に出る!: スタンダード試験では、この「後判定(Do ... Loop Until)」を使ったコードを見せて、条件が最初から満たされているデータの場合に『1回実行されるか、0回か』を迷わせる問題が頻出します。「後判定は最低1回は絶対に通る構造」だと覚えておきましょう。


4. まとめ

「前判定は石橋を叩いて渡る(0回の可能性あり)、後判定は行動してから考える(最低1回は実行)」。この構造の使い分けができるようになると、実務でも『まず1行目のデータを処理してから、次の行があるか判定する』といった柔軟なスクリプトが組めるようになります。


【知識:タンパク質の構造】立体的な形が機能を決める!タンパク質の構造(一次構造・二次構造)を整理


DNAの情報を基に作られるタンパク質。その過程で欠かせないのが、階層的に組み立てられる4つの構造と、その基盤となるポリペプチド鎖です。今回は、それぞれの構造が「何」を表しているのか、知識を完璧に整理しましょう。

1. 知識の要点:タンパク質構造の4つの分類

タンパク質には、主に以下の4つの構造が存在し、バケツリレーのように連携して立体的な機能を発揮しています。

(1) 一次構造
役割:タンパク質を構成するアミノ酸の配列です。

(2) 二次構造
役割ポリペプチド鎖による構造です。

(3) 三次構造
役割側鎖も加えた立体構造です。

(4) 四次構造
役割2つ以上のポリペプチド鎖の相互作用で形成される構造です。

2. 深掘り:ポリペプチド鎖とは

タンパク質の高次構造を理解する上で、その骨格となるポリペプチド鎖の理解が欠かせません。

ポリペプチド鎖の説明: 多数のアミノ酸がペプチド結合によって一列に長くつながった鎖状の分子のことです。このポリペプチド鎖が、アミノ酸の配列(一次構造)に従って規則的に折り畳まれることで二次構造を作り、さらに側鎖の相互作用などが加わることで、複雑な立体構造へと変化していきます。

3. タンパク質構造の流れ

4つの構造の連携プレイをイメージすると、役割が定着しやすくなります。

[ 連携のプロセス ]
1. 一次構造 がアミノ酸の配列を決定する。
2. 二次構造 がポリペプチド鎖による構造を形作る。
3. 三次構造 が側鎖も加えた立体構造を形成する。
4. 四次構造 が2つ以上のポリペプチド鎖の相互作用で最終的な形にする。

1. 名称の由来: 一次は最も基本的な配列、二次は局所的な鎖の構造、三次・四次はそれがさらに立体化・複合体化したステップを意味しています。英語の意味とセットで覚えるのがコツです。
2. バイオインフォの視点: 配列解析において、一次構造はタンパク質予測の直接の対象となりますが、二次構造以降はそれ自体が機能を持つ立体的な予測の基準として分類されます。これらは構造が機能に直結するため、構造予測アルゴリズムが頻繁に用いられます。


4. まとめ

「アミノ酸の配列である一次構造」「ポリペプチド鎖による二次構造」「側鎖も加えた立体的な三次構造」「2つ以上のポリペプチド鎖の相互作用で形成される四次構造」。この4つのチームワークによって、私たちの体を作るタンパク質は形作られています。試験ではそれぞれの役割を入れ替えた「ひっかけ問題」がよく出るので、この知識フォーマットを繰り返し見直して暗記しましょう!


【BI技術者認定試験対策】ゲノムを跳び回る居候!「トランスポゾン」を攻略

ゲノムは一度決まったら固定されているわけではありません。自らの位置を変えてゲノム内を移動する、まるで「動く遺伝子」のような特殊な塩基配列を整理しましょう。

1. 問題:ゲノム内を移動する塩基配列

【 問題 】 生物のゲノムにおいて、細胞内で自身の位置を他の場所に「移動(転移)」させることができる、動く塩基配列(移動性遺伝要素)を何と呼ぶでしょうか?

① イントロン   ② トランスポゾン   ③ プロモーター   ④ プラズミド

2. 正解:動く遺伝要素に関する正解

正解: ② トランスポゾン

3. 解説:ゲノムの「カット&ペースト」と「コピー&ペースト」

バーバラ・マクリントック博士によってトウモロコシの斑(ふ)入りの研究から発見され、後にノーベル賞を受賞した学術的に極めてインパクトの大きい現象です。

[ トランスポゾンの種類と動き ]
DNA型トランスポゾン:自身をゲノムから切り出して別の場所へ挿入する、いわゆる「カット&ペースト」型です。
レトロトランスポゾン:一度RNAに転写されたあと、逆転写酵素によってDNAに戻り、別の場所に挿入される「コピー&ペースト」型です。人間のゲノムではこちら(Alu配列やLINE-1など)が圧倒的多数を占めます。
※実はヒトゲノムの約40%以上が、これらトランスポゾンの残骸やその関連配列で埋め尽くされています。

1. 試験のポイント: 「ゲノム中を移動(転移)することができる」という特徴が書かれていれば、迷わず「トランスポゾン」を選びます。移動したトランスポゾンが重要な遺伝子の真ん中に飛び込むと、その遺伝子が破壊されて病気の原因になったり、逆に生物の進化や多様性を生み出す原動力になったりします。
2. バイオインフォの視点: ヒトゲノム中に大量に存在するトランスポゾンは、配列が非常によく似た「リピート(反復)配列」です。次世代シークエンサー(NGS)の短いリード配列をマッピングする際、これらの領域は「ゲノム上のどこに由来するのか」を特定するのが難しく、マルチマッピング問題としてバイオインフォマティシャンの頭を悩ませます。これを高精度に分類・アノテーションするために、RepeatMaskerなどの専用ツールが使われます。


4. まとめ

「ゲノム中を移動できる塩基配列=トランスポゾン」です。システム開発で言えば、ソースコードの中にいつの間にか自己増殖するコードブロックが紛れ込んでいるような状態ですが、生命はこの動く要素を完全に排除せず、進化のバリエーションとして巧みに利用しているのが面白いところですね!


【BI技術者認定試験対策】人間の細胞の基本スペック!「染色体の構成」を攻略

生物の種ごとに決まっている染色体の数。私たちヒトの細胞には、どのような内訳で染色体が格納されているのか、その正確な構成をマスターしましょう。

1. 問題:ヒトの染色体構成

【 問題 】 ヒトの通常の体細胞(二倍体細胞)に含まれる染色体の個数と組み合わせについて、正しい記述はどれでしょうか?

① 常染色体が 22本 と、性染色体が 2本(XX または XY)の計 24本
② 常染色体が 22対(44本)と、性染色体が 1対(2本:XX または XY)の計 46本
③ 常染色体が 23対(46本)と、性染色体が 1対(2本:XX または XY)の計 48本
④ 常染色体が 46本 と、性染色体を持たない計 46本

2. 正解:染色体の分類と本数に関する正解

正解: ② 常染色体が 22対(44本)と、性染色体が 1対(2本:XX または XY)の計 46本

3. 解説:「対」か「本」か、単位の罠を見抜く

ヒトの染色体は、父親由来と母親由来のものがペア(相同染色体)になって存在しています。

[ ヒトの染色体スペック ]
常染色体(じょうせんしょくたい):男女共通の染色体。1番から22番まで大小さまざまなペアがあり、計 22対(44本)
性染色体(せいせんしょくたい):性別を決める染色体。計 1対(2本)
・女性:XX のペア
・男性:XY のペア
総数:44本 + 2本 = 計 46本(23対)

1. 試験のポイント: 問題文を読むときは、数字の後ろが「対(つがい)」になっているか「本」になっているかを必ず確認してください。選択肢①のように「22本」と書いて受験生を惑わす引っかけ問題は定番です。
2. バイオインフォの視点: ゲノムデータの解析において、常染色体は `chr1` から `chr22`、性染色体は `chrX`、`chrY` と定義されます。男性(XY)のデータを扱う場合、XとYは形もサイズ(塩基長)も全く異なるため、配列をマッピングする際のリードの割り当て比率や、コピー数(CNV)解析において、常染色体とは明確にアルゴリズムを分ける必要があります。


4. まとめ

「ヒトの染色体は 22対の常染色体 + X,Yの性染色体 = 合計46本」です。以前に学んだ『伴性遺伝(性染色体上の遺伝)』や『限性遺伝』の土台となる重要な前提知識ですので、この構成比を完全に記憶に定着させておきましょう!