2023(e)ko apirilaren 1(a), larunbata

11. astea | erregistroen bi bektore nahastu bektore bakar batean





 

11. astea | izenen eta noten taula





asTaula hiru dimentsiotako taula bat da, kateak gorde ditzakeen asTaula arrayak 40 errenkada eta 3 zutabe ditu. Errenkada bakoitza ikasle bati dagokio: Errenkadaren lehen zutabean izena biltegitzen da, bigarrenean abizena eta hirugarren zutabean ikaslearen nota gordetzen da (hirurak string[19] datu-motakoak). Teoriako blogean gehiago...


 

11. astea | elkar trukatu

Gehienez 25 elementu gordetzeko gai den array batekin lan egingo dugu. Arrayaren elementuak zenbaki errealak izango dira.









Datua den zenbaki erreal bat arrayean gorde aurretik, frogatu beharra dago errepikaturik ez dela egongo. Horretarako, teoriako blogearen 10. astea | bilaketa sekuentzialaren aplikazio bat programara jo eta bertako BilaketaLineala izeneko funtzioa erabili gure behar izanetara egokituz, hots, erabili beharko dituen moldapenak eginez.





 

11. astea | zenbakiak kendu

Gehienez 15 elementu gordetzeko gai diren arrayekin lan egingo dugu. Arrayen elementuak zenbaki osoak izango dira.









Programaren balizko exekuzio bat jarraian erakusten da:







 

11. astea | hiru array paralelo

Gehienez 20 elementu gordetzeko gai diren arrayekin lan egingo dugu. Arrayen elementuak zenbaki osoak izango dira.







 

11. ASTEA | etxerako lana

 11. astea (2023/04/04) etxean egitekoa













  • Hauxe da HiruArrayParalelo ariketa non randomize prozedura estandarra programa nagusian kokatu dugun, ArrayaBete prozedura birritan deitu beharra dagoelako. ArrayaBete prozedurak random funtzio estandarrari dei egiten dio for-to-do barruan, eta normalean randomize prozedura estandarra for-to-do horren aurrean kokatzen da



{------------------------------------------------------------------------------
randomize non?
Normalean prozeduran doa, konkretuki for-to-do aurrean (ikusi gaurko beste
bi ariketak). Baina kasu honetan hobe programa nagusian.
-------------------------------------------------------------------------------}
program HiruArrayParalelo ;
uses
crt;
const
BEHEMUGA = 1;
GOIMUGA = 10;
type
taiZerrenda = array[BEHEMUGA..GOIMUGA] of integer;


procedure ArrayaBete(var aiZerrenda: taiZerrenda);
var
k: integer;
begin
//randomize;
for k:=BEHEMUGA to GOIMUGA do
begin
aiZerrenda[k] := random(10); (* 0 eta 9 arteko balio bat *)
end;
end;


procedure ArrayaErakutsi(const aiZerrenda: taiZerrenda);
var
k: integer;
begin
for k:=BEHEMUGA to GOIMUGA do
begin
writeln(k:2, '. elementua = ',aiZerrenda[k]:2);
end;
end;


procedure EmaitzaLortu(const aiZerrenda1: taiZerrenda;
const aiZerrenda2: taiZerrenda;
var aiZerrenda3: taiZerrenda);
var
k: integer;
begin
for k:=BEHEMUGA to GOIMUGA do
begin
if aiZerrenda1[k] > aiZerrenda2[k] then
aiZerrenda3[k] := 1;
if aiZerrenda1[k] = aiZerrenda2[k] then
aiZerrenda3[k] := 0;
if aiZerrenda1[k] < aiZerrenda2[k] then
aiZerrenda3[k] := -1;
end;
end;


(* ---------------------------------------------- *)
var
aiX, aiY, aiZ: taiZerrenda;
BEGIN
clrscr;

randomize;

ArrayaBete(aiX);
writeln('X bektorea:');
ArrayaErakutsi(aiX);
writeln;

ArrayaBete(aiY);
writeln('Y bektorea:');
ArrayaErakutsi(aiY);
writeln;

EmaitzaLortu(aiX, aiY, aiZ);
writeln('Z bektorea:');
ArrayaErakutsi(aiZ);
writeln ;

WriteLn ;
WriteLn ('=======================') ;
WriteLn ('RETURN sakatu amaitzeko') ;
Write ('=======================') ;
ReadLn ;
end.







Proiektua dela eta, hirukoteak osoatu dituzue eta orain hau egizue:



  • Azterketa bat, eredu bat enuntziatua astiro irakurri eta azpimarratu ulertzen ez dituzuen hitzak (adibidez fitxategi)

  • Proiektuan eskatzen dena artikula astiro irakurri eta ondokoak egin:


    1. Proiektua kartepa eta Datuak karpeta sortu, zer gordetzen da bakoitzean?

    2. datu_mota.pas unitatea ireki eta bere INTERFACE atala irakurri, ikusi eta identifikatu erabiliko diren datu-motak

    3. biblioteka.pas unitatea ireki eta bere INTERFACE atala irakurri, ikusi eta identifikatu erabiliko diren azpiprogramak

    4. erabiltzaile.pas unitatea ireki eta bere INTERFACE atala irakurri, ikusi eta identifikatu erabiliko diren azpiprogramak

    5. top10.pas unitatea ireki eta bere INTERFACE atala irakurri, ikusi eta identifikatu erabiliko diren azpiprogramak

    6. LiburutegiProiektua.pas bezero-programa ireki, aztertu eta konpilatu LiburutegiProiektua.exe lortzeko


  • LiburutegiProiektua.exe programa exekutatu, ondokoa ikusiz:


    1. Menuaren 1, 2, 3, 4 eta 5 aukerekin LIBURUAK.DAT eta ERRESERBAK.DAT fitxategiak erabiltzen dira

    2. Menuaren 6 eta 7 aukerekin BEZEROAK.DAT fitxategia erabiltzen da

    3. Menuaren 8 eta 9 aukerekin TOP10.DAT fitxategia erabiltzen da (eta beharbada zuek sortutako beste fitxategiren bat)







 

11. ASTEA | laborategi/mintegian egin dena

 11. astea (2023/04/04) laborategi/mintegian egindakoa





Zerrenda pasatzeko, eGela zerbitzuko 11. saioan egindako programak bidalketaren bitartez. Lanik bidali ez dutenak:

  • Eñaut Calvo Gaztañaga

  • Gaizka Martin Zorrozua

  • Maider Nogueira Alonso

  • Antxon Zubiaurre Peñalba




Gaurko saioaren helburua hirukoitza da:



  1. Proiektuari buruz gain-gainetik hitz egitea (lantaldeak osatu

  2. Arrayekin lan egitea 

  3. Erregistroen arrayekin lan egitea   






1. Proiektua garatzeko taldekideak








2. Arrayekin lanean, arrayaren elementuak datu-mota soilak (real, integer, string, char,...) 







3. Erregistroen arrayekin lanean




 

15. ASTEA | laborategi/mintegian egin dena

15. astea (2023/05/09) laborategi/mintegian egindakoa 25 ikasleetatik 17 ikasleek kontrol-ariketaren bidalketa egin dute Hirugarren ko...