Если число заканчивается на 5 или 0, то по признакам делимости оно кратно 5.
1. Глупый школьный вариант
Перебираем все числа в заданном диапазоне и если встречаем кратное 5, прибавляем его к сумме.
var i,s:integer;
begin s:=0; for i:=1 to 200 do if i mod 5=0 then s:=s+i; Writeln(s) end.
Результат: 4100
2. Более умный школьный вариант с циклом while
Первое число, кратное 5 - это 5. А дальше прибавляем по 5 к сумме и ничего не нужно проверять.
var i,s:integer;
begin i:=5; { первое подходящее число } s:=i; while i<200 do begin i:=i+5; s:=s+i end; Writeln(s) end.
3. Еще более умный школьный вариант с циклом for
От предыдущего отличается получения нужных чисел. Замечаем, что ряд 5, 10, 15, 20, ... можно получить из чисел 1, 2, 3, 4, ..., умножая их на 5. И таких чисел будет 40.
var i,s:integer;
begin s:=0; for i:=1 to 40 do s:=s+5*i; Writeln(s) end.
4. Современный вариант на современном Паскале
Генерируем последовательность нужных чисел и находим сумму её элементов.
// PascalABC.NET 3.3, сборка 1625 от 17.01.2018 // Внимание! Если программа не работает, обновите версию!
Pascalabc.net 3.4.0, сборка 1675 от 12.06.2018 внимание! если программа не работает, обновите версию! procedure println(self: array of real); extensionmethod; begin self.batch(5).foreach(s-> begin foreach var p in s do write(p: 15: 10); writeln end); writeln(min(15*(self.count div 2),38)*'- ') end; begin var m: =arrgen(readinteger('n='),i-> cos(i),1); m.println; var (a,b): =readreal2('введите границы a b: '); writeln('число элементов на интервале [',a,',',b,'] равно ', m.where(t-> t.between(a,); write('сумма элементов, расположенных после максимального, равна '); var imax: =m.indexmax; (m? [imax+1: ].sum).println; writeln('элементы, по убыванию модулей'); m: =m.orderbydescending(t-> abs(; m.println; end.
1*0+0*1= 0 , далее 0 и верхняя чёрточка = 1
(1+1)=1
1+1= 1
ответ 1