12.5.2. Napisati program koji će za učitanu vrijednost N izračunati vrijednost izraza i ispisati:

Opis rješenja: Kod prve varijante koristi se varijabla znak za promjenu predznaka (znak := -znak;).

Listing programa:

PROGRAM p12901032;
USES WinCRT;
VAR
  i, n, k: Integer;
  znak :-1..1;
  s, p: Real;
BEGIN
  Write('n = ');
  Readln(n);
  Write('k = ');
  Readln(k);
  znak := 1;
  s := 0;
  p:=1;
  i := 1;
  REPEAT
  BEGIN
    p := p * i;
    s := s + znak * k * p;
    znak := -znak;
    i := i + 1;
  UNTIL i > n;
  Writeln('s=',s:4:0);
END.
II Varijanta
PROGRAM p12901032B; USES WinCRT; VAR i, n, k: Integer; s, p, s1, s2 : Real; BEGIN Write('k = '); Readln(k); Write('n = '); Readln(n); s1 := 0; s2 := 0; p := 1; i := 1; REPEAT p := p * i; IF i mod 2 <>0 THEN s1 := s1 + k * p ELSE s2 := s2 + k * p; i := i + 1; UNTIL i > n; s := s1 - s2; Writeln('s=',s:4:2); END.

Index