Объявляем переменные P,i,kc,kn как целочисленный тип.
begin
Начало программы.
write('P='); //вводим целое число
Выводим на экран "P=".
readln(P);
Считываем переменную P с клавиатуры и переходим на новую строчку.
kc:=0; //четные делители
Присваиваем переменной kc, в которой будет храниться количество четных делителей, значение 0.
kn:=0; //нечетные делители
Присваиваем переменной kn, в которой будет храниться количество нечетных делителей, значение 0.
for i:=2 to P do //от 2 до P
Объявляем цикл с переменной i от 2 до P (до числа, которое мы ввели с клавиатуры).
if P mod i=0 then //если n делится на i, это делитель if odd(i)then inc(kn) else inc(kc); //нечетный или четный
Если остаток от деления P на i равен нулю, то есть P делится на i без остатка, то смотрим: если i нечетная, то увеличиваем kn на 1, иначе (то есть если i четная), увеличиваем kc на 1.
Объявляем переменные P,i,kc,kn как целочисленный тип.
beginНачало программы.
write('P='); //вводим целое числоВыводим на экран "P=".
readln(P);Считываем переменную P с клавиатуры и переходим на новую строчку.
kc:=0; //четные делителиПрисваиваем переменной kc, в которой будет храниться количество четных делителей, значение 0.
kn:=0; //нечетные делителиПрисваиваем переменной kn, в которой будет храниться количество нечетных делителей, значение 0.
for i:=2 to P do //от 2 до PОбъявляем цикл с переменной i от 2 до P (до числа, которое мы ввели с клавиатуры).
if P mod i=0 then //если n делится на i, это делитель if odd(i)then inc(kn) else inc(kc); //нечетный или четныйЕсли остаток от деления P на i равен нулю, то есть P делится на i без остатка, то смотрим: если i нечетная, то увеличиваем kn на 1, иначе (то есть если i четная), увеличиваем kc на 1.
writeln('Количество четных делителей=',kc,' нечетных=',kn)Выводим на экран: "Количество четных делителей=", значение переменной kc, " нечетных=", значение переменной kn".
end.Конец программы.
--- Python 3.8.3 ---
import typing
from typing import Callable
from typing import AnyStr
from typing import Any
from typing import Iterable
import re
import string
import random
def ClearString(RawString):
return re.sub(r' +', ' ', re.sub(rf'[{string.punctuation}]|\n', '', RawString))
def FillFile(fname:AnyStr, data:Iterable[Any], encoding:AnyStr):
with open(fname,'a',encoding=encoding) as f:
f.write(' '.join(map(str, data)))
def LoadDataFromFile(fname:AnyStr, encoding:AnyStr):
with open(fname, 'r', encoding=encoding) as f:
rawData = f.read()
return rawData
def StringCount(RawString: AnyStr, Selector: Callable[[AnyStr], bool], splitter: AnyStr) -> int:
counter = 0
ToAnalyse = RawString.split(splitter)
for item in ToAnalyse:
if Selector(item): counter += 1
return counter
def main():
#1 половина задания
RandomSeq = [random.randint(-99, 99) for _ in range(random.randint(0, 100))]
FillFile('temp.txt', RandomSeq, 'utf-8')
#2 половина задания
RawText = LoadDataFromFile('temp.txt', 'utf-8')
CleanText = ClearString(RawText)
def IsDouble(s):
temp = str(abs(int(s)))
return len(temp) == 2 and temp[0] == temp[-1]
DoubleNums = StringCount(CleanText, IsDouble, ' ')
print(DoubleNums)
if __name__ == "__main__":
main()
Объяснение: