出典(authority):フリー百科事典『ウィキペディア(Wikipedia)』「2014/01/25 21:54:25」(JST)
while文はプログラミング言語において条件が真の間だけ与えられた文の実行を繰り返すループを記述するための文である。
ループの記述には、前置判定と後置判定の2つがある。前置判定は最初に条件式の評価を行い、真であればループ内の処理を行う。C言語などでは while(式) {文}
が前置判定となる。後置判定は最初にループの処理を行い、その後に条件式の評価を行う。同様にCでは do {文} while(式);
が後置判定となる。両者の違いは、前置判定では条件が偽であれば一度もループ内の処理を行わないの対して、後置判定では最低1回はループの内の処理が行われる点にある。
C, C++, C#, D, Java, Perlなどでは基本的な構文は以下のようになる。
while(条件) { 文 }
このループは次のような手順で実行される。
条件がはじめから偽の場合は、真文は一度も実行されないことになる。
C言語のwhile文は、初期化とカウンタ変数の更新を省略したfor文として書き換えることができる。したがって、C言語のwhile文はfor文を特殊化したものといえる。ただし、while文ではループの条件を省略できない点がfor文と異なる。
int x = 0; while (x < 100) { printf("x は %d です。\n",x); x++; }
これを実行すると、次のような出力結果が得られる。
x は 0 です。 x は 1 です。 ………… x は 98 です。 x は 99 です。
はじめ変数xの値は0であり、真文が1回実行されるたびに1が加えられる。真文が100回実行されるとxの値は100になり条件が成り立たなくなるため、このときこのループは終了する。
ループを終了するには、ループの条件を偽にするほかに真文においてbreak文を使う方法もある。ループの条件が常に真であり、真文にbreak文が含まれていない場合(またはbreak文が実行されない場合)、ループは無限ループとなる。また、真文が複数の文からなる場合、continue文を使うことで真文の実行を中止し、条件の評価から処理を再開することができる。
Pascalでは、前置判定としてwhile, do を、また後置判定として repeat, until を使用する。
前置判定
while 条件 do 文
後置判定
repeat 文; 文...; 文 until 条件
repeat-untilでは、条件式が偽の間はループの処理を行い、真になるとループを抜ける点が、Cなどの do-while と異なっている。whileと異なり、必要に応じ複数の文をrepeatとuntilの間における。
Visual Basicでは、条件が真の間にループを継続するための前置判定としてWhile、Do Whileを、後置判定としてDoを用いる。
Whileによる前置判定
While 条件
文
Wend
Do Whileによる前置判定
Do While 条件 文 Loop
Doによる後置判定
Do 文 Loop While 条件
Visual Basicでは、前置判定、後置判定を問わず、条件が偽の間にループを継続することも可能である。前置判定としてDo Until、後置判定としてDoを用いる。ただし、Whileとは異なり、Doを伴わないUntilは利用できない。
Do While文による偽の前置判定
Do Until 条件 文 Loop
Do文による偽の後置判定
Do 文 Loop Until 条件
この項目は、コンピュータに関連した書きかけの項目です。この項目を加筆・訂正などしてくださる協力者を求めています(PJ:コンピュータ/P:コンピュータ)。 |
An automated process has detected links on this page on the local or global blacklist. If the links are appropriate you may request whitelisting; otherwise consider removing or replacing them with more appropriate links.
List of blacklisted links:
|
Look up while or whilst in Wiktionary, the free dictionary. |
"While" is a word in the English language that functions both as a noun and as a subordinating conjunction. Its meaning varies largely based on its intended function, position in the phrase and even the writer or speaker's regional dialect. As a conjunction, it is synonymous with the word "whilst", a form often considered archaic in American and Canadian English, as well as in some style guides on both sides of the Atlantic.
A while and awhile are often confused due to the nature that while is often accompanied by the indefinite article. The main difference is that a while means "an amount of time" or "some duration" whereas awhile is an adverb meaning "for some amount of time" or "for some duration".[1]
Both of these sentences yield the same effective meaning. Whilst is only a conjunction, and so its use here would be incorrect.
The primary function of the word as a conjunction is to indicate that two separate clauses occur at the same time.
While can also be legitimately used in the contrastive sense, comparable to the words "although" or "whereas", provided that it is not ambiguous (although some commentators, such as Eric Partridge, have frowned upon such use):
The latter sentence can mean either "during the time that Sally plays, Sue works" or "although Sally plays, Sue works" and is thus ambiguous.
Fowler's Modern English Usage disapproves of several uses of the conjunctive while. At times it is inappropriately used as a coordinating conjunction: "and" or "but" should be used instead. Its usage as "elegant variation" is also discouraged, as it is masquerading as a "formal word".[2]
In some northern British dialects of English, while is translated into standard English as "until".[3]
In standard British English and Australian English, whilst, as a conjunction, is synonymous with although, whereas, but or while. Unlike whilst, while is also used as a noun (as in “rest for a while”) or a verb (as in “while away the hours”).
The usage of whilst is chiefly British.[4] For example, the BBC World Service website “Learning English”, in their “Ask about English” section, uses the word whilst when explaining the usage of “while and whereas”.[5]
In American English and Canadian English, whilst is considered to be pretentious or archaic.[6][7]
Some publications on both sides of the Atlantic disapprove of whilst in their style guides (along with "amidst" and "amongst"); for example:
The American Heritage Guide writes that, "while using whilst runs the risk of sounding pretentious, it can sometimes add a literary or ironically formal note to a piece of writing."[11]
Practical English Usage by Michael Swan (OUP), a reference book for intermediate and advanced learners of English, does not include whilst but has several sections covering the usage of while.
全文を閲覧するには購読必要です。 To read the full text you will need to subscribe.
リンク元 | 「break」「一方」「whilst」「either」「whereas」 |
拡張検索 | 「worthwhile」「meanwhile」 |
間に、一方では
.