цикл - от 1 до последнего элемента
(если текущий элемент =0, запоминаем индекс)
второй цикл - от запомненного индекса из первого цикла до последнего элемента
(берем переменную, к примеру С) и в цикле в это считаем С=С+текущий элемент
хотя наверно вариант за один проход лучше =)
Да кстати, есть там вариант еще пойти с конца массива, просто в цикле пишется не:
фор 1 ту Н
а так:
фор Н даунту 1
^^ как-то так
Другие языки программирования и технологии
Паскаль, одномерн массив, вычислить сумму элементов массива, расположенных после последнего элемента, равного нулю. Спасибо)
Можно, например, складывать числа с конца массива, до тех пор, пока не встретиться ноль. Он и будет последним нулём в массиве. Это метод решения. Алгоритм, примерно, - чтение последнего элемента, дальше - цикл с предусловием - "while", условие - неравенство элемента нулю, в цикле - сложение и взятие нового элемента массива. Это без проверки окончания массива, если в нём обязательно есть ноль. Если ноля может не быть, то нужна проверка на окончание массива.
Паскаль знаю плохо.
Паскаль знаю плохо.
В чем трудность?
идешь по массиву, находишь ноль, начинаешь считать сумму, если находишь ноль, сбрасываешь сумму. Все. За один проход мы все сделали
не уверен, что правильно по синтаксису паскаля, но алгоритм верен:
var
m[1..100]: array of integer;
s, i : integer;
begin
...// здесь мы каким-то образом нагружаем массив (из файла или с консоли, например)
for i=1 to 100 do //открываем цикл от первого до последнего элемента массива
begin
s:=s+m[i] //прибавляем к сумме следующий элемент массива
if m[i]=0 then s:=0; //если элемент массива равен нулю, то обнуляем сумму
end;
end.
var
m[1..100]: array of integer;
s, i : integer;
begin
...// здесь мы каким-то образом нагружаем массив (из файла или с консоли, например)
for i=1 to 100 do //открываем цикл от первого до последнего элемента массива
begin
s:=s+m[i] //прибавляем к сумме следующий элемент массива
if m[i]=0 then s:=0; //если элемент массива равен нулю, то обнуляем сумму
end;
end.
Похожие вопросы
- Вычислить сумму элементов массива, расположенных между первым и вторым отрицательными элементами - C++
- сумму элементов массива, расположенных после последнего элемента, равного нулю. Диапазон – [-25;15]. Помогите решить
- C++ Нужно вычислить сумму элементов массива, расположенных между первым и последним отрицательными элементами.
- С++ Передать в функцию квадратную матрицу и вычислить сумму элементов на ее главной диагонали и вернуть эту сумму.
- Вычислить сумму элементов каждого столбика. С++
- Вычислить сумму нечетных элементов в программа С++ .Через статический и динамический массив! Вот я сам написал проверьте
- Напишите программу, которая находит в массиве количество элементов, равных заданному значению X .
- №1.Как вычислить произведение элементов массива(1..5)В Паскале=)))№2.Найти наименьший элемент в массиве!Тоже в Паскале)
- задачка PAscal. найти сумму положительных элементов массива, расположенных до минимального элемента этого массива
- программа в Паскале. Найти максимальный элемент из элементов массива, расположенных над главной диагональю.