Найти сумму элементов массива, до последнего положительного числа - Free Pascal

Узнай цену своей работы

Формулировка задачи:

Дан одномерный массив, состоящий из N вещественных элементов. Найти сумму элементов массива, расположенных до последнего положительного элемента. Формат входных данных В первой строке входного файла содержится число N (1\le N\le 100). Во второй строке даны N вещественных чисел через пробел. Формат выходных данных Выведите в выходной файл искомую сумму с 3 знаками после десятичной точки или 0, если в заданном массиве нет положительных элементов. Примеры: Вход 3 1.234 3.24 5.467 Выход 4.474

Решение задачи: «Найти сумму элементов массива, до последнего положительного числа»

textual
Листинг программы
var
  s, ts, a: real;
  n, i, c: integer;
begin
  Assign(input,'in.txt'); Assign(output,'out.txt');
  Reset(input); Rewrite(output);
  ReadLn(n);
  for i:=1 to n do begin
    Read(a);
    if a>0 then begin
      s:=s+ts; inc(c); ts:=0;
    end;
    ts:=ts+a;
  end;
  if c>0 then WriteLn(s:0:3) else WriteLn(0);
end.

Объяснение кода листинга программы

  1. Объявлены переменные: s, ts, a — real; n, i, c — integer;
  2. Заданы начальные значения переменных: s, ts, a, n, i, c — 0;
  3. Открыты файлы для чтения и записи: input — 'in.txt'; output — 'out.txt';
  4. В цикле от 1 до n происходит чтение чисел из файла input и добавление их к ts. Если число положительное, то происходит обновление s и увеличение c на 1.
  5. После цикла выводится значение s, если c больше 0, иначе выводится 0.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 3.857 из 5
Похожие ответы