Найти сумму элементов массива, до последнего положительного числа - 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.
Объяснение кода листинга программы
- Объявлены переменные: s, ts, a — real; n, i, c — integer;
- Заданы начальные значения переменных: s, ts, a, n, i, c — 0;
- Открыты файлы для чтения и записи: input — 'in.txt'; output — 'out.txt';
- В цикле от 1 до n происходит чтение чисел из файла input и добавление их к ts. Если число положительное, то происходит обновление s и увеличение c на 1.
- После цикла выводится значение s, если c больше 0, иначе выводится 0.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д