alegerea declarație de caz

Anterior, au fost introduse într-o declarație condiționată, în cazul, care permite programului să efectueze conversii pentru o anumită ramură a valorii condițiilor Boolean. Utilizarea mai multor operatori Dacă, ramificare poate fi realizată pe secvența condiții. În fragmentul prezentat ca folosind o serie de operatori Dacă puteți converti număr întreg (0-9) la reprezentarea verbală:







dacă Ziphra = 0
atunci
scrie ( 'zero');
dacă Ziphra = 1
atunci
write ( 'unitate');
dacă Ziphra = 2
atunci
write ( 'Two');

Probabil ai deja imagina modul în care această abordare este monotonă și plictisitoare. limbajul Pascal prevede în acest scop, o altă structură de control (operatorul de selecție caz), care vă permite să construiască ramificarea unui număr de condiții într-o formă mai convenabilă pentru cititori.

selectați operatorul selectează una din mai multe prelungiri posibile ale programului. Parametrul, prin care alegerea este așa-numita selectați tasta (sau selectorul) - exprimarea oricărui tip (cu excepția celor de tip REAL și STRING).

Forma generală a următoarelor elemente:

expresie cazul
VALUE1. operatorul (grupul operatorului);
valoare2. operatorul (grupul operatorului);
.
valueN. operatorul (grup de operatori)
Operatorul altceva (grupul operatorului);
se încheie;

selectați Declarație funcționează după cum urmează. Prima valoare a expresiei calculată după caz ​​cuvântul rezervat și apoi execută instrucțiunea (sau operatorul compozit), care corespunde rezultatului expresiei de calcul.

Se poate întâmpla ca în lista de selectare nu va apărea constantă egală cu valoarea calculată a cheii. În acest caz, se trece la operatorul în picioare în spatele cuvântului ELSE.

NUMBER caz mod 2
0. writeln (NUMBER, '- chiar și numărul')
altceva. writeln (NUMBER, '- număr impar');
se încheie;

În cazul în care o declarație este executat pentru mai multe valori, ele pot fi separate printr-o virgulă.

caz lună de
1, 2, 3. writeln ( 'primul trimestru');
4, 5, 6. writeln ( 'al doilea trimestru');
7, 8, 9. writeln ( 'Al treilea trimestru');






10, 11, 12. writeln ( 'al patrulea trimestru');
se încheie;

Operatorul poate fi nu numai o simplă declarație, ci ca declarații integrale și goale.

În cazul în care operatorul a efectuat la mai multe valori ale selectorului succed, formând o anumită perioadă, acesta poate fi scris într-un mod mai concis. De exemplu,

caz de Chislo
0..9. write ( „Acest număr este cifra“);

Uită-te la ce opțiuni pe care le puteți utiliza în continuare instrucțiunea select pentru a rezolva problema.

Sarcină. Scrieți un număr de program de conversie în cuvinte.

Programul Number1;
var
a, b, c. întreg;
începe
writeln ( 'Introduceți numărul de');
readln (a);
dacă (a<0) or (a>9)
atunci
writeln ( „Acest număr nu este un număr“)
altfel
cazul în care o de
0. writeln ( 'zero');
1. writeln ( 'a');
2. writeln ( 'doi');
3. writeln ( 'trei');
4. writeln ( 'patru');
5. writeln ( 'cinci');
6. writeln ( 'șase');
7. writeln ( 'șapte');
8. writeln ( 'opt');
9. writeln ( 'nouă');
se încheie;
readln;
Sfârșit.

Programul număr2;
var
a, b, c. întreg;
începe
writeln ( 'Introduceți numărul de');
readln (a);
cazul în care o de
0. writeln ( 'zero');
1. writeln ( 'a');
2. writeln ( 'doi');
3. writeln ( 'trei');
4. writeln ( 'patru');
5. writeln ( 'cinci');
6. writeln ( 'șase');
7. writeln ( 'șapte');
8. writeln ( 'opt');
9. writeln ( 'Nine')
writeln altceva ( „Acest număr nu este o cifră“);
se încheie;
readln;
Sfârșit.

  1. Scrie un algoritm pentru a obține numele verbale notelor școlare.
  • Scrie algortm triunghiuri (clasificând acute în unghi, dreptunghiular, obtuz), în cazul dat unghiurile.
  • Scrie un algoritm care zi a săptămânii - număr întreg de 1 la 7 pentru a da ca rezultat numărul de lecții într-o clasă în ziua respectivă.
  • Scrie un algoritm pentru a găsi numărul de zile din luna, atunci cand este administrata: Numărul de luni n - un număr întreg și. egal cu 1 pentru anul bisect, și egal cu 0 în caz contrar.
  • Până în ziua din săptămână să-și retragă numele său.
  • În funcție de faptul dacă este introdusă o paranteză deschisă sau închisă, de tip „paranteză deschisă“ sau „acoladă închis“. (Luați în considerare paranteze, între paranteze, acolade).
  • În funcție de caracterul L introdus, S, programul V trebuie să calculeze lungimea circumferinței; zona de cerc; volumul cilindrului.
  • Prin introducerea unui număr de 0-15, pentru a aduce numele culorii corespunzătoare acestui cod.
  • Pentru a stabili dacă scrisoarea a intrat în vocalei alfabetul românesc.
  • Scrieți un program care oferă un meniu pentru a afișa obiecte grafice, precum și pentru a atrage alegerea corespunzătoare.
  • Scrieți un program care în conformitate cu numărul introdus în intervalul 0..24 determină momentul zilei.
  • Scrieți un program care numărul introdus sau o lună nebisect, an bisect, afișează numărul de zile din luna.
  • Evaluați funcția la una din formulele: