Дана последовательность не более N ненулевых целых чисел, последним числом в последовательности является 0. Ввести эту последовательность в одномерный массив и вычислить хаpактеристики .Найти порядковые номера и сумму двух наибольших элементов. ( в Паскаль )
Program SequenceAnalysis; var sequence: array[1..100] of integer; N, i, max1, max2, index1, index2, sum: integer; begin write('Введите количество элементов последовательности: '); readln(N);
write('Введите элементы последовательности: '); for i := 1 to N do begin read(sequence[i]); if sequence[i] = 0 then Break; end;
for i := 2 to N do begin if sequence[i] > max1 then begin max2 := max1; max1 := sequence[i]; index2 := index1; index1 := i; end else if sequence[i] > max2 then begin max2 := sequence[i]; index2 := i; end;
if sequence[i] = 0 then Break;
end;
sum := max1 + max2;
writeln('Порядковый номер первого наибольшего элемента: ', index1); writeln('Порядковый номер второго наибольшего элемента: ', index2); writeln('Сумма двух наибольших элементов: ', sum); end.
Program SequenceAnalysis;
var
sequence: array[1..100] of integer;
N, i, max1, max2, index1, index2, sum: integer;
begin
write('Введите количество элементов последовательности: ');
readln(N);
write('Введите элементы последовательности: ');
for i := 1 to N do
begin
read(sequence[i]);
if sequence[i] = 0 then
Break;
end;
max1 := sequence[1];
max2 := sequence[2];
index1 := 1;
index2 := 2;
for i := 2 to N do
if sequence[i] = 0 thenbegin
if sequence[i] > max1 then
begin
max2 := max1;
max1 := sequence[i];
index2 := index1;
index1 := i;
end
else if sequence[i] > max2 then
begin
max2 := sequence[i];
index2 := i;
end;
Break;
end;
sum := max1 + max2;
writeln('Порядковый номер первого наибольшего элемента: ', index1);
writeln('Порядковый номер второго наибольшего элемента: ', index2);
writeln('Сумма двух наибольших элементов: ', sum);
end.