Есть ответ 👍

• Составить программу, которая будет менять все четные числа в списке (массиве) на 0 и нечетные числа на 1. • Организовать введение данных в список с цикла for i in range (n): (n – число, которое задает количество элементов в списке). Можно организовать введение чисел с генератора случайных чисел или пользователем.

289
315
Посмотреть ответы 2

Ответы на вопрос:

ZnayNeZnay
4,8(13 оценок)

import typing

from typing import Callable

from typing import AnyStr

from typing import Any

from typing import Iterable

from typing import List

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 ReadSeq(SeqLen: int, CastType):

   '''

   Возвращает последовательность элементов в указанном типе, считанных с клавиатуры, заданной длины.

   '''

   try:

       for _ in range(SeqLen):

           yield CastType(input())

   except TypeError:

       raise RuntimeError(f'Unsupported type: {CastType}')

def main():

   n = int(input())

   Lst = list(ReadSeq(n, int))

   def Filter(number):

       if number % 2 == 0: return 1

       else: return 0

   print(*ListTransform(Lst, Filter))

 

if __name__ == "__main__":

   main()

PaFaS123
4,6(46 оценок)

1) за 0.57 секунды 5.7 мб \ 10 мб = 0.57. 2) 1гб=1024мб. 2.1 гб \ 5мб= 2.1*1024 мб\5мб ~430 секунд ~7,1 минут 3) не знаю : (

Популярно: Информатика