ΠΠ΄Π½Π°ΠΊΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ ΡΠΈΡΡΠ°ΡΠΈΠΈ, ΠΊΠΎΠ³Π΄Π° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° switch. Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΌΠ΅ΡΠΊΠΈ case ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΠΎΠ΄Π½Π°ΠΊΠΎ Π΄Π²Π΅ ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΌΠ΅ΡΠΊΠΈ ΠΌΠΎΠ³ΡΡ ΡΠΎΠ²ΠΌΠ΅ΡΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΅Π΄ΠΈΠ½ΡΠΉ Π½Π°Π±ΠΎΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ. Π ΡΠ°ΠΊΠΈΡ ΡΠΈΡΡΠ°ΡΠΈΡΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΡΠΎΠΏΡΡΡΠΈΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ break ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ ΠΏΡΠΎΠΉΡΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠ΅ΡΠΎΠΊ case.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ Π±Ρ ΠΏΠΎΡΡΠΈΡΠ°ΡΡ ΠΎΠ±ΡΠ΅Π΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π³Π»Π°ΡΠ½ΡΡ ΡΠ°ΠΊ:
unsigned vowelCnt = 0;
// ...
switch (ch) {
// Π΄Π»Ρ ΠΈΠ½ΠΊΡΠ΅ΠΌΠ΅Π½ΡΠ° vowelCnt ΠΏΠΎΠ΄ΠΎΠΉΠ΄Π΅Ρ Π»ΡΠ±Π°Ρ Π±ΡΠΊΠ²Π° Π°, Π΅, i, ΠΎ ΠΈΠ»ΠΈ u
case 'a':
case 'e':
case 'i':
case 'o':
case 'u':
++vowelCnt;
break;
}
ΠΠ΄Π΅ΡΡ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠ΅ΡΠΎΠΊ case ΠΏΠΎΠ΄ΡΡΠ΄ Π±Π΅Π· ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° break. Π’Π΅ΠΏΠ΅ΡΡ ΠΏΡΠΈ Π»ΡΠ±ΠΎΠΉ Π³Π»Π°ΡΠ½ΠΎΠΉ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ch Π±ΡΠ΄Π΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΡΠΎΡ ΠΆΠ΅ ΠΊΠΎΠ΄.
ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΠ·ΡΠΊ Π‘++ Π½Π΅ ΡΡΠ΅Π±ΡΠ΅Ρ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°ΡΡ ΠΌΠ΅ΡΠΊΠΈ case Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅, Π²Π΅ΡΡ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ Π² ΠΎΠ΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅:
switch (ch) {
// Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΡΠΉ Π΄ΠΎΠΏΡΡΡΠΈΠΌΡΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ
case 'a': case 'e': case 'i': case 'o': case 'u':
++vowelCnt;
break;
}
Π‘Π»ΡΡΠ°ΠΈ, ΠΊΠΎΠ³Π΄Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ break ΠΏΡΠΎΠΏΡΡΠΊΠ°ΡΡ ΠΏΡΠ΅Π΄Π½Π°ΠΌΠ΅ΡΠ΅Π½Π½ΠΎ, Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΡΠ΅Π΄ΠΊΠΈ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΈΡ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°ΡΡ, ΠΎΠ±ΡΡΡΠ½ΡΡ Π»ΠΎΠ³ΠΈΠΊΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ.
ΠΡΠΎΠΏΡΡΠΊ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° break β Π²Π΅ΡΡΠΌΠ° ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½Π°Ρ ΠΎΡΠΈΠ±ΠΊΠ°ΠΠ΅ΡΡΠΌΠ° ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΎ Π·Π°Π±Π»ΡΠΆΠ΄Π΅Π½ΠΈΠ΅, ΡΡΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ²ΡΠ·Π°Π½Ρ Ρ ΡΠΎΠ²ΠΏΠ°Π²ΡΠ΅ΠΉ ΠΌΠ΅ΡΠΊΠΎΠΉ case. ΠΠΎΡ ΠΏΡΠΈΠΌΠ΅Ρ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠΉ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΏΠΎΠ΄ΡΡΠ΅ΡΠ° Π³Π»Π°ΡΠ½ΡΡ Π² ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ΅ switch:
// Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠΏΡΠ΅Π΄Π½Π°ΠΌΠ΅ΡΠ΅Π½Π½ΠΎ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΉ ΠΊΠΎΠ΄!
switch (ch) {
case 'a' :
++aCnt; // Π£ΠΏΡ! ΠΠ΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ break
case 'e':
++eCnt; // Π£ΠΏΡ! ΠΠ΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ break
case 'i':
++iCnt; // Π£ΠΏΡ! ΠΠ΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ break
case 'o':
++oCnt; // Π£ΠΏΡ! ΠΠ΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ break
case 'u':
++uCnt;
}
Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ½ΡΡΡ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΡΡΠ΅Π΅, ΠΏΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ch ΡΠ²Π»ΡΠ΅ΡΡΡ 'e'. ΠΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΡ ΠΊ ΠΊΠΎΠ΄Ρ ΠΏΠΎΡΠ»Π΅ ΠΌΠ΅ΡΠΊΠΈ case 'e', Π³Π΄Π΅ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΠΈΠ½ΠΊΡΠ΅ΠΌΠ΅Π½Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ eCnt. ΠΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΡΡΡ Π΄Π°Π»Π΅Π΅ ΡΠ΅ΡΠ΅Π· ΠΌΠ΅ΡΠΊΠΈ case, ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Ρ ΡΠ°ΠΊΠΆΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ iCnt, oCnt ΠΈ uCnt.
ΠΠ΅ΡΠΌΠΎΡΡΡ Π½Π° ΡΠΎ ΡΡΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ break ΠΈ Π½Π΅ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»Π΅Π½ ΠΏΠΎΡΠ»Π΅ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ ΠΌΠ΅ΡΠΊΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° switch, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ Π²ΡΠ΅ ΠΆΠ΅ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ. ΠΠ΅Π΄Ρ Π΅ΡΠ»ΠΈ Π²ΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ switch Π±ΡΠ΄Π΅Ρ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ Π΅ΡΠ΅ ΠΎΠ΄Π½ΠΎΠΉ ΠΌΠ΅ΡΠΊΠΎΠΉ case, ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° break ΠΏΠΎΡΠ»Π΅ ΠΏΡΠ΅ΠΆΠ½Π΅ΠΉ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ ΠΌΠ΅ΡΠΊΠΈ Π½Π΅ ΡΠΎΠ·Π΄Π°ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ.
ΠΠ΅ΡΠΊΠ° defaultΠΠΏΠ΅ΡΠ°ΡΠΎΡΡ ΠΏΠΎΡΠ»Π΅ ΠΌΠ΅ΡΠΊΠΈ default Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ, Π΅ΡΠ»ΠΈ Π½ΠΈ ΠΎΠ΄Π½Π° ΠΈΠ· ΠΌΠ΅ΡΠΎΠΊ case Π½Π΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° switch. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π² ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅ΠΌΡΠΉ ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΡΠ΅ΡΡΠΈΠΊ Π½Π΅Π³Π»Π°ΡΠ½ΡΡ Π±ΡΠΊΠ². ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠΎΠ³ΠΎ ΡΡΠ΅ΡΡΠΈΠΊΠ° ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ otherCnt Π±ΡΠ΄Π΅Ρ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°ΡΡΡΡ Π² ΡΠ»ΡΡΠ°Π΅ default:
// Π΅ΡΠ»ΠΈ ch Π³Π»Π°ΡΠ½Π°Ρ, ΡΠ²Π΅Π»ΠΈΡΠΈΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ ΡΡΠ΅ΡΡΠΈΠΊ
switch (ch) {
case 'a': case 'e': case 'i': case 'o': case 'u':
++vowelCnt;
break;
default:
++otherCnt;
break;
}
Π ΡΡΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ, Π΅ΡΠ»ΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ch Π½Π΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π³Π»Π°ΡΠ½ΡΡ Π±ΡΠΊΠ²Ρ, ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΉΠ΄Π΅Ρ ΠΊ ΠΌΠ΅ΡΠΊΠ΅ default ΠΈ ΡΠ²Π΅Π»ΠΈΡΠΈΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠ΅ΡΡΠΈΠΊΠ° otherCnt.
Π Π°Π·Π΄Π΅Π» default ΠΈΠΌΠ΅Π΅Ρ ΡΠΌΡΡΠ» ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π²ΡΠ΅Π³Π΄Π°, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π² Π½Π΅ΠΌ Π½Π΅ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π½ΠΈΠΊΠ°ΠΊΠΈΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ. ΠΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠΈ ΡΡΠΎ ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΠΎ ΡΠΊΠ°ΠΆΠ΅Ρ ΡΠΈΡΠ°ΡΠ΅Π»Ρ ΠΊΠΎΠ΄Π°, ΡΡΠΎ ΡΠ»ΡΡΠ°ΠΉ default Π½Π΅ Π±ΡΠ» Π·Π°Π±ΡΡ, Ρ.Π΅. Π΄Π»Ρ ΠΎΡΡΠ°Π»ΡΠ½ΡΡ ΡΠ»ΡΡΠ°Π΅Π² Π½ΠΈΠΊΠ°ΠΊΠΈΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ ΠΏΡΠ΅Π΄ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ Π½Π΅ Π½ΡΠΆΠ½ΠΎ.
ΠΠ΅ΡΠΊΠ° Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π°Π²ΡΠΎΠ½ΠΎΠΌΠ½ΠΎΠΉ; ΠΎΠ½Π° Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΡΠ΅Π΄ΡΠ΅ΡΡΠ²ΠΎΠ²Π°ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ ΠΈΠ»ΠΈ Π΄ΡΡΠ³ΠΎΠΉ ΠΌΠ΅ΡΠΊΠ΅ case. ΠΡΠ»ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ switch Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°Π΅ΡΡΡ ΡΠ°Π·Π΄Π΅Π»ΠΎΠΌ default, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π½Π΅ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ Π½ΠΈΠΊΠ°ΠΊΠΈΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ, Π·Π° ΠΌΠ΅ΡΠΊΠΎΠΉ default Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡ ΠΏΡΡΡΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ ΠΈΠ»ΠΈ ΠΏΡΡΡΠΎΠΉ Π±Π»ΠΎΠΊ.
ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π² ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ΅ switchΠΠ°ΠΊ ΡΠΆΠ΅ ΡΠΏΠΎΠΌΠΈΠ½Π°Π»ΠΎΡΡ, Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° switch ΡΠΏΠΎΡΠΎΠ±Π½ΠΎ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΡΡ ΡΠ΅ΡΠ΅Π· ΠΌΠ΅ΡΠΊΠΈ case. ΠΠΎΠ³Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΡ ΠΊ Π½Π΅ΠΊΠΎΠΉ ΠΌΠ΅ΡΠΊΠ΅ case, Π²Π΅ΡΡ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π½ΡΠΉ Π²ΡΡΠ΅ ΠΊΠΎΠ΄ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° switch Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΠΈΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°Π½. Π€Π°ΠΊΡ ΠΈΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΊΠΎΠ΄Π° ΠΏΠΎΠ΄Π½ΠΈΠΌΠ°Π΅Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠΉ Π²ΠΎΠΏΡΠΎΡ: ΡΡΠΎ Π±ΡΠ΄Π΅Ρ, Π΅ΡΠ»ΠΈ ΠΏΡΠΎΠΏΡΡΠ΅Π½Π½ΡΠΉ ΠΊΠΎΠ΄ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ?
ΠΡΠ²Π΅Ρ ΠΏΡΠΎΡΡ: Π½Π΅Π΄ΠΎΠΏΡΡΡΠΈΠΌ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ Ρ ΠΌΠ΅ΡΡΠ°, Π³Π΄Π΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ Ρ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΎΡΠΎΠΌ ΡΠΆΠ΅ Π²ΡΡΠ»Π° ΠΈΠ· ΠΎΠ±Π»Π°ΡΡΠΈ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΊ ΠΌΠ΅ΡΡΡ, Π³Π΄Π΅ ΡΡΠ° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΠΎΠ±Π»Π°ΡΡΠΈ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΠΈ.
case true:
// ΡΡΠΎΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ switch Π½Π΅Π΄ΠΎΠΏΡΡΡΠΈΠΌ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ
// ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΠΎΠΉΡΠΈ
string file_name; // ΠΎΡΠΈΠ±ΠΊΠ°: Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΎΠ±Ρ ΠΎΠ΄ΠΈΡ Π½Π΅ΡΠ²Π½ΠΎ
// ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
int ival = 0; // ΠΎΡΠΈΠ±ΠΊΠ°: Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΎΠ±Ρ ΠΎΠ΄ΠΈΡ Π½Π΅ΡΠ²Π½ΠΎ
// ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
int jval; // ok: ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ jval Π½Π΅ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π°
break;
case false:
// ok: jval Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΠΎΠ±Π»Π°ΡΡΠΈ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΠΈ, Π½ΠΎ ΠΎΠ½Π° Π½Π΅ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π°
jval = next_num(); // ok: ΠΏΡΠΈΡΠ²ΠΎΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ jval
if (file_name.empty()) // file_name Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΠΎΠ±Π»Π°ΡΡΠΈ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΠΈ, Π½ΠΎ
// ΠΎΠ½Π° Π½Π΅ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π°
// ...
ΠΡΠ»ΠΈ Π±Ρ ΡΡΠΎΡ ΠΊΠΎΠ΄ Π±ΡΠ» Π΄ΠΎΠΏΡΡΡΠΈΠΌ, ΡΠΎ Π»ΡΠ±ΠΎΠΉ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ ΠΊ ΡΠ»ΡΡΠ°Ρ false ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠ» Π±Ρ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ file_name ΠΈ ival, Π½ΠΎ ΠΎΠ½ΠΈ ΠΎΡΡΠ°Π²Π°Π»ΠΈΡΡ Π±Ρ Π² ΠΎΠ±Π»Π°ΡΡΠΈ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΈ ΠΊΠΎΠ΄ Π²ΠΏΠΎΠ»Π½Π΅ ΠΌΠΎΠ³ Π±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΡ . ΠΠ΄Π½Π°ΠΊΠΎ ΡΡΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Π½Π΅ Π±ΡΠ»ΠΈ Π±Ρ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Ρ. Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΡΠ·ΡΠΊ Π½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠ΅ΡΠ΅ΠΏΡΡΠ³ΠΈΠ²Π°ΡΡ ΡΠ΅ΡΠ΅Π· ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ, Π΅ΡΠ»ΠΈ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½Π°Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΠΎΠ±Π»Π°ΡΡΠΈ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΠΈ Π² ΠΏΡΠ½ΠΊΡΠ΅, ΠΊ ΠΊΠΎΡΠΎΡΠΎΠΌΡ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅.
ΠΡΠ»ΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΠΈ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Π΄Π»Ρ Π½Π΅ΠΊΠΎΠ΅Π³ΠΎ ΡΠ»ΡΡΠ°Ρ case, ΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ ΡΠ»Π΅Π΄ΡΠ΅Ρ Π² Π±Π»ΠΎΠΊΠ΅, Π³Π°ΡΠ°Π½ΡΠΈΡΡΡ ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΡΠΎ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ Π²ΡΠΉΠ΄Π΅Ρ ΠΈΠ· ΠΎΠ±Π»Π°ΡΡΠΈ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΏΠ΅ΡΠ΅Π΄ Π»ΡΠ±ΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΠΌΠ΅ΡΠΊΠΎΠΉ.
case true:
{
// ok: ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΡ Π² ΠΏΡΠ΅Π΄Π΅Π»Π°Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ½ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ°
string file_name = get_file_name();
// ...
}
break;
case false:
if (file_name.empty()) // ΠΎΡΠΈΠ±ΠΊΠ°: file_name Π²Π½Π΅ ΠΎΠ±Π»Π°ΡΡΠΈ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΠΈ
Π£ΠΏΡΠ°ΠΆΠ½Π΅Π½ΠΈΡ ΡΠ°Π·Π΄Π΅Π»Π° 5.3.2Π£ΠΏΡΠ°ΠΆΠ½Π΅Π½ΠΈΠ΅ 5.9. ΠΠ°ΠΏΠΈΡΠΈΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠ΅ΡΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ² if Π΄Π»Ρ ΠΏΠΎΠ΄ΡΡΠ΅ΡΠ° ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° Π³Π»Π°ΡΠ½ΡΡ Π±ΡΠΊΠ² Π² ΡΠ΅ΠΊΡΡΠ΅, ΠΏΡΠΎΡΠΈΡΠ°Π½Π½ΠΎΠΌ ΠΈΠ· ΠΏΠΎΡΠΎΠΊΠ° cin.
Π£ΠΏΡΠ°ΠΆΠ½Π΅Π½ΠΈΠ΅ 5.10. ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΏΠΎΠ΄ΡΡΠ΅ΡΠ° Π³Π»Π°ΡΠ½ΡΡ ΠΈΠΌΠ΅Π΅Ρ ΠΎΠ΄Π½Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ: ΠΎΠ½Π° Π½Π΅ ΡΡΠΈΡΡΠ²Π°Π΅Ρ Π·Π°Π³Π»Π°Π²Π½ΡΠ΅ Π±ΡΠΊΠ²Ρ ΠΊΠ°ΠΊ Π³Π»Π°ΡΠ½ΡΠ΅. ΠΠ°ΠΏΠΈΡΠΈΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠ΄ΡΡΠΈΡΡΠ²Π°Π΅Ρ Π³Π»Π°ΡΠ½ΡΠ΅ Π±ΡΠΊΠ²Ρ ΠΊΠ°ΠΊ Π² Π²Π΅ΡΡ Π½Π΅ΠΌ, ΡΠ°ΠΊ ΠΈ Π² Π½ΠΈΠΆΠ½Π΅ΠΌ ΡΠ΅Π³ΠΈΡΡΡΠ΅. Π’ΠΎ Π΅ΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠ΅ΡΡΠΈΠΊΠ° aCnt Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°ΡΡΡΡ ΠΏΡΠΈ Π²ΡΡΡΠ΅ΡΠ΅ ΠΊΠ°ΠΊ ΡΠΈΠΌΠ²ΠΎΠ»Π° 'a', ΡΠ°ΠΊ ΠΈ ΡΠΈΠΌΠ²ΠΎΠ»Π° 'A' (Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ Π΄Π»Ρ ΠΎΡΡΠ°Π»ΡΠ½ΡΡ Π³Π»Π°ΡΠ½ΡΡ Π±ΡΠΊΠ²).
Π£ΠΏΡΠ°ΠΆΠ½Π΅Π½ΠΈΠ΅ 5.11. ΠΠ·ΠΌΠ΅Π½ΠΈΡΠ΅ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅ΠΌΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΡΠ°ΠΊ, ΡΡΠΎΠ±Ρ ΠΎΠ½Π° ΠΏΠΎΠ΄ΡΡΠΈΡΡΠ²Π°Π»Π° ΡΠ°ΠΊΠΆΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΡΠΎΠ±Π΅Π»ΠΎΠ², ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² ΡΠ°Π±ΡΠ»ΡΡΠΈΠΈ ΠΈ Π½ΠΎΠ²ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ.
Π£ΠΏΡΠ°ΠΆΠ½Π΅Π½ΠΈΠ΅ 5.12. ΠΠ·ΠΌΠ΅Π½ΠΈΡΠ΅ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅ΠΌΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΡΠ°ΠΊ, ΡΡΠΎΠ±Ρ ΠΎΠ½Π° ΠΏΠΎΠ΄ΡΡΠΈΡΡΠ²Π°Π»Π° ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π²ΡΡΡΠ΅ΡΠ΅Π½Π½ΡΡ Π΄Π²ΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠ΅ΠΉ: ff, fl ΠΈ fi.
Π£ΠΏΡΠ°ΠΆΠ½Π΅Π½ΠΈΠ΅ 5.13. ΠΠ°ΠΆΠ΄Π°Ρ ΠΈΠ· ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΡ Π½ΠΈΠΆΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΡ ΠΎΡΠΈΠ±ΠΊΡ. ΠΡΡΠ²ΠΈΡΠ΅ ΠΈ ΠΈΡΠΏΡΠ°Π²ΡΡΠ΅ ΠΊΠ°ΠΆΠ΄ΡΡ ΠΈΠ· Π½ΠΈΡ .
ΠΠΎΠ΄ Π΄Π»Ρ ΡΠΏΡΠ°ΠΆΠ½Π΅Π½ΠΈΡ 5.13
(a) unsigned aCnt = 0, eCnt = 0, iouCnt = 0;
char ch = next_text();
switch (ch) {
case 'a': aCnt++;
case 'e': eCnt++;
default: iouCnt++;
}
(b) unsigned index = some_value();
switch (index) {
case 1:
int ix = get_value();
ivec[ix] = index;
break;
default:
ix = ivec.size()-1;
ivec[ix] = index;
(c) unsigned evenCnt = 0, oddCnt = 0;
int digit = get_num() % 10;
switch (digit) {
case 1, 3, 5, 7, 9:
oddcnt++;
break;
case 2, 4, 6, 8, 10:
evencnt++;
break;
}
(d) unsigned ival=512, jval=1024, kval=4096;
unsigned bufsize;
unsigned swt = get_bufCnt();
switch(swt) {
case ival:
bufsize = ival * sizeof (int);
break;
case jval:
bufsize = jval * sizeof(int);
break;