Darmowe Forum

Turbo Pascal => Podstawy Turbo Pascal => W±tek zaczêty przez: admin Marzec 07, 2011, 13:07:32



Tytu³: Funkcja - zwraca warto¶æ
Wiadomo¶æ wys³ana przez: admin Marzec 07, 2011, 13:07:32
Procedura wymienia dane z wywo³uj±cym poprzez listê parametrów, nie daje jednak mo¿liwo¶ci zwrócenia pojedynczej warto¶ci (liczby).
Dlatego w Pascalu wprowadzono pojecie funkcji. Jest ona rodzajem procedury, która po wywo³aniu zwraca obliczon± przez siebie warto¶æ.


Function nazwa(lista_parametrów):typ_wyniku;
{deklaracje sta³ych i zmiennych typów}
Begin
{tre¶æ funkcji, i przypisanie}
Nazwa:=obliczona_warto¶æ_wyniku;
End;



Tytu³: Odp: Funkcja - zwraca warto¶æ
Wiadomo¶æ wys³ana przez: admin Marzec 07, 2011, 13:08:53
Przyk³ad 1.

Program a1;
Var c, d:real;
function suma:real;
begin
suma:=c+d;
end;
Begin
Write(‘podaj  a =’);readln (c);
Write(podaj b= ‘);readln (d);
Writeln(’suma liczb wynosi  ‘,suma);
readkey;
End.



Tytu³: Odp: Funkcja - zwraca warto¶æ
Wiadomo¶æ wys³ana przez: admin Marzec 14, 2011, 12:02:22
Zadanie 2. Napisaæ program w którym funkcje bêd± oblicza³y sumê ,ró¿nicê, iloraz i iloczyn dwóch wprowadzonych liczb.

program a1;
uses crt,dos;
var c,d:integer;
function suma:real;
begin
suma:=c+d;
end;
function roznica:real;
begin
roznica:=c-d;
end;
function  iloraz:real;
 begin
  iloraz:=c/d;
 end;
function iloczyn:real;
begin
iloczyn:=c*d;
end;

begin clrscr;
write('Podaj a= ');readln(c);
write('Podaj b= ');readln(d);
writeln('Suma liczb= ',suma:0:2);
writeln('Roznica liczb= ',roznica:0:2);
writeln('Iloczyn liczb= ',iloczyn:0:2);
writeln('Iloraz liczb= ',iloraz:0:2);
readkey;
end.


Tytu³: Odp: Funkcja - zwraca warto¶æ
Wiadomo¶æ wys³ana przez: admin Marzec 14, 2011, 12:21:02
Zadanie 3. Program wykorzystuj±cy twierdzenie Talesa do obliczenia wysoko¶ci budynku. Korzystaj±c z trójk±ta Talesa napisaæ program który wyliczy wysoko¶æ budynku. a- d³ugo¶æ podstawy trójk±ta, b- wysoko¶æ trójk±ta, c- odleg³o¶æ od budynku, d- wysoko¶æ budynku (do obliczenia).

program a1;
uses crt,dos;
var a,b,c:real;
function tales:real;
begin
tales:=b/a*c;
end;
begin clrscr;
a:=0.2;
write('Podaj w m b= ');readln(b);
write('Podaj odleglosc od obiektu c= ');readln(c);
writeln('Wysokosc budynku= ',tales:0:2, ' m');
readkey;
end.


Tytu³: Odp: Funkcja - zwraca warto¶æ
Wiadomo¶æ wys³ana przez: admin Marzec 14, 2011, 12:36:55
Zadanie 4. Napisz program który korzystaj±c z  funkcji troj obliczy pole powierzchni trójk±ta wprowadzaj±c z klawiatury dane: a - d³ugo¶æ podstawy trójk±ta, h - wysoko¶æ trójk±ta.


Tytu³: Odp: Funkcja - zwraca warto¶æ
Wiadomo¶æ wys³ana przez: admin Marzec 14, 2011, 13:30:41
Zadanie 5.
program a1;
uses crt,dos;
var imie:string;
x,y:integer;
 procedure podaj;
 begin
 gotoxy(10,1);write('Podaj imie: ');readln(imie);
 end;

function ile: integer;
begin
ile :=length(imie);
end;
procedure slupek (ile:integer);
var x:integer;
begin
 for x:=1 to ile do begin
  gotoxy(20+y,20-x); write(chr(178));delay(300);
 end;
     end;

begin clrscr;y:=1;
 repeat podaj;slupek(ile);readkey;inc(y); until ile=10;

end.


Tytu³: Odp: Funkcja - zwraca warto¶æ
Wiadomo¶æ wys³ana przez: admin Marzec 21, 2011, 09:14:55
program a2;
uses crt,dos;
var a,b:real;
function roznica:real;
begin
roznica:=a-b;
end;
begin
readkey;
end.
-----------------------------------------------------------------

program a2;
uses crt,dos;
var a,b:real;
function srednia:real;
begin
srednia:=(a+b)/2;
end;
begin
clrscr;
write('Podaj pierwsza zmienna: ');readln(a);
write('Podaj druga  zmienna: ');readln(b);
write('srednia z liczb: ',a:0:2,' ',b:0:2,' = ',srednia:0:2);
readkey;
end.
----------------------------------------------------------
program a2;
uses crt,dos;
var c,d:real;
function srednia(a,b:real):real;
begin
srednia:=(a+b)/2;
end;
begin
clrscr;
write('Podaj pierwsza zmienna: ');readln(c);
write('Podaj druga  zmienna: ');readln(d);
write('srednia z liczb: ',c:0:2,' ',d:0:2,' = ',srednia(c,d):0:2);
readkey;
end.


Tytu³: Odp: Funkcja - zwraca warto¶æ
Wiadomo¶æ wys³ana przez: admin Kwiecieñ 04, 2011, 10:18:29
Zadanie 4. 4.04.2011

program r7;
uses crt,dos;
var x,y,z:real;
procedure dziel;
begin clrscr;
write('Podaj pierwsza liczbe: ');readln(x);
write('Podaj druga liczbe: ');readln(y);
end;

function dziela(a,b:real): real;
begin
if (b=0) then writeln('Nie dziele przez zerooooooooo!!!!!!') else
dziela:=a/b;
end;


begin
   dziel;write(dziela(x,y):0:2); readkey;
end.




Polityka cookies
Darmowe Fora | Darmowe Forum

gang-nd moikrewni shaggydogss blackmoon mylittlepony