Ikasgelako ikasle kopuru maximoa 80 izanik, bildu array batean ikasleen informazio hau:
Hona hemen balizko soluzio bat:
program ErregistroenArrayBat ;
const
BEHEMUGA = 1 ;
GOIMUGA = 25 ;
type
tsKate39 = string[39] ;
tsKate99 = string[99] ;
trdIkasle = record
sIzena : tsKate39 ;
rNota : real ;
sHelbidea: tsKate99 ;
byAdina : byte ;
end ;
tardGela = array[BEHEMUGA..GOIMUGA] of trdIkasle ;
procedure IkasleBatHartu(var rdIkasle: trdIkasle) ;
begin
write('Ikaslearen izena eman: ':30) ;
readln(rdIkasle.sIzena) ;
write('Ikaslearen nota eman: ':30) ;
readln(rdIkasle.rNota) ;
write('Ikaslearen helbidea eman: ':30) ;
readln(rdIkasle.sHelbidea) ;
write('Ikaslearen adina eman: ':30) ;
readln(rdIkasle.byAdina) ;
end ;
procedure ArrayaBete(var ardGela: tardGela; var iLuzera: integer) ;
var
k: integer ;
begin
repeat
write('Zenbat ikasle dira? ') ;
readln(iLuzera) ;
until (iLuzera >= BEHEMUGA) and (iLuzera <= GOIMUGA) ;
for k:=BEHEMUGA to iLuzera do
begin
writeln(k, '. ikaslearen datuak hartzen.') ;
IkasleBatHartu(ardGela[k]) ;
writeln ;
end ;
end ;
procedure IkasleBatErakutsi(const rdIkasle: trdIkasle) ;
begin
writeln('Ikaslearen izena: ':25, rdIkasle.sIzena) ;
writeln('Ikaslearen nota: ':25, rdIkasle.rNota:0:2) ;
writeln('Ikaslearen helbidea: ':25, rdIkasle.sHelbidea) ;
writeln('Ikaslearen adina: ':25, rdIkasle.byAdina) ;
end ;
procedure ArrayaIkusi(const ardGela: tardGela; iLuzera: integer) ;
var
k: integer ;
begin
for k:=BEHEMUGA to iLuzera do
begin
IkasleBatErakutsi(ardGela[k]) ;
writeln ;
end ;
end ;
{ ------------------- PROGRAMA NAGUSIA ------------------- }
var
ardGela: tardGela ;
iLuzera: integer ;
begin
writeln('//////////////////////////////////////') ;
writeln ;
writeln('Gelako datuak jaso.') ;
ArrayaBete(ardGela, iLuzera) ;
writeln ;
writeln('Gelako datuak ikusi.') ;
ArrayaIkusi(ardGela, iLuzera) ;
writeln ;
writeln('Lehen ikaslearen adina ', ardGela[BEHEMUGA].byAdina, ' da.') ;
writeln('Azken ikaslearen izena ', ardGela[iLuzera].sizena, ' da.') ;
writeln ;
writeln('//////////////////////////////////////') ;
readln ;
end.
iruzkinik ez:
Argitaratu iruzkina