Информатика, вопрос задал Tema123321 , 9 лет назад

1. Вводится не менее восьми чисел. Конец ввода 0. Найти сумму первых пяти чисел и произведение последних пяти чисел. Составить блок-схему и программу к задаче.
2. Вводится текст. Конец ввода F4. Найти количество букв.

Ответы на вопрос

Ответил Аноним
0
const
  n = 5;//Емкость памяти типа "кольцо"

type
  Ring = array[1..n] of integer;

var
  ir: integer;
  R: Ring;

procedure Add2Ring(a: integer);
  // Добавляет в кольцо очередной элемент
begin
  if ir = n then ir := 1
  else ir := ir + 1;
  R[ir] := a
end;

var
  i, S, d: integer;
  P: longint;

begin
  S := 0;
  ir:=0;
  writeln('Вводите числа, 0 - конец ввода');
  for i := 1 to n do
  begin
    readln(d);
    S := S + d;
    Add2Ring(d)
  end;
  repeat
    readln(d);
    if d <> 0 then Add2Ring(d);
  until d = 0;
  P := 1;
  for i := 1 to n do P := P * R[i];
  writeln('Сумма первых ', n, ' чисел: ', S, ', произведение последних: ', P)
end.

Ответил Аноним
0
Так что после окончания ввода последние n=5 чисел будут находиться в "кольце". А ir - это указатель на последний заполненный элемент кольца. Например, если ir=2, то по порядку були заполнены элементы 3, 4, 5, 1, 2.
Новые вопросы