1. program obliczający silnię. Napisałem prawie cały, tylko nie wiem co zrobic, aby program przy podaniu ujemnej liczby wyswietlał komunikat: "nie mozna obliczyc silni z liczby ujemnej, podaj inna liczbe"
- Kod: Zaznacz wszystko
program silnia;
uses crt;
var
a:extended;
function silnia(a:extended):extended;
begin
if a=0
then silnia:=1
else silnia:=a*silnia(a-1);
end;
begin
repeat
writeln('Program oblicza silnie');
clrscr;
writeln('Podaj liczbe: ');
readln(a);
writeln('wynik: ',a:10:2,'!=',silnia(a):10:2);
writeln('Wcisnij dowolny przycisk...');
writeln('Aby zakonczyc nacisnij F1');
readkey;
until keypressed;
end.
2. potęgi. też prawie cały napisałem, tylko nie weim co zrobić, aby program odpowiednio zachował się przy podaniu ujemnego wykładnika.
- Kod: Zaznacz wszystko
program potega;
uses crt;
var
a : integer;
n : integer;
wynik: extended;
i : integer;
begin
repeat if n=0
then wynik:=1;
begin
if n<0
then wynik:=a^(1/n);
begin
writeln('program oblicza potegi');
clrscr;
writeln('podaj podstawe: ');
readln(a);
writeln('podaj wykladnik: ');
readln(n);
wynik:=1;
for i:=1 to n do wynik:=wynik*a;
writeln('wynik: ',a ,'^',n ,'= ',wynik:0:0);
writeln('Wcisnij dowolny przycisk...');
writeln('Aby zakonczyc nacisnij F1');
readkey
end
end
until keypressed;
end.
proszę o pomoc.
z góry dzięki
