PascalABC.NET 3.7:
##var sumOfAP := function(a1, an, d: real):real → (a1 + an)/2*((an - a1)/d+1);var (a, b) := ReadInteger2('Введите a и b:');var sE := sumOfAP(a + a mod 2, b - b mod 2, 2);var sO := sumOfAP(a + 1 - a mod 2, b - 1 + b mod 2, 2);Print('Результат:', sE - sO)Пояснение:
Используется формула для нахождения суммы первых n членов арифметической прогрессии: , где
— первый член прогрессии,
— последний член,
—разность прогрессии.
Объяснение:
Sub Summa
Dim A As Long, B As Long, Schet As Long, Snech As Long
Dim Razn As Long, i As Long
Rem Тип Long включает целые числа от -2*10^9 до 2*10^9
Input "A = ", A, "B = ", B ' Вводим числа А и В
Schet = 0 ' Сумма четных чисел
Snech = 0 ' Сумма нечетных чисел
If A Mod 2 = 0 Then ' Если А четное
For i = A To B Step 2 ' Перебираем четные числа от А до В
Schet = Schet + i ' Прибавляем к сумме четных чисел
End For
For i = A + 1 To B Step 2 ' Перебираем нечетные числа от А до В
Snech = Snech + i ' Прибавляем к сумме нечетных чисел
End For
Else ' Иначе, если А нечетное
For i = A + 1 To B Step 2 ' Перебираем четные числа от А до В
Schet = Schet + i ' Прибавляем к сумме четных чисел
End For
For i = A To B Step 2 ' Перебираем нечетные числа от А до В
Snech = Snech + i ' Прибавляем к сумме нечетных чисел
End For
End If
Razn = Schet - Snech ' Разность между четной и нечетной суммой
Print Razn ' Выводим разность
End Sub
var i,n,k,j : integer; - введение переменных i,n,k,j типа integer (целое число)
begin - начало программы
i:=1; - присвоить переменной i значение 1
For i:=2 to n do - цикл в котором переменной i присваиваются значения от 2 до n ( i = 2, 3, 5 ... n)
begin - начало цикла for
k:=0; - k присваивается 0
For j:=2 to i-1 do цикл в котором переменной j присваиваются значения от 2 до i-1
if i mod j = 0 then k:=1; - если остаток от деления переменной i yf переменную j равно 0, то присвоить переменной k значение 0
if (k=0) and (n mod i = 0) then writeln(i); - если переменная k имеет значение 0 и остаток от деления переменной n на переменную i равно 0, то вывести на экран значение переменной i
end; - конец цикла for
end. - конец программы