Известно число жителей, проживающих в каждом доме улицы. Нумерация домов проведена...

0 голосов
66 просмотров
Известно число жителей, проживающих в каждом доме улицы. Нумерация домов проведена подряд. Дома с нечетными номерами расположены на одной стороне улицы, с четными — на другой. На какой стороне улицы проживает больше жителей? Использовать только один оператор цикла!
( в паскале АВС)

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

Var
  i, k, n1, n2: integer;

begin
  n1 := 0;
  n2 := 0;
  {предполагается, что нумерация домов начинается с 1}
  writeln('Вводите количество жителей в порядке возрастания номеров домов');
  writeln('Окончание ввода - по отрицательному значению');
  i := 1;
  repeat
    read(k);
    if k > 0 then
    begin
      if i mod 2 = 0 then n2 := n2 + k
      else n1 := n1 + k;
      i := i + 1
    end
  until k < 0;
  write(#13#10, 'Большее количество людей проживает на ');
  if n1 > n2 then writeln('левой стороне улицы.')
  else writeln('правой стороне улицы.')
end.

Тестовое решение:

Вводите количество жителей в порядке возрастания номеров домов
Окончание ввода - по отрицательному значению
13 56 25 31 98 35 72 64 -1

Большее количество людей проживает на левой стороне улицы.


(142k баллов)