poprawcie programy mają one posiadą tylko zmienne lokalne i być funcji pascal
jest to rownanie kwadratowe program ma wyswietlać ilośc miejsc za pomocą funkcji
function rownanie (a,b,c:real):real;
var
x1,x2,x0,d:real;
begin
d:=(b*b)-4*(a*c);
end;
begin
if d>0 then
writeln(',brak miejsc zerowych');
end;
begin
if d=0 then x0:=-c/b;
writeln('rownanie ma 1 miejsce zerowe',x0:2:2);
end;
begin
if d>0 then writeln('rownanie ma dwa rozwaziania');
x1:=(-b-sqrt(d))/2*a;
x2:=(-b+sqrt(d))/2*a;
writeln('rozwiazanie');
writeln ('x1=',x1:2:2);
writeln('x2=',x2:2:2);
end;
end;
begin
writeln('podaj a ');
readln(a);
writeln('podaj b ');
readln(c);
writeln('podaj c ');
readln(c);
writeln ('delta wynosi');
writeln('wynik',rownaie);
rownanie(a,b,c);
readln;
end.
2 program na wariancję czyli (n!/(n-k)!) terż posiadający tylko zmienne lokalne i z funkcją
program wariarncja;
uses crt;
function silnia (n:integer):integer;
begin
writeln('podaj n');
readln(n);
if (n=0) or (n=1) then
silnia:=1
else silnia:= silnia(n-1)*n;
end;
function silniam (k,n,z:integer):integer;
begin
writeln ('podaj k');
readln(k);
z:=n-k;
silniam:= silniam(z-1) *z;
end;
function wariancja (w,silnia,silniam:integer ):integer;
w:=silnia/silniam;
begin
writeln('silnia wynosi',silnia(n));
silnia(n);
writeln('silnia manownika wynosi',silniam(z));
silniam(k,n,z);
writeln('wariancja wynosi');
wariancja(w)
readln;
end.
programy muszą być napisane od początku do końca nie za pomoca wskazania błedu
" Life is not a problem to be solved but a reality to be experienced! "
© Copyright 2013 - 2024 KUDO.TIPS - All rights reserved.
1)
uses crt;
procedure rownanie;
var x1,x2,x0,d:real;
a,b,c:integer;
begin
writeln('podaj a ');
readln(a);
writeln('podaj b ');
readln(b);
writeln('podaj c ');
readln(c);
d:=(b*b)-4*(a*c);
writeln ('delta wynosi:' ,d);
write('Ilość miejsc zerowych: ');
if d>0 then writeln('brak')
else if d=0 then begin
writeln('1');
x0:=-c/b;
writeln('Wynik: ',x0:2:2);
end
else begin
writeln('2');
x1:=(-b-sqrt(d))/2*a;
x2:=(-b+sqrt(d))/2*a;
writeln('rozwiazanie');
writeln ('x1=',x1:2:2);
writeln('x2=',x2:2:2);
end;;
end;
begin
clrscr;
rownanie;
readln;
end.
2) Nie jest możliwe to, muszą być zmienne globalne.