2012-01-06 10 views
3

これは非常に下位ですが、条件文としてどのように "but"を表現しますか?言語は本当に重要ではありません。私は自分の脳をコードでどのように解釈しているのかを調べようとしていましたが、研究の際に何の情報も見つけられなかったようです。プログラミング中の単語 "but"

例えば擬似コード

I like Apples, but I like Washington apples more 
+4

するとあなたは私たちに私たちが翻訳するのを使用して、「しかし」、完全な文を与えることができます:) – JaredPar

+3

それはあなたが何を意味するかは明らかではありません。あなたが本当に助けになる具体的な例を与えることができれば。 –

+0

elseのように聞こえる場合 – dan

答えて

2

私はあなたが特定のインスタンスを見て、それらを翻訳する方法を見つけることができ、プログラミング言語にbutの直訳は難しいかもしれないと思うが、(/含み笑い)。例えば

(以前のポスターのPEESの例を使用して)

I dislike peas but I'll sometimes eat them in salads 

あなたは多少解釈、あなたは特別なケースとして扱うことができ、同じようにコーディングすることを考えると

I don't eat peas but I'll eat them in salads 

としてこれを読むことができます

if(hasPeas()) { 
    if(inSalad()) { 
     willEat(); 
    } else { 
     willNotEat(); 
    } 
} 

ほとんどの場合、ガードまたはエッジケースの状態と考えることができます。例えば、(アイデアを説明するために本当に悪いのコードを使用して)ファイルを読み込むとき:

text = ""; 
while(true) { 
    while((count = canRead(fd)) <= 0) { // nothing to read 
     if(count == EOF) { // EOF is a magic value meaning there will never be more to read 
      return text; 
     } 
     wait(1000); // wait a bit to see if more text shows up to read 
    } 
    text += read(fd, count); 
} 
+0

+1あなたのコードは私のアイデアよりも優れています。 –

3

に私がで任意のコンテキストを考えることができない「ではなく」それは矛盾の意味を暗示しているという事実を除いて(「および」以外のものを意味し、それがコードに変換される方法はわかりません)、ほとんどの言語では言語の "and"演算子、つまり&&を使用してください。

+2

+1。これは明らかに正解です。 「ない」と「1つ」の違い、または「ない」と「ある」の違い)を意味する「任意の」と同じ意味で「と」を意味します。 – Patrick87

3

"but"は、必須のものではなく、知識に関する宣言的なものです。あなたは「私はエンドウ豆が嫌いですが、時にはサラダで食べます。

命令型言語でのプログラミングは、命令型コマンドの観点から行われています。 "Do X"。 "もしXがYなら"。 「しかし」、すなわちelseまたはelse if、だろうに最も近いもの:私たちは私たちのウェイターに不可欠指示を与えていたのであれば、我々は以前のエンドウ豆についての私たちの宣言情報を向けるかもしれない

if (value == 1) 
{ 
    #do something 
} 
else 
{ 
    #do something else 
} 

(「私はエンドウ豆を嫌います私は時々サラダでそれらを食べるでしょう ")コマンドを"ウェイター、サンドウィッチのエンドウがサラダを持っている場合は、エントリーを提供してください。擬似コードでは、私たちのウェイター(またはコンピュウェイターが)、これは読むかもしれないPHP5を理解している場合:

if (entree->hasPeasInSalad()) 
{ 
    serve(entree); 
} 
else if (entree->isPeas()) 
{ 
    discard(entree); 
} 
+1

か 'hasPeas'の代わりに' $ entree-> isPeas()) 'でしょうか? – KevinDTimm

+2

なぜ誰かがこれをdownvoteだろうか? –

+0

おそらくphpタグが編集されているので、無実の読者はphp5に関する長いエラボレーションを期待していません。 – Ingo

1

私たちはRubyでunlessキーワードを持っているが、私はbutを使用して想像することはできません。

0

おそらくelseとして?

"xが5より小さい場合はこれを行いますが、xが5より大きい場合はそれを行います。"

if (x < 5) { 
    doThis(); 
} 
else { 
    doThat(); 
} 

また、否定のあるandとしますか?

"xが3から8の間で、5と等しくない場合は、これを行います。"

if (x >= 3 && x <= 8 && x != 5) { 
    doThis(); 
} 
0

一文に含まは純粋に宣言型で、リンゴや他の何かをlikeingの結果の何かを述べるいない - 私はそれはのようなものであろうと期待される;しかし、

var degreeOfLikeness = neutral; 

if (object.type = Apple) { 
    degreeOfLikeness = like_Degree_5; 
    if (object.spicies = "Washington") 
     degreeOfLikeness = like_Degree_8; 
} 

if (degreeOfLikeness > like_Degree_2) { 
    object.eat(); 
    if (degreeOfLikeness > like_Degree_6) { 
     output.say("Ummm!!!"); 
    } 
} 
関連する問題