Podcast
-
Upload
alinabacalim -
Category
Education
-
view
277 -
download
0
Transcript of Podcast
InstrucInstrucŢiuneŢiunea cASEa cASE
Lecţie elaborată de Bacalîm AlinaLecţie elaborată de Bacalîm Alina
masterandă gr.IP11Mmasterandă gr.IP11M
Material didactic pentru elevii clasei a IXMaterial didactic pentru elevii clasei a IX
CuprinsCuprins
IntroducereIntroducereSintaxa instrucţiunei CaseSintaxa instrucţiunei CasePrincipiu de lucruPrincipiu de lucruSchema-blocSchema-blocExemplu rezolvatExemplu rezolvatConcluziiConcluzii
O familie de tineri cO familie de tineri căăssăătoritoriţţi dorei doreşşte ste săă-i cumpere -i cumpere noului nnoului năăscut ceva de scut ceva de îîmbracat pentru atunci cmbracat pentru atunci cîînd nd copilul va fi ceva mai maricel. copilul va fi ceva mai maricel.
El zice: El zice: “dac“dacăă este fat este fatăă îîi lui luăăm o fustim o fustiţăţă, iar dac, iar dacăă e e bbăăiat o pereche de pantalonaiat o pereche de pantalonaşşi”.i”.
AceastAceastăă problem problemăă se poate solu se poate soluţţiona cu ajutorul iona cu ajutorul instrucinstrucţţiunii de decizieiunii de decizie IFIF..
Dar ea intreabDar ea intreabăă: : “dar dac“dar dacăă sunt dou sunt douăă feti fetiţţe e gemene sau doi bgemene sau doi băăieieţţi gemeni sau chiar o i gemeni sau chiar o
fetifetiţăţă şşi un i un bbăăieieţţel gemeni?”.el gemeni?”.
PProblema se complicroblema se complicăă, a, aşşa a îîncncîît trebuie prevt trebuie prevăăzute mai zute mai mult de doumult de douăă cazuri. cazuri.
Introducere
ÎÎn caz can caz ca noul nnoul năăscutscut esteeste::–o fato fatăă: cump: cumpăărrăăm o fustim o fustiţăţă;;–un bun băăiatiat: cump: cumpăărrăăm o pereche de m o pereche de
pantalonapantalonaşşi;i;–doua fetedoua fete: cump: cumpăărrăăm doua fustim doua fustiţţe;e;–doi baiedoi baieţţii: cump: cumpăărrăăm doua perechi m doua perechi
de pantalonade pantalonaşşi;i;altfelaltfel cumpcumpăărrăăm numai scutecem numai scutece
AceastAceastăă problem problemăă optimal e posibil de optimal e posibil de solutionat solutionat cucu instruc instrucţţiunea de decizie multipliunea de decizie multiplăă casecase..
Sintaxa instructiunei CaseSintaxa instructiunei Case
Transformam exemplu analizat in limbajul Pascal:Transformam exemplu analizat in limbajul Pascal:
in cazin caz <nou_nascut><nou_nascut> esteeste::
fatafata: : fustitafustita;;
baiatbaiat: : pantalonasipantalonasi;;
doua fetedoua fete: : doua fustitedoua fustite;;
doi baietidoi baieti: : doi pantalonasidoi pantalonasi
altfelaltfel
scutece.scutece.
Case < selector> of:
Alternativa_1: instr_1;
Alternativa_2: instr_2;
…………………….... ;
Alternativa_n: instr_n
else
instr_n+1.
Alt
ern
ativ
e
Principiu de lucruPrincipiu de lucru1. Se evaluează valoarea selectorului;1. Se evaluează valoarea selectorului;2. Se caută printre alternativele propuse 2. Se caută printre alternativele propuse
alternativa care cuprinde valoarea selectorului;alternativa care cuprinde valoarea selectorului;3. Dacă se găseşte o asemenea alternativă, se 3. Dacă se găseşte o asemenea alternativă, se
execută instrucţiunea care o urmează, apoi execută instrucţiunea care o urmează, apoi gestiunea se transmite la instrucţiunea după gestiunea se transmite la instrucţiunea după endend
4. Dacă nu se găseşte o asemenea alternativă se 4. Dacă nu se găseşte o asemenea alternativă se execută instrucţiunea care urmează după execută instrucţiunea care urmează după cuvîntul-cheie cuvîntul-cheie elseelse, în lipsa acestuia nu se , în lipsa acestuia nu se execută nimic şi gestiunea trece la execută nimic şi gestiunea trece la instrucţiunea care urmează dupăinstrucţiunea care urmează după endend..
Schema-blocSchema-bloc
Selector
Instr_1
Instr_2
……………………..
Alternativa1
Alternativa 2
Alternativa n Instr_n
Instr_n+1
True
True
True
False
False
False
False
End
AAlternativa poate fi un lternativa poate fi un şşir de constanteir de constante despărţite prin virgulădespărţite prin virgulă::
Case i ofCase i of0,2,4,6,8 0,2,4,6,8 1,3,5,7,91,3,5,7,9 end;end;
: writeln(‘Cifra para’);
: writeln(‘Cifra impara’);
AAlternativa poate fi lternativa poate fi un subdomeniu un subdomeniu (interval)(interval)
Case c ofCase c of
‘‘A’..’Z’A’..’Z’
‘‘0’..’9’0’..’9’
end;end;
: writeln(‘Literă mare’);
: writeln(‘Cifra’);
ExemplExempluu Program Operator;Var a,b,y:real; C: char;BeginWrite (‘a=‘); readln(a);Write (‘b=‘); readln(b);C:=‘*’;Case c of‘+’ : y:=a+b;‘-’ : y:=a-b;‘*’ : y:=a*b;‘/’ : y:=a/b;else y:=0;end;readln,:End.
C=‘-’
y:=a/b
C=‘+’ y:=a+b
y:=a-b
C=‘*’
True
True
True
False
False
False
C=‘/’
y:=a*b
True
ConcluzieConcluzie
Instrucţiunea Case este o instrucţiune de Instrucţiunea Case este o instrucţiune de ramificare multiplă care conţine o ramificare multiplă care conţine o expresie numită expresie numită selector selector şi o listă de şi o listă de instrucţiuni. instrucţiuni.
Se utilizează atunci cînd în algoritm Se utilizează atunci cînd în algoritm trebuie prevăzute mai mult de două trebuie prevăzute mai mult de două alternativealternative
Vă Doresc Vă Doresc Succes!!!Succes!!!