В
Все
М
Математика
О
ОБЖ
У
Українська мова
Д
Другие предметы
Х
Химия
М
Музыка
Н
Немецкий язык
Б
Беларуская мова
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
Р
Русский язык
У
Українська література
Ф
Французский язык
П
Психология
А
Алгебра
О
Обществознание
М
МХК
В
Видео-ответы
Г
География
П
Право
Г
Геометрия
А
Английский язык
И
Информатика
Қ
Қазақ тiлi
Л
Литература
И
История

Найди самого большого. Пользователь вводит последовательность целых">

Показать ответ
Ответ:
kirillkleptzov
kirillkleptzov
15.10.2020 15:17

--- 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

Primitive = typing.TypeVar('Primitive', int, float, complex, str, bytes, bytearray)

#END

def ReadSeqWhile(predicate: Callable[[int], bool], SeqType: Primitive = int):

   '''

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

   '''

   temp = SeqType(input())

   while predicate(temp):

       yield temp

       temp = SeqType(input())

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 main():

   RawData = ReadSeqWhile(lambda p: p != 0)

   print(IndexMax(RawData)+1)

       

if __name__ == "__main__":

   main()

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота