Дан фрагмент программы. Нарисуйте блок-схему, восстановите вид формулы для расчета...

0 голосов
23 просмотров

Дан фрагмент программы. Нарисуйте блок-схему, восстановите вид формулы для расчета S
PASCAL:

VAR
A:ARRAY[1...100]OFF
INTEGER;
N,I,J: INTEGER;
S: REAL;
BTGIN
N:=8;
FOR I:=1 TO N DO
BEGIN
S:=0;
FOR J:=1 TO I DO
S:=S+(A[J]);
S:=ABS(S);
WRITELN(`S`=`,S:9:2);
END;
READLN;
END.

QBASIC
DEFINT N,I,J,S,
DIM A(100) AS INTEGER
N:=8
FOR I=1 TO N
S=0
FOR J=1 TO I
S=S+A[J]
NEXT J
S=ABS(S)
PRINT S
NEXT I

ШКОЛЬНЫЙ АЯ

алг слово(рез вещ s)
цел раб А[1:100]
n:=8
нц для I от 1 до n
s=0
нц для j от 1 до I
s=s+a[j]
кц
s=abs(s)
вывод s
кц
кон

Пожааалуйста нужны блок-схемы для трех вариантов получения s






Информатика (15 баллов) | 23 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

Предложенные фрагменты программы должны выполнять нахождение и вывод абсолютной величины суммы первых 1, 2, ...8 элементов массива А - всего 8 сумм. В реальности будут восемь раз выведены нули, потому что отсутствует фрагмент, в котором элементам массива А присваиваются какие-либо значения.

Блок-схемы достаточно одной, потому что все три фрагмента определяют одни и те же шаги алгоритма.

1. Pascal

var
  A: array[1..100] of integer;
  N, I, J: integer;
  S: real;

begin
  N := 8;
  for I := 1 to N do
  begin
    S := 0;
    for J := 1 to I do S := S + A[J];
    S := abs(S);
    writeln('S=', S:9:2)
  end;
  readln;
end.

2. QBASIC

DEFINT I-J, N, S
DIM A(100) AS INTEGER
N = 8
FOR I = 1 TO N
    S = 0
    FOR J = 1 TO I
        S = S + A(J)
    NEXT J
    S = ABS(S)
    PRINT S
NEXT I
END

3. Школьный АЯ (КуМИР)

алг слово(рез вещ s)
нач цел таб A[1:100]
   цел n,I,j
   n:=8
   нц для I от 1 до n
      s:=0
      нц для j от 1 до I
         s:=s+A[j]
      кц
      s:=abs(s)
      вывод s
  кц
кон



(142k баллов)