12.5.6. Napisati program koji će za učitanu vrijednost N izračunati vrijednost izraza i ispisati::
Opis rješenja: Može se koristiti knan := k; za početnu vrijednost i u ptelji knan := knan * k; II varijanta sadrži uvećanje proizvoda pri svakom prolazu za k: p=p*k*i.
Listing programa:
PROGRAM p12510321;
USES
WinCRT;
VAR
i, n, k, knan : Integer;
znak :-1..1;
s, p: Real;
BEGIN
Write('n=');
Readln(n);
Write('k=');
Readln(k);
znak := 1;
s := 0;
knan := k;
p:=1;
FOR i:=1 TO n DO
BEGIN
p := p * i;
knan := knan * k;
s := s + znak * knan * p;
znak := -znak;
END;
Writeln('s=',s:4:0);
END.
II Varijanta
PROGRAM p12510321_2;
USES
WinCRT;
VAR
i,n, k: Integer;
s, p, s1, s2 : Real;
BEGIN
Write('k=');
Readln(k);
Write('n=');
Readln(n);
s := 0;
s1:=0;
s2:=0;
p:=1;
FOR i:=1 TO n DO
BEGIN
p:=p*k*i;
IF i mod 2 <>0 THEN
s1 := s1 + p
ELSE
s2 := s2 + p;
END;
s:=s1-s2;
Writeln('s=',s:4:2);
END.
Ispis na ekranu:
Index
|
|