Instrukcja pusta, else
Ostatnio zmodyfikowano 2013-10-09 19:59
ScruffyDrake Temat założony przez niniejszego użytkownika |
Instrukcja pusta, else » 2013-10-06 19:42:27 Mam fragment programu: if( m > t ) if( t <= e ); else cout << "Wniosek : " << " # " << endl;
I mam odpowiedzieć na dwa pytania: 1.Dlaczego else odwołuje się do if( t <= e ); , a nie do if( m > t ) 2.Które wyrażenie będzie brane pod uwagę we wniosku ? if( t <= e ); , a może if( m > t ) ? Byłbym wdzięczny za wytłumaczenie. |
|
SeaMonster131 |
» 2013-10-06 20:18:31 1. Zrób klamrę: if( m > t ) { if( t <= e ); } else cout << "Wniosek : " << " # " << endl;
Albo możesz też zrobić tak: if( m > t ) { if( t <= e ); else cout << "Wniosek : " << " # " << endl; }
i wtedy parser ładnie pokazuje do jakiego ifa odnosi się else. |
|
ScruffyDrake Temat założony przez niniejszego użytkownika |
» 2013-10-06 21:17:57 Czyli jakby była instrukcja: if( a > 50 ) cout << "Cos tam cos"; else if( a < 30 ) cout << "Cos"; else cout << "Ok"; To else odnosi się do else if ? Powiem szczerze, że za bardzo nie rozumiem. W pierwszym przykładzie co podał SeaMonster131 wygląda to tak jakby else odwoływało się do pierwszego if, a nie drugiego. Jakbyście mogli to rozjaśnić, byłbym wdzięczny. |
|
kubawal |
» 2013-10-06 21:18:53 else odnosi się do pierwszego if w bloku, które nie ma już swojego else
/edit: Tak. |
|
ScruffyDrake Temat założony przez niniejszego użytkownika |
» 2013-10-06 21:29:38 Mam jeszcze pytanie w zadaniu: Co oznacza średnik w if( t <= e ); ? Wiem, że oznacza to instrukcję pustą, tylko nie wiem czy dobrze rozumiem jej pojęcie. Jakby zamiast wyrażenia powyżej byłoby if( t <= e ) cout << "Cos"; to dane wyrażenie nie jest instrukcją pustą, zgadza się? |
|
kubawal |
» 2013-10-06 21:31:05 Sam średnik to instrukcja która nie robi nic
To tak, jakbyś nie napisał tego if'a bo to się tak i tak nie wykona |
|
ScruffyDrake Temat założony przez niniejszego użytkownika |
» 2013-10-06 21:37:39 Czyli to jest instrukcja, która nie jest pustą: if( t <= e ) cout << "Cos"; A to jest instrukcja pusta: if( t <= e ); Zgadza się? |
|
Bajt |
» 2013-10-09 19:45:55 W pierwszym przypadku program zwróci napis "Cos". Natomiast w drugim, nie wykona się żadna operacja, albowiem if nie zawiera kodu, który ma się wykonać gdy spełniony będzie jego warunek. |
|
« 1 » 2 |