8. astea (2024/03/13) laborategi/mintegian egindakoa
- Zerrenda pasatu dugu, deitutakoen artean 7+1 etorri dira (zehaztapen gehiago eGela zerbitzuan)
- Erabiltzailearen datu-motak izenburuko artikulua gogoratu dugu
- Aurreko astean bidalitako autoebaluazio-ariketa honetatik abiatuta, Autoebaluazioa: menu bat azpiprogramaz ariketaren antzekoa programatu dugu eta menu bat nola egiten den ikasi dugu (garrantzitsua izango da hurrengo kontrolerako)
Program MenuaAzpiprogramaz;
uses
crt;
{ Menuaren aukera erakutsi eta hautapena aukeratu }
function fncMenua: char;
var
cHautapena: char;
begin
writeln('=============MENUA=============');
writeln(' A) alfabeto zatia diagonalean');
writeln(' B) bi zenbakietatik txikiena');
writeln;
writeln(' I) irten');
writeln('===============================');
repeat
write(' Zure aukera: ');
cHautapena := readkey;
writeln(cHautapena);
cHautapena := upcase(cHautapena);
until (cHautapena = 'A') or (cHautapena = 'B') or (cHautapena = 'I');
fncMenua := cHautapena;
end;
{ A-tik hasita alfabetoa diagonalki pantailaratu }
procedure DiagonalaPantailanIdatzi(cLetra: char);
var
cKont: char;
iNon: integer;
begin
writeln;
iNon := 5;
for cKont:='A' to cLetra do
begin
writeln(cKont:iNon);
iNon := iNon + 2;
end;
end;
{ Bi zenbakiren artean balio txikiena itzuli }
function fniBiZenbakitikTxikiena(iZbk_1, iZbk_2: integer): integer;
begin
if iZbk_1 < iZbk_2 then
fniBiZenbakitikTxikiena := iZbk_1
else
fniBiZenbakitikTxikiena := iZbk_2;
end;
{--------------------------Programa Nagusia--------------------------}
var
cAukera, cLetra: char;
iZbk_1, iZbk_2: integer;
begin
repeat
clrscr;
cAukera := fncMenua;
writeln;
case cAukera of
'A': begin
repeat
write('Azken letra eman: ');
cLetra := readkey;
writeln(cLetra);
cLetra := upcase(cLetra);
until (cLetra >= 'A') and (cLetra <= 'Z');
DiagonalaPantailanIdatzi(cLetra);
end;
'B': begin
write(' Lehen zenbakia eman: ');
readln(iZbk_1);
repeat
write('Bigarren zenbakia eman: ');
readln(iZbk_2);
until iZbk_1 <> iZbk_2;
writeln;
writeln('Zenbakirik txikiena: ', fniBiZenbakitikTxikiena(iZbk_1, iZbk_2));
end;
'I': begin
writeln('Agur');
end;
end; (* case-rena *)
writeln;
write('RETURN sakatu aurrera egiteko...');
readln;
until cAukera = 'I';
end.
- Karaktere-kate baten 0 posizioan zer gordetzen den ikusi dugu 8. astea | zero posizioa ariketaren bitartez
- Praktika saio honetan karaktere-kateen adibideak egin ditugu, ariketa hauek egiteko aukera izan dugu:
- 8. astea | akronimoak ariketa bukatu dugu
- 8. astea | esaldiaren hitzak ariketa bukatzeko ez dugu aukerarik izan, aurrekoaren antzekoa da. Non hitza pantailaratu ahal izateko, lehendik honela identifikatu behar dugun:
sHitza := copy(sEsaldia, 1, iZuriuneaNon-1);
- 8. astea | kateen adibideak ariketa hauek egiteko denborarik ez dugu izan, etxean ondo ulertu eta ikasi:
MaiuskuluakMinuskulak.pasprograma (karaktereak banan-banan prozesatu)KateaPantailanDiagonalki.pasprograma (karaktereak banan-banan prozesatu)BiNotenBatezbestekoa.pasprograma (kateen kopurua beti bi)BiNotenBatezbestekoAritmetikoa.pasprograma (kateen kopurua beti bi)HainbatNotenBatezbestekoa.pasprograma (kateen kopurua aldakorra)HainbatNotenBatezbestekoa_DatuakKontrolatuz.pasprograma
iruzkinik ez:
Argitaratu iruzkina
Iruzkinen bat idazteko Google-ko kontu bat behar duzu. Iruzkin guztien moderazio-ardura blogeko administratzaileari dagokio.