Задача сформулирована не корректно, т.к. недостаточно информации о формировании сообщения.
В случае если мы передаём значение 15 то сообщение будет размером 1111 бит.
В худшем случае минимальное сообщение будет иметь размерность 100000 бит
В лучшем случае сообщение может быть представлено как поток 2битных сообщений. Максимальная длина потока будет равна 32 сообщениям. В случае оптимистичного прогноза успех может произойти на первом сообщении. Таким образом мы считаем номер в потоке и значение бита. Если значение == 1 то в этом вагоне находятся друзья.
1) var n,a,s,i:integer; begin write('n = '); readln(n); writeln('Введите ',n,' чисел:'); s:=0; for i:=1 to n do begin read(a); s:=s+a; end; writeln('s = ',s); end.
3) var n,a,s,i:integer; begin write('n = '); readln(n); writeln('Введите ',n,' чисел:'); s:=0; i:=0; while i<n do begin i:=i+1; read(a); s:=s+a; end; writeln('s = ',s); end.
begin
Print(Range(0,9).Sum)
end.
Результат:
45