oinarriak etiketadun mezuak erakusten. Erakutsi mezu guztiak
oinarriak etiketadun mezuak erakusten. Erakutsi mezu guztiak

2024(e)ko otsailaren 5(a), astelehena

3. astea | triangeluaren azalera (hasiera)

XOY lehen koadranteko triangelu bat bere ABC erpinen bitartez definiturik dator (erpinen koordenatuak zenbaki errealak dira). A puntua eta B puntua lotzen dituen AB lerroa ez da bertikala ezta horizontala, eta C puntua ez dago kokaturik AB lerroan. Datuak:
  • A eta B puntuak AB zuzena lortzeko, AB zuzena zeiharra izango da (ez bertikala, ez horizontala)
  • C puntua AB segmentuaren zuzenetik kanpo dago

Algoritmoa: 
  1. Emanik A puntua eta B puntua, AB zuzena lortu
  2. Emanik C puntua, AB zuzenaren perpendikularra C puntuan lortu
  3. AB zuzena eta bere perpendikularra C puntuan ditugula, lerro biren ebakidura kalkulatu (P puntua lortu)
  4. Erpinen arteko AB distantzia eta puntuen arteko CP distantzia kalkulatu ondoren azalera zehaztu  
Ariketaren urratsak ikusteko 3. astea | triangeluaren azalera artikulua aztertu.

Zure programaren hasiera:
program Triangelu_1_4 ;
var
   rAx, rAy, rBx, rBy : real ;   
begin
   { A puntua lehen koadrantekoa da }
   repeat
      writeln('OXY lehen koadrantean lan eginez') ;
      write('Eman A puntuaren x koordenatua: ') ;
      readln(rAx) ;
      write('Eman A puntuaren y koordenatua: ') ;
      readln(rAy) ;
      if (rAx < 0.0) or (rAy < 0.0) then   { A-ren bi koordenatuak positiboak izan behar dira }
      begin
         writeln('A puntuaren bi koordenatuak positiboak izan behar dira') ;
         if rAx < 0.0 then
            writeln('A puntuaren x koordenatua ezin daiteke negatiboa izan') ;
         if rAy < 0.0 then
            writeln('A puntuaren y koordenatua ezin daiteke negatiboa izan') ; 
      end ;   
   until (rAx >= 0.0) and (rAy >= 0.0) ;
   writeln ;

   { B puntua ere lehen koadrantekoa izango da eta horrez gain }
   { B puntua eta A puntua "diagonal" batean egongo dira kokaturik }
   repeat
      writeln('OXY lehen koadrantean jarraituz ') ;
      write('Eman B puntuaren x koordenatua: ') ;
      readln(rBx) ;
      write('Eman B puntuaren y koordenatua: ') ;
      readln(rBy) ;
      if (rBx < 0.0) or (rBy < 0.0) then
         writeln('B puntuaren bi koordenatuak positiboak izan behar dira') ;
      if (rAx = rBx) or (rAy = rBy) then
      begin
         writeln('AB segmentua zeiharra izan behar da') ;
         if rAx = rBx then
            writeln('AB segmentua ezin daiteke bertikala izan') ;
         if rAy = rBy then
            writeln('AB segmentua ezin daiteke horizontala izan') ;   
      end ;   
   until ((rBx >= 0.0) and (rBy >= 0.0)) and
         ((rAx <> rBx) and (rAy <> rBy)) ;
   writeln ;

   { A eta B ezagunak direla, AB segmentuari dagokion r zuzenaren bi   }
   { parametroak kalkulatu:                                            }
   {                          rMalda := _______________;               }
   {                          rDesplazamendua := ___________;          }
   
   { ALGORITMO OSOA:
       1.  Emanik A puntua eta B puntua, AB zuzena lortu
       2.  Emanik C puntua, AB zuzenaren perpendikularra C puntuan lortu
       3.  AB zuzena eta bere perpendikularra C puntuan ditugula, lerro
           biren ebakidura kalkulatu (P puntua lortu)
       4.  Erpinen arteko AB distantzia eta puntuen arteko CP distantzia 
           kalkulatu ondoren azalera zehaztu                             }
   
end. { PROGRAMAREN BUKAERA }

3. astea | zirkulua eta koadranteak

P puntuaren koordenatu kartesiarrak teklatutik irakurri. R=4 erradioa duen zirkunferentzia bat aintzat hartuta, P puntuaren kokapenaren araberako testu bat pantailaratu. Honela:
  • P puntuaren koadrantea (edo ardatza, hala balitz)
  • P puntua zirkuluaren barruan ala kanpoan dago (edo zirkunferentzian bertan, hala balitz)

Hona hemen eskatzen den programaren hiru irteera:


3. astea | ekuazio-sistema

Cramer-en metodoa egokia da ekuazio linealen sistemak ebazteko. Hona hemen ekuazio-sistema bat eta ikusi nola lortzen den bere ebazpena koefizienteen determinanteak erabiliz:


Koefiziente guztiak zenbaki errealak izanik, koefizienteak teklatuaren bitartez irakurri eta sistemaren ebazpena pantailan idatzi.

Kontutan izan A·E - B·D = 0 baldin bada, programa konpilagarria izango dela, baina errorea gertatuko dela exekuzio-denboran.

Konpilatu izanak ez du esan nahi programa ondo dagoenik


2024(e)ko urtarrilaren 29(a), astelehena

2. astea | zenbakia pantailaren erdian

Programa honek zenbaki oso bat idatziko du pantailaren erdian, ZENBAKIA hitzaren azpian. Pantailan idatzi beharreko zenbakia 2 edo 4 digitu izango ditu, baina edozein kasutan pantailaren erdia idaztea eskatzen da.

Programak bi datu eskatuko dizkio erabiltzailearei. Batetik, idatzi behar den zenbakia; eta bestetik, idatzi beharreko zenbaki horrek zenbat digitu dituen (2 edo 4). Adibidez, hauek izan daitezke lau zifrako zenbaki bat ematean aterako litzatekeen emaitza eta kokapenaren eskema:
          1         2         3         4         5         6         7         8
12345678901234567890123456789012345678901234567890123456789012345678901234567890
ZENBAKIA
6295

Eta hauek izango lirateke programa beraren emaitza zenbakia bi zifratakoa izetean:
          1         2         3         4         5         6         7         8
12345678901234567890123456789012345678901234567890123456789012345678901234567890
ZENBAKIA
81

Jakin ezazu ere, testu-pantaila batean gehienez 80 zutabe daudela, hots, pantailaren zabalera 80 karakterekoa dela.

2. astea | kartesiar-polar

ZER DAKIDAN:
Erakarpen grabitatorioa programa egin ondoren, badakit testu bat pantailan idazten. Badakit ere balioak aldagaietan gordetzen eta era desberdineko konstanteak definitzen.



ZER IKASIKO DUDAN:
sqrt() funtzio estandarra, sqr() funtzio estandarra eta arctan() funtzio estandarra ikasiko ditut.




ESKATZEN DEN PROGRAMA

Zenbaki errealekin lan eginez, puntu baten koordenatu kartesiarrak ezagutzen dira eta dagozkien koordenatu polarrak lortu behar dira.

Ariketa:
XY planoan dagoen rP puntu baten koordenatu kartesiarretan teklatutik irakurri. rP puntuari dagozkion koordenatu polarrak lortu.
rP puntuaren koordenatu polarraren angelua gradu-minutu-segundotan pantailaratu.


Eskatzen den irteera, adibidez:

   P puntuaren X koordenatua eman: 4.01
   P puntuaren Y koordenatua eman: 2.99

   OP Distantzia = 5.00202 unitate
   Alfa angelua =  0.64070 radian

   Koordenatuak: (4.01, 2.99) = [5.00202 | 0.64070]
_


2. astea | kopuru handiegiak

Ariketa honetan interesatzen zaigu Integer datu-motak 2 byte har ditzala memorian. Horretarako, konpilazio agindu hau erabiliko dugu: {$MODE TP}

Teklatutik zenbaki osoa sartu (iZbk aldagaian gorde) eta zenbakiari dagozkion hurrengo bost zenbakien karratuak eta kuboak kalkulatu eta pantailaratu (karratuak eta kuboak kalkulatzean iKarratu eta iKubo aldagaietan gorde).

Pantailaratzean honako taula honen moduan agertuko da:
ZENBAKIA          KARRATUA          KUBOA
----------------------------------------------------------

Oharra: Programaren exekuzioan zenbaki osoen gainezkatzeak dakartzan erroreak ikus daitezke. Adibidez 29 edo 179 zenbakietan, lehena kuboa kalkulatzean eta bigarrena karratuarekin.

29

179


2. astea | triangelu berezi baten azalera

Zenbaki errealekin lan eginez, triangelu baten azalera kalkulatu ondoren emaitza pantailaratu.

Ariketa:
A, B eta C puntuak teklatutik irakurri. A, B eta C puntuek osatzen duten triangeluaren azalera lortu.
A eta B puntuak OX ardatzean daude (rAy eta rBy koordenatuek zero balio dute).
A eta B puntuei dagozkien x koordenatuak positiboak dira eta desberdinak euren artean, hots, A eta B ez direlako puntu bera rAx  eta rBx  koordenatuak desberdinak izango dira elkarrekiko.  
C puntua edozein tokitan egon daiteke OX ardatzean izan ezik. Triangeluaren azalera positiboa izango da rCy  koordenatua positiboa izatean, eta azalera negatiboa izango da  rCy  koordenatua negatiboa izatean. Triangeluaren azalera kalkulatzeko garrantzirik du rCx koordenatuak?


2024(e)ko urtarrilaren 22(a), astelehena

1. astea | hiru mendietatik zeruertza kilometroetan

Ezaguna den 1. astea | zeruertza kilometroetan ariketaren aldaera eskatzen da. Programak, exekuzio bakoitzeko, hiru mendiren datuak hartuko ditu sekuentzialki eta hiru altuera horiekin zeruertzaren distantziak pantailaratu.

Oraintxe dakigunarekin, sarrerako datuak Burgoa (451 m), Katillotxu (336 m) eta Atxarre (312 m) balira, programa bat idatzi beharko genuke; baina sarrerako datuak Gaztelugatxe (79 m), Aketz (105 m) eta Gorbeia (1482 m) balira, beste programa desberdin bat idatzi beharko genuke. Esate baterako, datutzat Aketz (105 m), Garbola (477 m) eta OgoƱo (305 m) emanik, programaren irteera honelako zerbait izango litzateke:

Mendien altuerak ezagutzeko www.mendikat.net webgunea bisitatu

Esan bezala, ariketa honi nolabaiteko erantzuna emango diogu oraintxe bertan dakigunarekin. Aurrerago, prozesu errepikakorrak ikasiko ditugunean, eta, esaldiak prozesatzen jakingo dugunean bertsio bukatuago bat eman ahalko diogu. Adibidez:


 

1. astea | zeruertza kilometroetan

ZER DAKIDAN:
Erakarpen grabitatorioa programa egin ondoren, badakit testu bat pantailan idazten. Badakit ere balioak aldagaietan gordetzen eta era desberdineko konstanteak definitzen.



ZER IKASIKO DUDAN:
sqrt() funtzio estandarra eta sqr() funtzio estandarra ikasiko ditut.




ESKATZEN DEN PROGRAMA

Demagun itsasoaren ondoan gaudela eta urrunera, zeruertzera, begiratzen dugula. Zenbat kilometrotara batzen dira zerua eta itsasoa?

Beste modu batez galdetuta: Zenbat kilometrotara dago ostertza edo zeruertza?

Irudia handiago ikusteko klik egin bere gainean

Datuak:

  • rAltuera aldagaia, metrotan emandako altuera
  • R konstantea, lurraren erradioa 6370 Km 

Ezezaguna:

  • rDistantzia aldagaia, lortu nahi den distantzia kilometroetan 

Kopuru baten erro karratua kalkulatzeko sqrt() funtzio estandarra erabili behar da, adibidez honela (non rDatua) aldagaiak blio ezagun bat duen:

  • rErroKarratua := sqrt(rDatua);  

Hona hemen programa honen kodea:
{
   Demagun itsasoaren ondoan gaudela eta urrunera, zeruertzera, begiratzen dugula.
   Zenbat kilometrotara batzen dira zerua eta itsasoa?
   Beste modu batez galdetuta: Zenbat kilometrotara dago ostertza edo zeruertza?

   Datuak:
        rAltuera aldagaia, metrotan emandako altuera
        R konstantea, Lurraren erradioa 6370 Km
   Ezezaguna:
        rDistantzia aldagaia, lortu nahi den distantzia kilometroetan   
}

PROGRAM ZeruertzaKilometroetan ;

CONST
   R = 6370 ;   { Lurraren erradioa Kilometroetan }
VAR
   rAltuera, rDistantzia : Real ;

BEGIN
   WriteLn('//////////////////////////////////////') ;
   WriteLn ;

   Write('Eman behatokiaren altuera metroetan: ') ;
   ReadLn(rAltuera) ;
   
   rDistantzia := sqrt(sqr(rAltuera) + 2*rAltuera*(R*1000)) ;   
	
   WriteLn ;	
   WriteLn('Zeruertzaren distantzia = ', rDistantzia:0:2, ' m') ;
   WriteLn('Zeruertzaren distantzia = ', (rDistantzia/1000):0:3, ' Km') ;
  
   WriteLn ;
   WriteLn('//////////////////////////////////////') ;
   ReadLn ;
END.
 

1. astea | erakarpen grabitatorioa

ZER DAKIDAN:
Kaixo mundua! programa egin ondoren, badakit testu bat pantailan idazten. Badakit ere konstanteak definitzen.



ZER IKASIKO DUDAN:
Readln prozedurari esker, teklatuaren bitartez, balio bat aldagai batean gordetzen ikasiko dut. Esleipena operazioaren bitartez aldagai batean balio jakin bat gordetzen ikasiko dut. Konstante erreal bat notazio zientifikoan nola deklaratzen den ikasiko dut.




ESKATZEN DEN PROGRAMA

r distantzian daudenean, m1 eta m2 masak jasaten duten erakarpen grabitatorioaren balioa idatz ezazu. Programak aurreko hiru datuak eskatuko dizkio (m1 eta m2 kilogramoetan eta r metroetan) erabiltzaileari eta F indarraren balioa pantailaratuko du.


Non G ikurrak Grabitazio Unibertsalaren Konstantea adierazten duen, eta bere balioa hau den:

G=6.674×10−11  (N⋅m2⋅kg−2)

 

1. astea | kaixo mundua!