INFORMATIKAREN OINARRIAK Gardenki eta ariketa bilduma 02/03 ikasturtea
AURKIBIDEA 1. gaia. Sarrera 1.1. Definizioak...3 1.2. Konputagailu osagaiak...3 1.2.1. Hardware. Konputagailuaren egitura...3 1.2.2. Softwarea...6 Ariketak...7 2. gaia. Programazioa Turbo Pascalez 2.1. Programazioaren sarrera. 2.1.1. Software-geruzak...10 2.1.2. Makina lengoaiatik goimailako lengoaiara...10 2.1.3. Problemak, algoritmoak eta programak...10 Ariketak...12 2.2. Oinarrizko datu-motak 2.2.1. Turbo Pascal konpiladorea...13 2.2.2. Informazioaren errepresentazioa...13 2.2.3. Oinarrizko aginduak...16 Ariketak....18 2.3. Baldintzazko kontrol-egiturak 2.3.1. if-then-else sententzia...20 2.3.2. case sententzia...21 Ariketak....22 2.4. Kontrol-egitura errepikakorrak 2.4.1. For kontrol-egitura...23 2.4.2. While kontrol-egitura...23 2.4.3. repeat kontrol-egitura...24 Ariketak...25 2.5. Datu-mota egituratuak. Taulak 2.5.1. Erazagupena eta erabilpena...28 2.5.2. Bektoreak...28 2.5.3. Matrizeak...29 Ariketak...30 2
EUITI-02/03 1.Gaia:Sarrera 3
EUITI-02/03 1.Gaia:Sarrera 4
EUITI-02/03 1.Gaia:Sarrera 5
EUITI-02/03 1.Gaia:Sarrera 6
1.Gaia: Sarrera. Ariketak 1. gaia. Ariketak 1.- Eskema bat egin hardwarearen oinarrizko osagaiekin. 2. Esan memoria neurtzeko erabiltzen diren bi neurri, bere baliokidetasuna byte-ekin adieraziz. 3. Esan zer den RAM memoria eta zertarako erabiltzen den. 4. Ordenadorearen gobernua duen unitatea hau da: Unitate aritmetiko-logikoa Memoria-unitatea Kontrol-unitatea 5. 2 Megabyte-ko memoria nagusia egonez gero, zenbat bit beharko lirateke memoriako edozein byte adierazteko? 8 21 28 6. Esan zer den prozesadorea eta zertarako erabiltzen den. 7. Esan zer den cache memoria eta bere erabilgarritasuna. 8. Zer da sistema eragilea? 9.- Sistema eragilea ordenadorera konektatuta dauden elementu desberdinen multzoa da. ordenadorearen kontrola duen programa-multzoa da. ekipoarekin lana egiteko erabiltzen den teklatua da. ordenadoreak instalatuta daukan memoriari esaten zaio. 10.- Sistema eragile batetik aplikazio bat baino gehiago exekutatu ahal izateko aldi berean koloretako pantaila behar da. nahikoa da behar den memoria adina edukitzea. sistema eragilearen bertsioak hala onartu behar du. sagua eduki behar da. 11. Zer da fitxategi bat? 12.- Zertarako erabiltzen dira karpetak MS/DOS sistema eragilean eta karpetak Windowsen? 13. Ordenadorearen diskoan karpeta bakarra balego, zein izango litzateke problemarik handiena? 14. Zein da ordenadoreetan erabiltzen den kodetze-sistema? 7
1.Gaia: Sarrera. Ariketak Bitarra Hamartarra Hamaseitarra 15. Sistema hamartarreko zein zenbaki da 00011011 zenbaki bitarra? 26 28 27 16. Sistema bitarreko zein zenbaki da 24 zenbaki hamartarra? 00011000 11100111 11101000 17. Sistema hamartarreko zein zenbaki da 00010011 zenbaki bitarra? 20 19 27 18. Sistema bitarreko zein zenbaki da 30 zenbaki hamartarra? 00011110 11101110 00011010 19. Zer egingo luke DEL *a*e*i.exe aginduak yabecin.exe izeneko fitxategiarekin? Ez litzateke ezer gertatuko Ezabatu egingo litzateke Fitxategi hori ez, baina.exe fitxategi guztiak desagertuko lirateke 20. Zer esan nahi du DEL *.* aginduak? Ez luke ezer egingo, *.* izena ezin delako fitxategi baten izena izan Uneko karpetako fitxategi guztiak ezabatuko lituzke A: unitateko edozein fitxategi ezabatuko luke 21. Zer esan nahi du DIR datuak.* aginduak? Edozein luzapeneko fitxategiak atera datuak izeneko eta edozein luzapeneko fitxategiak atera datuak izeneko eta luzapenik gabeko fitxategiak atera 22. Zer esan nahi du COPY *.* A: aginduak? Edozein izen eta luzapeneko fitxategiak A: unitatean kopiatu Edozein izen eta luzapenik gabeko fitxategiak A: unitatean kopiatu A: unitateko edozein fitxategi kokatuta dagoen karpetan kopiatu 22. MSDOS sistemaren COPY agindu bat egiteko, nola lortuko zenuke Windows-etik? Excel kalkulu-orria irekiz Administrador de Programas leihoa irekiz Administrador de Archivos leihoa irekiz 24. Pascal lengoaiako programa bat exekutatzeko: Edozein makinatan exekuta daiteke zuzenean Makina batean konpiladorea beharko genuke 25. Zein lengoaiatan dago programa exekutagarria? 8
1.Gaia: Sarrera. Ariketak 26. Zer da goi-mailako lengoaia? Zertarako erabiltzen dira? 27. pp.exe fitxategia emanda, zein izango litzateke bere edukia? Pascaleko programa gordetzeko fitxategia Programa exekutagarria gordetzeko Ezin dugu jakin 28. Lotu fitxategi bakoitza dagokion edukiarekin: prog.pas prog.exe datuak.dat datuak.xls Datuen fitxategia Pascal programa baten fitxategia Programa exekutagarria duen fitxategia Excel-eko orri bat duen fitxategia 29. Zer da konpiladorea? 30. TurboPascal ingurunean kokatuta, zertarako balio du Run aginduak? Pascal programa baten errore sintaktikoak bilatzeko Konpilatuta dagoen programa (aurretik Compile eginda) exekutatzeko Pascal programa bat konpilatu eta exekutatzeko 31. Zer da TurboPascal aplikazioa? Errore sintaktikoak aurkitzeko tresna Konpiladorea Prozesadorea 32.- Zein eginkizun betetzen du Windowsen fitxategi-administratzaileak? inprimagailuaren informazioa gestionatzen du diskoko fitxategiak antolatzen ditu pantaila babesten du. birus informatikoak saihesten ditu 9
2.Gaia:Programazioa.Sarrera 10
2.Gaia:Programazioa.Sarrera 11
EUITI- 02/03 2.Gaia: Programazio.Ariketak 2.1 Gaia: Ariketak. Oinarrizko algoritmoak (l) 1. Osoko zenbaki positibo bat irakurri eta bere zatitzaile guztiak idatzi. 2. Osoko zenbaki bat irakurri eta idatzi bere balio absolutua. 3. Osoko zenbaki bi irakurri eta idatzi ordenatuta (lehenengoz handiena eta txikiena gero) 4. Gauerdiaz gero pasatu diren segundoak irakurri eta 24 orduko adierazpidera pasa. Adibidez: 4005 irakurrita 1:6:45 idatzi behar da, gauerdiaz gero 4005 segundo pasa direnean ordu bat, 6 minutu eta 45 segundo pasa baitira. 5. Ondoko irudiaren bolumena idatzi R erradioaren neurria eta H altuera (biak zenbaki errealak) irakurri ondoren. H 6. Puntu karaktereaz amaitzen den karaktere-sekuentzia bat emanda 'A' letra zenbat aldiz agertzen den konta ezazu. 7. Puntu karaktereaz amaitzen den karaktere-sekuentzia bat emanda karaktere guzti horien artean zenbat bokal agertzen diren konta ezazu. 8. Puntu karaktereaz amaitzen den karaktere-sekuentzia bat emanda karaktere guzti horien artean bokalak ez direnak konta itzazu (puntua ez kontatu). 9. Puntu karaktereaz amaitzen den karaktere-sekuentzia bat emanda karaktere guzti horien artean zenbat bokal, zenbat karaktere bokal ez direnak eta denetara zenbat karaktere agertzen diren konta ezazu. R 12
2.Gaia:Programazioa.Datu-motak 13
2.Gaia:Programazioa.Datu-motak 14
2.Gaia:Programazioa.Datu-motak 15
2.Gaia:Programazioa.Datu-motak 16
2.Gaia:Programazioa.Datu-motak 17
EUITI- 02/03 2.Gaia: Programazioa. Datu-motakAriketak 2.2.gaia: Ariketak MOTAK, ERAZAGUPENAK, ESLEIPENAK, S/I 1. Ondoko adierazpenen emaitzak kalkulatu: (a) 2 + 6 * 3 + 4 (f) sqr(2) div 3 (b) (2 + 6) * 3 + 4 (g) 3-20 div 4-3 * 2 (c) (2 + 6) * (3 + 4) (h) 4 * sqr (6) - sqr(3) div 2 (d) 20 mod 3 div 2 (i) 30-2*4 div 6 mod 3 *8 (e) 20 mod 3 / 3 2. Ondorengo erazagupenetan akatsak non dauden adierazi eta azaldu: var a,b: integer; B,c: boolean; var 33h2: real; a,b: integer; const m: 3.4; var a,b: integer, c: char; 3. Ondorengo definizioa emanik: const v1=120; v2=310; v3=0; var d1,d2: integer; jarraiko esleipenen artetik zein dago gaizki eta zergatik? v1+v2 :=d1; d2:= v2 div v1; v3:= v1+v2; d1:= v2 DIV v3; d1:= v3+v2; 4. A eta B aldagiak mota osokoa eta mota errealekoa izanik hurrenez hurren; zein agindu daude gaizki? readln(a/2); writeln(a); realdln( b ); writeln( A ); 5. A=6 eta B=3 izanik, zein da ondorengo aginduen ondorioa? Write( A =, A); Writeln ( :4, B =, B); Writeln(A div B); Writeln(B-A); 6. Adierazi pauso bakoitzean A, B eta Cren balioak: a) Program lehenengoa; Uses wincrt; Const x=5; Var A, B, C:Integer; Begin B:=1; C:=X+B; A:=X+4; A:=C; B:=C; 18
EUITI- 02/03 2.Gaia: Programazioa. Datu-motakAriketak End. A:=A+B+C; C:=C*A; Writeln(A, B, C); b) Program bigarrena; uses wincrt; const N=6; var A,B,C:integer; begin A:=4; B:=A*N; C:=A mod N; A:=C; B:=A+C; Writeln(A,B,C); End. c) Program hirugarrena; Uses wincrt; Var X,Y:Integer; Z:Real; Begin X:=10; Y:=X+10; Z:=X; Y:= X div 5; Writeln( X =, X:4); Writeln( Y =, Y:4); Writeln( Z =, Z:5:2); End. 7. X eta Y aldagaiak emanda, bere balioak trukatzeko ekintzak idatzi: Hasieran: X=10 eta Y=5 Bukaeran: X=5 eta Y=10 8. Idatzi programa bat graduak radianetara pasatuko dituena. Radianak= Graduak *(Pi/180) 9. Segundutan emandako datu bat irakurri eta ordu,minutu,segundutara pasako duen programa idatzi. Adibidez: Sarrera: 5000 segundu Irteera: 1 ordu 23 minutu 20 segundu 10. Programa bat idatzi karratu baten azalera eta perimetroa kalkulatzeko bai karratu batentzat eta baita hiruki zuzen batentzako ere. Sarrera: Hiruki(oina eta altuera) eta laukiaren aldeak 19
2.Gaia:Programazioa.Baldintza 20
2.Gaia:Programazioa.Baldintza 21
2.Gaia:Programazioa.Baldintza. Ariketak 2.3.gaia: Ariketak: Baldintzazko sententzia. 1. Bi aldagai osoko emanda, balio handiena lortzeko aginduak idatzi. 2. I, J, K eta L aldagai osokoen ondoko balioak emanda: I:= 6; J:= 7; K:= 11; L:= 11; esan zer idatziko duen ondoko programak: if I <J then if K <> L then Write( ABC ) else Write( DEF ); if I >= J then Write( GHI ) else Write( JKL ); 3. Ezkerreko zutabeko adierazpen bakoitza dagokion eskuineko adierazpenarekin lotu: a. (X < Y) and (Y < Z) 1. not (X <> Y) and (Y = Z) b. (X > Y) and (Y >= Z) 2. not ((X >= Y) or (Y > Z)) c. (X <> Y) or (Y = Z) 3. (Y > Z) or (Y = Z) or (X = Y) d. (X = Y) or (Y >= Z) 4. not (X >= Y) and not (Y >= Z) e. (X = Y) and (Y = Z) 5. not ((X = Y) and (Y <> Z)) 4. Nota bati (0-10 tarteko balio osokoa) dagokion nota idatzi letraz (ez-gai, gainditua, ongi edo bikain). 5. X eta Y bi aldagai osoko emanda, beren balioak goranzko ordenan jarri (Xek txikiena eta Yk handiena) 6. Hiru aldagai osoko emanda, beren balioak goranzko ordenan jarri. 7. 10. Ondoko programa zatia hobetu: if Puntuak > 70 then write( Bikain ); if Puntuak < 30 then write( Gaizki ); if (Puntuak >= 70) and (Puntuak <= 30) then write( Normala ); 8. Programa bat egin, egun bat emanik 3 osokoen bidez (urtea, hila, eguna), hurrengo egunaren data lortuko duena. 9. 5 digituko zenbakia emanda, esan kapikua den. 22
2.Gaia:Programazioa.Begizta 23
2.Gaia:Programazioa.Begizta 24
2.Gaia:Programazioa.Begizta. Ariketak 2.4.gaia: Ariketak: Sententzia errepikakorrak. 10. Teklatu bidez irakurritako zenbakiaren faktoriala kalkulatuko duen programa idatzi: for egitura erabiliz while egitura erabiliz repeat-until egitura erabiliz 11. Teklatu bidez sartu diren noten media aritmetikoa kalkulatu nahi da programa baten bidez. Programa interaktiboa izango da eta honelako itxura azalduko lezake: Egikaritzapena: Zenbat nota sartuko dituzu? 7 1 nota: 7.50 2 nota: 6.40... 7 nota: 9.75 Aurreko noten media aritmetikoa: 6.80 12. Honako irteera ekoiztuko duen programa idatzi: ZYXWVTSRQPONMLKJIHGFEDCBA YXWVTSRQPONMLKJIHGFEDCBA XWVTSRQPONMLKJIHGFEDCBA WVTSRQPONMLKJIHGFEDCBA VTSRQPONMLKJIHGFEDCBA TSRQPONMLKJIHGFEDCBA SRQPONMLKJIHGFEDCBA RQPONMLKJIHGFEDCBA QPONMLKJIHGFEDCBA PONMLKJIHGFEDCBA ONMLKJIHGFEDCBA NMLKJIHGFEDCBA MLKJIHGFEDCBA LKJIHGFEDCBA KJIHGFEDCBA JIHGFEDCBA IHGFEDCBA HGFEDCBA GFEDCBA FEDCBA EDCBA DCBA CBA BA A 13. Ondorengo serieren lehenengo 10 terminoen batura kalkulatu: 1/2 + 2/22 + 3/23 + 4/24 +... + n/2n 25
2.Gaia:Programazioa.Begizta. Ariketak 14. Teklatu bidez emaniko zenbaki segida bateko baliorik handiena, txikiena eta N zenbaki horien media kalkulatuko duen algoritmoa idatzi eta ondoren soluzioa Turbo Pascalez eman. N kopurua, programaren hasieran eskatuko da eta zenbakiak erabiltzaileak sakatuko ditu. 15. Osoko zenbaki positibo bat irakurri eta bere zatitzaile guztiak idatzi. 16. Puntu karaktereaz amaitzen den karaktere-sekuentzia bat emanda 'A' letra zenbat aldiz agertzen den konta ezazu. 17. Puntu karaktereaz amaitzen den karaktere-sekuentzia bat emanda karaktere guzti horien artean zenbat bokal agertzen diren konta ezazu. 18. Puntu karaktereaz amaitzen den karaktere-sekuentzia bat emanda karaktere guzti horien artean bokalak ez direnak konta itzazu (puntua ez kontatu). 19. Puntu karaktereaz amaitzen den karaktere-sekuentzia bat emanda karaktere guzti horien artean zenbat bokal, zenbat karaktere bokal ez direnak eta denetara zenbat karaktere agertzen diren konta ezazu. 20. Zero zenbakiaz amaitzen den osoko zenbaki sekuentzia bat emanda kalkula ezazu sekuentziako zenbakien batez besteko aritmetikoa (zeroa kontatu gabe). 21. Zero zenbakiaz amaitzen den osoko zenbaki sekuentzia bat emanda kalkula ezazu sekuentziako zenbaki positiboen batez besteko aritmetikoa. 22. Zero zenbakiaz amaitzen den osoko zenbaki sekuentzia ez ordenatu batean zenbaki bat bilatzeko algoritmoa espezifikatu eta idatzi. Zenbakia sekuentzian badago sekuentzia barruko posizioa idatzi beharko da eta bestela, ez dagoenean, zero idatzi beharko da. 23. Aurreko ariketan bezala baina kasu honetan txikienetik handienera ordenatuta dagoen sekuentzia batean. 24. Zero zenbakiaz amaitzen den osoko zenbaki sekuentzia batean zenbaki maximoa bilatzeko algoritmoa espezifikatu eta idatzi. 25. Zero zenbakiaz amaitzen den osoko zenbaki sekuentzia batean zenbaki maximoaren posizioa bilatzeko algoritmoa espezifikatu eta idatzi. 26. Zero zenbakiaz amaitzen den osoko zenbaki sekuentzia batean zenbaki minimoa bilatzeko algoritmoa espezifikatu eta idatzi. 27. Zero zenbakiaz amaitzen den osoko zenbaki sekuentzia batean zenbaki minimoaren posizioa bilatzeko algoritmoa espezifikatu eta idatzi. 28. Puntu karaktereaz amaitzen den karaktere-sekuentzia batean kontatu zenbat aldiz agertzen den 'A' karakterea 'T' karaktere baten atzetik. 29. N osoko zenbaki bat emanda, ea zenbaki lehena den aztertuko duen algoritmoa espezifikatu eta idatzi. 30. Aurreko ariketako algoritmoa erabiliz, M osokoa baino txikiagoak diren zenbaki lehenak idatziko dituen algoritmoa espezifikatu eta idatzi. 31. Idatz ezazu X zenbaki erreal positiboaren erro karratua kalkulatzen duen programa. Erabil ezazu Newtonen metodoa: E, X-ren estimatutako balioa bada, orduan E eta X/E-ren batezbestekoa estimazio hobea izango da. Eman hasieran E-ri balio positibo bat, ondoren aurreko formula erabiliz E estimazio hobeago 26
2.Gaia:Programazioa.Begizta. Ariketak batetaz ordezkatu behin eta berriz, E-ren balioa X-ren baliora nahikoa hurbiltzen denean geldituz. 32. Idatz ezazu zenbaki bat irakurri eta bere biderkatzeko taula (1etik 10era) idatziko duen programa. 33. Idatz ezazu N zenbaki bat irakurri eta 1etik Nrainoko osokoen karratua eta kuboa idazteko programa. 34. Idatz ezazu N zenbaki bat irakurri eta Fibonacciren Ngarren zenbakia lortuko duen programa. Fibonacciren sekuentzia hau da: 0 1 1 2 3 5 8 13 21 34 55 89..., hau da, zenaki bat aurreko bien batuketaren emaitza da. 27
2.Gaia:Programazioa.Taulak 28
2.Gaia:Programazioa.Taulak 29
EUITI 01/02 2.Gaia:Programazioa.Taulak 2.5.gaia: Ariketak. Taulak, ARRAY datu-mota. 35. N elementu duen osokoen bektore bat emanda, bektoreko zenbakien batez bestekoa kalkulatzen duen programa egin. 36. N elementu duen osokoen bektore ez-ordenatu batean zenbaki bat bilatzeko programa egin. Zenbakia bektorean badago, lehenengo agerpenaren posizioa itzuli beharko da eta bestela, ez dagoenean, zero itzuli beharko da. 37. N elementu duen osokoen bektore ordenatu batean zenbaki bat bilatzeko programa egin. Zenbakia bektorean badago, posizioa itzuli beharko da eta bestela, ez dagoenean, zer posiziotan kokatu beharko genukeen eman. 38. N elementuz osatutako osokoen bektore bat emanda, osagai guztiak posizio bat eskuinera mugitzen dituen programa egin. 39. Zero zenbakiaz bukatzen den osokoen sekuentzia bat emanda, zenbakiak osokoen bektore batean ordenatuta sartzen dituen programa egin. 40. Aurreko ariketan bezala baina kasu honetan txikienetik handienera ordenatuta dagoen N osagai duen osokoen bektore batean. 41. N elementu duen osokoen bektore batean zenbaki maximoa eta bere posizioa bilatzeko programa egin. 42. N elementu duen osokoen bektore batean zenbaki minimoa eta bere posizioa bilatzeko programa idatzi. 43. N elementu duen osokoen bektore batean zenbaki minimoaren posizioa bilatzeko programa egin. 44. N elementu duen daukan karaktereen bektore bat emanda 'A' letra zenbat aldiz agertzen den konta ezazu. 45. N elementu duen karaktereen bektore bat emanda karaktere horien guztien artean zenbat bokal agertzen diren konta ezazu. 46. N elementu duen karaktereen bektore bat emanda karaktere horien guztien artean bokalak ez direnak konta itzazu. 47. N elementu duen karaktereen bektore batean kontatu zenbat aldiz agertzen den 'A' karakterea 'T' karaktere baten atzetik. 48. N elementu duen osokoen bektore bat emanda, zenbaki lehenen kopurua kalkulatuko duen programa egin. 49. N elementu duen osokoen bektore bat emanda, zenbaki perfektuen kopurua kalkulatuko duen programa egin. Oharra: N osokoari perfektu esaten zaio bere zatitzaileen batura N denean. 50. N elementu duen osokoen bektore bat emanda, bektoreko zenbaki perfektuak osokoen bektore batean itzuliko duen programa egin. 30
EUITI 01/02 2.Gaia:Programazioa.Taulak 51. N elementu duen osokoen bektore bat emanda, sekuentziako bikoitiak diren zenbakiak itzuliko dituen programa egin. 52. N elementu duen osokoen bektore bat emanda, posizio bakoitietan dauden elementuak itzuliko dituen programa egin 53. N elementu duen osokoen bektore bat emanda, kapikuen kopurua kalkulatzen duen programa egin. 54. Bi matrize emanda, egin programak beraien batura eta biderkadura kalkulatzeko. 55. 20 lerro eta 25 zutabeko matrizea emanda, egin programa bat beste matrize bat lortzeko: lerro bakoitzeko elementu guztiak lerro horretako handienarekin zatituz lortzen den matrizea. 56. Futbol-zelai bateko 6 txartel-leihatilen sarrerak dauzkagu, 4 igandetan. Sarreran hiru datu agertuko dira lerro bakoitzean: leihatila-zenbakia, astea (1etik 4ra tartean), eta egun horretako txartel-kopurua (datuak ez daude ordenatuta, hau da, agertu litezke 3. leihatilaren datuak 1. leihatilarenak baino lehenago, eta gerta liteke igande batean leihatila guztiak ez irekitzea ere). Egin programa bat ondoko datuak lortzeko: a. Lehiatira bakoitzean saldutako txartel-kopurua (4 asteetan). b. Igande bakoitzean saldutako txartel-kopurua. c. Futbol-zelai osoko txartel-kopurua 4 asteetan. d. Txartel-kopuru gehien saldu zen igandea. e. Guztira txartel gehien saldu duen leihatila. 57. 7 egunetako tenperatura maximo eta minimoak ezagututa (taula batean daude), egin programa bat ondoko emaitzak lortzeko: a. asteko batezbesteko tenperatura b. asteko tenperatura minimoa eta maximoa c. egun bakoitzeko batezbesteko tenperatura d. egun bakoitzeko eta asteko batezbesteko tenperaturaren arteko diferentzia. Irteera ondoko formatuan azaldu: Asteko maximoa: 40 Asteko minimoa: 10 Asteko batezbestekoa: 24,14 Eguna Max. Min. BatezbestekoaDiferentzia asteko batezbestekoarekin 1 30 25 27,5-3,36 2 40 30 35-10,86 3 35 20 27,5-3,36 4 30 15 22,5 1,64 5 28 14 21 3,14 6 25 10 17,5 6,64 7 26 10 18 4,14 31
EUITI 01/02 2.Gaia:Programazioa.Taulak 32