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

3. astea | bigarren graduko ekuazioa

Matematikan, aldagai bakarreko bigarren mailako ekuazioa edo ekuazio koadratikoa honela adierazten den aldagai bakarreko ekuazio polinomiko bat da:   a x2 + b x + c = 0

Bigarren mailako ekuazioaren soluzioari erro esaten zaio eta ondoko irudiko formula honek ematen du:
Formula horren b2-4ac zatiari diskriminatzaile esaten zaio eta Δ bitartez adierazten da (Δ, delta izeneko letra maiuskula grekoaz). Diskriminatzailearen arabera, bigarren mailako ekuazio batek, koefizienteak zenbaki errealak izanik, soluzio desberdinak izan ditzake:
  • Δ > 0, diskriminatzailea positiboa bada, bi soluzioak zenbaki erreal dira.
  • Δ = 0, diskriminatzailea 0 bada, soluzioa bakarra da eta gainera zenbaki erreala.
  • Δ < 0, diskriminatzailea negatiboa bada, ez dago erro errealik eta bi soluzioak zenbaki konplexuak dira eta bata bestearen zenbaki konplexu konjugatu dira.

ARIKETA:
Bigarren mailako ekuazio baten rA, rB eta rC koefizienteak teklatuaren bitartez irakurri eta ekuazio koadratiko horren soluzioa nolakoa den pantailaratu, hau da, erroak nolakoak diren pantailan idatzi. Ariketa honek begi bistako hedapena du, hots, erroak nolakoak diren zehazteaz gain erroak kalkulatzea.




Aldagai boolearrak erabiliz

Orain arte ikasitakoa gogoratuz, hiru aldagai boolear deklaratu eta diskrimanatzailearen arabera balioak esleituko genizkioke, bukatzeko aldagai boolear horien edukiak pantailaratuko genituzke. Honela:
            rDiskr := rB*rB - 4*rA*rC ;
boErrealBi := rDiskr > 0 ;
boErrealBakarra := rDiskr = 0 ;
boIrudikariBi := rDiskr < 0 ;

Hemen daukazu Erroak0.pas iturburu-programa, non koefizienteak teklatuz irakurri ondoren, hiru aldagai boolearrentzat balioak kalkulatzen diren eta ostean balio horiek pantailara kanporatzen diren:
program NolakoErroakDiren_AldagaiBoolearrekin;
var
    rA, rB, rC, rDiskr: real;
    boErrealBi, boErrealBakarra, boIrudikariBi: Boolean;
begin
   write('A koefizientearen balioa eman: ');
   readln(rA);
   write('B koefizientearen balioa eman: ');
   readln(rB);
   write('C koefizientearen balioa eman: ');
   readln(rC);

   rDiskr := sqr(rB) - 4*rA*rC;

   boErrealBi      := rDiskr > 0;
   boErrealBakarra := rDiskr = 0;
   boIrudikariBi   := rDiskr < 0;

   writeln;
   writeln('Erroak bi erreal dira:   ', boErrealBi);
   writeln('Erroa erreal bakarra da: ', boErrealBakarra);
   writeln('Erroak irudikariak dira: ', boIrudikariBi);
	
   writeln;
   writeln;
   writeln('=======================');
   writeln('RETURN sakatu amaitzeko');
   writeln('=======================');
   readln;
end. { PROGRAMAREN BUKAERA }



IF-THEN kontrol-egitura erabiliz

Aldagai boolearrak erabili ordez adierazpen logikoak erabil ditzagun IF-THEN kontrol-egitura batekin batera. Programa bakar bat izango da eta programa beraren irteera posibleak hauek izan daitezke rA, rB eta rC koefizienteen balioen arabera:

Bigarren graduko ekuazio baten erroak nolakoak diren jakiteko algoritmo hau erabil daiteke:

Algoritmo hori jarraitzen duen iturburu-programa Erroak1.pas da, non IF-THEN sententziak isolaturik dauden elkarrekiko. Programa hobeto ulertzeko ikusi bere algoritmoaren fluxu-diagrama:




IF-THEN-ELSE kontrol-egitura erabiliz

IF-THEN kontrol-egitura erabili ordez bere hedapena den IF-THEN-ELSE kontrol-egitura bitartez ekin diozaiogun ariketa berari. Oraingoak erroak nolakoak diren zehazteaz gain, erroak kalkulatu egingo ditugu.

rA, rB eta rC koefizienteak dituen bigarren graduko ekuazio baten erroak nolakoak eta zeintzuk diren jakiteko Erroak2.pas iturburu-programa idatzi da. Programa horrek erroak kalkulatzen ditu eta oraingoan IF-THEN-ELSE bi erabili dira, ikusi nola kontrol-sententzia bat bestearen barruan kabiatuta dagoen. Hauek dira programaren algoritmoa eta fluxu-diagrama:

 

iruzkinik ez:

Argitaratu iruzkina

Iruzkinen bat idazteko Google-ko kontu bat behar duzu. Iruzkin guztien moderazio-ardura blogeko administratzaileari dagokio.