Вычисление суммы элементов массива начиная с первого элемента со значением больше 0.9, и пока сумма по модулю не превысит заданного значения. Длина массива, значения элементов и предельное значение (признак для окончания суммирования) вводятся с клавиатуры — Pascal(Паскаль)

uses crt;
const max=100;
var a:array[1..max] of real;
    n,i,i1:byte;
    x,s:real;
begin
clrscr;
randomize;
repeat
write('Размер массива n=');
readln(n);
until n in [1..max];
writeln('Введите ',n,' элементов массива:');
for i:=1 to n do
 begin
  write('a[',i,']=');
  readln(a[i]);
 end;
clrscr;
writeln('Исходный массив:');
for i:=1 to n do
 begin
  write(a[i]:9:3);
  if i mod 5=0 then writeln;
 end;
writeln;
writeln;
write('Предельное значение суммы x=');
readln(x);
i1:=0;
for i:=1 to n do
if a[i]>0.9 then
 begin
  i1:=i;
  break;
 end;
if i1=0 then write('В массиве нет элементов больше 0.9')
else
 begin
  i:=i1;
  s:=a[i1];
  while (s<=x)and(i<n) do
   begin
    i:=i+1;
    s:=s+a[i];
    end;
  if (i=n)and(s<=x)then write('Введено слишком большое число')
  else write('Сумма=',s:0:3);
 end;
readln
end.

Leave a Comment

2 + 8 =