Даны натуральное число n, целые a, x1 , … , xn. с клавиатуры вводится число а. если в последовательности x1 , , xn есть хотя бы один член, равный a , то получите сумму всех членов, следующих за первым таким членом; в противном случае ответом должно быть число -1.

бооой бооой    1   31.07.2019 06:50    5

Ответы
Dimas1694 Dimas1694  28.09.2020 13:05
// PascalABC.NET 3.1, сборка 1250 от 28.05.2016
begin
  var x:=ArrRandom(ReadInteger('n='),1,99);
  Writeln('Исходная последовательность'); x.Println;
  var a:=ReadInteger('a=');
  var i:=x.FindIndex(e->e=a);
  if i<0 then Writeln(-1)
  else
    if i<x.Length-1 then Writeln(x[i+1:].Sum)
    else Writeln(0)
end.

Тестовое решение:
n= 15
Исходная последовательность
26 50 92 84 30 60 9 95 46 47 59 54 97 11 36
a= 59
198
ПОКАЗАТЬ ОТВЕТЫ
liwan liwan  28.09.2020 13:05
Var
x:array [1..1000] of integer;
a, n, i, j, sum: integer;
begin
read(n, a);
for i := 1 to n do
read(x[i]);
i := 1;
while (x[i] <> a) and (i <= n) do
inc(i);
if i > n then
writeln(-1)
else
begin
for j := i + 1 to n do
sum := sum + x[j];
writeln(sum);
end;
end.
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика