1. Создать список из десяти элементов. Заполнить его случайными числами. Заменить все нечетные числа нулями, Вывести исходный и получившийся списки
252
500
Ответы на вопрос:
import random
array = [random.randint(-9**9,9**9) for i in range(500000)]
print(max(array))
Кортеж (tuple) - последовательный набор данных фиксированной длины. данные в кортеже могут быть разного типа, их количество обычно невелико (в pascal abc.net 3 - максимум 7). важно, что кортеж создается на этапе компиляции, поэтому его структура неизменна. данные в кортеже нельзя редактировать - они доступны только на чтение. внешне кортеж выглядит как список. например, список аргументов у функции или процедуры. и запись (record) в паскале - тоже своего рода кортеж. кортежи могут быть весьма полезны. например, в паскале обычно функция возвращает некоторое значение. а если надо, к примеру, два? процедуру делать? кортеж решает эту проблему. ниже пример работающей программы на pascalabc.net 3.3. напомню, что идентификаторы в программе могут содержать символы unicode из любых алфавитных наборов, поэтому имена переменных написаны кириллицей. function divmod(a,b: integer): =(a div b,a mod b); begin var (делимое,делитель): =readinteger2('делимое и делитель: '); var (частное,остаток): =divmod(делимое,делитель); writeln('частное = ',частное,', остаток = ',остаток) end. пример делимое и делитель: 356432 242 частное = 1472, остаток = 208 пример демонстрирует возможности, которые открывают кортежи. функция divmod возвращает кортеж из двух элементов. кортежу она состоит из единственного оператора и это позволило записать её в одну строку. содержимое кортежа определяется заданными выражениями, их тип - типом результата (integer). readinteger2 - это функция, возвращающая кортеж из двух элементов типа integer, принятых с клавиатуры. левая часть оператора присваивания var (делимое,делитель): = реализует так называемое кортежное присваивание. (делимое,делитель) - это запись кортежа, поскольку перечисление находится в круглых скобках. но именно в таком употреблении это одновременно две различные переменные, которым будет присвоено значение элементов кортежа. кортеж в правой части "распаковывается" так, что значение первого элемента кортежа попадает в первую переменную, а второе - во вторую. в результате оказалось достаточно одного оператора, заменяющего три: var делимое,делитель: integer; write('делимое и делитель: '); read(делимое,делитель); еще одно кортежное присваивание var (частное,остаток): =divmod(делимое,делитель); создает две переменные типа integer и распаковывает в них кортеж, возвращаемый функцией divmod. и только процедура вывода writeln() написана без кортежа. чтобы показать, как можно использовать элементы кортежа без распаковки, пример запишем иначе. function divmod(a,b: integer): =(a div b,a mod b); begin var (делимое,делитель): =readinteger2('делимое и делитель: '); var t: =divmod(делимое,делитель); writeln('частное = ',t[0],', остаток = ',t[1]) end. здесь t - кортеж типа (integer,integer). присваивание одного кортежа другому делается обычным способом. в обращении к элементам кортежа мы пользуемся синтаксисом, принятым для элементов массива, индексированных от нуля. понятно, что в кратком ответе невозможно описать все, что языку программирования кортежи. закончить хочу примером того, как кортеж позволят обменять местами значения двух переменных: (a,b): =(b,a); и, поскольку вы раньше задавали вопрос о лямбдах -вот она: begin var divmod: (integer,integer)-> (integer,integer): =(a,b)-> (a div b,a mod b); var (делимое,делитель): =readinteger2('делимое и делитель: '); var t: =divmod(делимое,делитель); writeln('частное = ',t[0],', остаток = ',t[1]) end.
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
соня158406.04.2021 11:41
-
qqwrrtu19.05.2023 21:30
-
oleg02225.07.2020 11:12
-
gubanvitalya15.11.2021 06:10
-
taschurkova06.05.2022 22:19
-
sonyasm200617.03.2020 21:18
-
natamelnichenko02.02.2023 08:55
-
dtgyhyccubbycy11.02.2023 19:33
-
vipvip16tk02.06.2021 05:09
-
Ивангай22866607.11.2022 22:22
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.