4 Typy čísel a operace s nimi

4.1 Celá čísla - typ Integer

typ rozsah velikost
Integer -32 768....+32 767 2B
ShortInt -128...+127 1B
LongInt -2 147 836 648...+2 147 836 647 4B
Byte 0...255 1B
Word 0...65 535 2B

4.2 Reálná čísla - typ Real

typ rozsah Platných číslic velikost
Real 2.9*10-39...1.7*10+38 11-12 6B
Single 1.5*10-45...3.4*10+38 7-8 4B
Double 5.0*10-324...1.7*10+308 15-16 8B
Extended 3.4*10-4932...1.1*10+4932 19-20 10B
Comp -2+63+1...2+63-1 19-20 8B

Příklad:

program Prumer;

var   Soucet, Cislo : Real;

        Pocet : Integer;

begin

        Write ( 'Průměr posloupnosti čísel ' );

        Write ( 'Zadávejte čísla, záporné číslo ukončí vstup ' );

        Soucet := 0; Pocet := 0;

        Read ( Cislo );

            while Cislo >= 0 do

                begin

                    Soucet := Soucet + Cislo;

                    Pocet := Pocet + 1;

                    Read ( Cislo );

                end 

        if Pocet > 0 then

            Write ( 'Průměr je ', Soucet/Pocet );

end.

4.3 Konstanty

symbolické konstanty = konkrétní číselné hodnoty opatříme jmény a v programu místo čísel používáme tato jména

výhody: 
příklad:

program Mocniny;

const     Prvni = 1;

             Posledni = 20;

var         I : Integer;

begin

    Write ( 'Druhé a třetí mocniny' );

    I := Prvni;

    while I <= Posledni do

        begin

            Write ( ' ', I, '-', I*I, '-', I*I*I );

            I := I + 1;

        end;

end.

 

poznámka:

const     Prvni = 1;
             Posledni = Prvni + 19;

Pozor:

příklad:

program Demence;

procedure SpatnyVtip;

    const I : Integer = 1;

    begin

        Writeln ( I );

        I := I + 1;

    end;

begin

    SpatnyVtip;

    SpatnyVtip;

end.

4.4 Operace s čísly

Příklad:

program KvadRovnice;

    const Malinko = 0.0001;

    var A, B, C, Diskr : Real;

    begin

        Write ( 'Řešení kvadratické rovnice ' );

        Write ( 'Zadejte koeficienty A B C: ' );

        Read ( A, B, C );

        if A = 0 then Write ( 'To není kvadratická rovnice.' )

            else

                begin

                    Diskr := Sqr(B) - 4*A*C;

                    if Abs(Diskr) < Malinko then

                        Write ( 'Dvojnásobné řešení je ', -B / (2*A) )

                    else

                        if Diskr < 0 then

                                Write ( 'Nemá řešení v reálném oboru.' )

                        else

                                Write ( 'Řešení jsou ', (-B + Sqrt(Diskr)) / (2*A), ' a ', (-B - Sqrt(Diskr)) / (2*A) );

                end;

    end.

Poznámka:
Příklad:

program cintiny.pas

program Ntiny;

    var         I, N : Integer;

                 Ntina, Suma : Real;

begin

    N := 0;

    repeat

        N := N + 1; I := 1;

        Ntina := 1 / N; Suma := 0;

        while I <= N do

            begin

                Suma := Suma + Ntina;

                I := I + 1;

            end;

        until Suma <> 1;

            Write ( N );

        end.

Cvičení:
  1. 3 + Sqrt (15 - 12/2 )
  2. 36 div 11 + 6 mod 4
  3. Abs ( Int (-5/2))    .... a řešení

Poznámka:

Je výhodné využívat šablonu vzorového programu.


 

<-předchozí

další->

© 2001 Milan Volejník, http://hledej.to.zde.cz

aktualizace: 17.09.2002 17:25:36

Powered by Notepad editor.
Copyright © 2001 by !!!Protiproud!!! All rights reserved.
Revised: 17 IX 2002 17:49:12 +0200 .