Oszd meg!

Add a Twitter-hez Add a Facebook-hoz Add a Startlaphoz Add az iWiW-hez Add a Google Reader-hez

Közösség

Belépés

E-mail cím:
Jelszó:

Valós típusok

Valós típusok

 

A valós típusok közé tartoznak mind azok a számok amelyek valamilyen tört részt is tartalmaznak. Tehát -1.234,-2345.01, 45.67878, 3.14. Ezek a számok több helyet foglalnak a memóriában mint az eddig tanult egészek. A valós típusok áttekintését a gyakorlaton valósítjuk meg. Részletesebb leírást itt találsz. Vigyázz! A számok megadásánál tizedes pont kell! Deklarációs példa:

var

  tortszam:real;

 

A leggyakrabban használt valós típus a real típus. A real típus nagysága és pontossága elegendő az iskolai illetve a hétköznapi feladatok számolásainak elvégzésére. A számtartomány nagyságrendje 10+39 és 10-38 közötti érték. Összehasonlításként az Avogadro szám 1023 nagyságrendű, az elemi töltés nagysága 1,6*10-19C. Az órákon megkövetelt pontosság általában 2 tizedes jegy, de a Pi vagy  értékét sem tudjuk, használjuk 3-4 tizedestől pontosabban. A real típus pontossága 11-12 tizedes jegy, ez is elegendő a hétköznapi, órai számolásokhoz. A zsebszámológépeink általában 9 tizedes pontossággal jelzik ki az értéket. A real típusú változóba a szokott módon tizedes tört alakban, vagy normál alakban vihetjük be a számokat. A számok kijelzése is kétféle lehet, a zsebszámológépeknél már megszokott formákban.

A következő program a valós számok feldolgozását mutatja be.

program valos;                        program fej

 var

szam:real;                                          deklaráció

begin                                       főprogram kezdete

  ReadLn(szam);                          változó tartalmának beolvasása

 WriteLn(szam);                          kiíratás normál alakban

WriteLn(szam:0:2);                     kiíratás formátumozottan. Jelentése:

                                                 :0 teljes egészrész :2 két tizedes a kerekítési szabály alapján

ReadLn;                                    vár egy ENTER leütésére

end.

 

Az említett real típusú változóba beolvasunk értéket és azt visszaíratjuk a képernyőre. Ha valaki ezt a programot lefuttatja és számként a 56.356 írja be akkor ezt a két kiírás jelenik meg a képernyőn 5.6356E+01 illetve 56.36.

Mi ennek az oka? Semmi különös nincs a dologban ugyan is a Pascal formátum nélkül a valós számokat un. normál alakban írja ki. Tehát az első eredmény egy ilyen kiírási forma. Jelentése 5.6356*101, vagyis 5.6356 szor tíz az elsőn. A második példában már meghatároztuk a kiírás formáját. Ha a programot megnézzük, ez a sor biztosítja ezt a lehetőséget: WriteLn(szam:0:2). Tehát írd ki az egészeket és írj két tizedest hozzá. Igen ám, de nekünk három tizedesünk volt. E miatt kerekített a gépünk. Az első tizedes a 3 ennek értéke változatlan, az utolsó kettő 56 mivel csak egy szám írható ki a rendszer elvégzi a megfelelő korrekciókat. Ha az utolsó számjegy 5-nél nagyobb az előtte álló számjegyet eggyel felkerekíti, ha 5-nél kisebb akkor marad az eredeti számjegy. Ebből kiindulva mivel az utolsó jegy 6 ezért az 5-t 6-tá alakítja. Ezt a kiíratást a későbbiekben is érdemes alkalmazni, mert nagyban megkönnyíti a számok olvashatóságát. Deklarálási példa valósakra:

 

A valós típust általános tárolási módja miatt lebegőpontos számnak is nevezzük.