1.ипполит задумал трёхзначное число, которое при делении на 15 даёт в остатке 11, а при делении на 11 даёт в остатке 9. напишите программу, которая находит все такие числа. в паскале. 2.с клавиатуры вводится натуральное число n. программа должна найти факториал этого числа (обозначается как n! ) –
произведение всех натуральных чисел от 1 до n. например, 5! = 1 • 2 • 3 • 4 • 5 = 120.3.натуральное число называется числом армстронга, если сумма цифр числа, возведенных в n-ную степень (где n – количество цифр в числе) равна самому числу. например, 153 = 1^3 + 5^3 + 3^3.найдите все трёхзначные
армстронга. реши без ошибок.
1)
var i: integer;
begin
for i : = 100 to 999 do
if (i mod 15 = 11) and (i mod 11 = 9)
then writeln(i);
end.
2)
var i,n,s: integer;
begin
read (n);
s : = 1;
for i : = 1 to n do
s : = s * i;
write(s);
end.
3)
var i,j,k: integer;
begin
for i: =1 to 9 do
for j: =0 to 9 do
for k: =0 to 9 do
if i*i*i+j*j*j+k*k*k=i*100+j*10+k
then writeln(i*100+j*10+k);
end.
--- Python 3.8.3 ---
import typing
from typing import Callable
from typing import AnyStr
from typing import Any
from typing import Iterable
from typing import List
from math import inf
#DEFINE User-Types
Numeric = typing.TypeVar('Numeric', int, float, complex)
Primitive = typing.TypeVar('Primitive', int, float, complex, str, bytes, bytearray)
#END
def IndexMax(Array: List[Any]) -> int:
'''
Возвращает индекс первого вхождения максимума для list
'''
_max = -inf
_maxind = 0
for index, item in enumerate(Array):
if item > _max:
_max = item
_maxind = index
return _maxind
def ReadSeq(SeqLen: int, CastType: Primitive = int):
'''
Возвращает последовательность элементов в указанном типе, считанных с клавиатуры, заданной длины.
'''
try:
for _ in range(SeqLen):
yield CastType(input())
except TypeError:
raise RuntimeError(f'Unsupported type: {CastType}')
def ListTransform(Data: List[Any], Tranformer: Callable[[Any], Any], Selector: Callable[[Any], bool] = lambda p: True):
'''Трансформирует элементы list, удовлетворяющие условию, в соответствии с заданным правилом
По умолчанию трансформирует все элементы'''
for index, item in enumerate(Data):
if (Selector(item)):
Data[index] = Tranformer(item)
return Data
def main():
n = int(input())
RawData = list(ReadSeq(n))
Summator = lambda Integer: sum(map(int, list(str(Integer))))
print(IndexMax(ListTransform(RawData, Summator))+1)
if __name__ == "__main__":
main()