Что покажет приведенный ниже фрагмент кода num1 4 num2 6 num1 num2 num1 num1 print num1
Перейти к содержимому

Что покажет приведенный ниже фрагмент кода num1 4 num2 6 num1 num2 num1 num1 print num1

  • автор:

Что покажет приведенный ниже фрагмент кода num1 4 num2 6 num1 num2 num1 num1 print num1

Что покажет приведенный ниже фрагмент кода num1 4 num2 6 num1 num2 num1 num1 print num1

  • Open with Desktop
  • View raw
  • Copy raw contents Copy raw contents

Copy raw contents

Copy raw contents

This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters

Вопрос №11270 от пользователя Владислав Кривенко в уроке «Условия и принятия решений», курс «Введение в программирование»

Проанализируйте следующий код (см. «Тернарный оператор» в тексте урока):

// функция-предикат определяет, является ли число num четным const isEven = num => num % 2 === 0; // функция увеличивает полученное число num на 10 const increaseNum = num => num + 10;

const num = 6; const result = isEven(increaseNum(num) + 1) ? num + 1 : 1 — num; Какое значение содержит константа result?

Каким образом мы тут получаем "-5"? Где я ошибаюсь? const isEven = num => num % 2 === 0; тут мы получаем ноль, так как остаток от деления 6/2 равен нулю. Затем мы делаем 0+10, а затем 10+1

Вы, похоже, пропустили внутреннее выражение.

Разбейте const result = isEven(increaseNum(num) + 1) ? num + 1 : 1 — num; на подвыражения. Начинает изнутри:

Да, спасибо, теперь понятно где я ошибался.

А куда делся аргумент "num" из последней строки кода?

const result = false ? num + 1 : 1 — num;

На мой взгляд мы получаем 6+1:1-6=1

В чем моя ошибка?

num + 1 = 7; // куда делся?

Дмитрй, он не сработал потому что у нас fals, а num + 1 это когда у нас true

Решение модуля 7.3 из курса «Поколение python: курс для начинающих»

Полное решение модуля (урока) 7.3 из курса «Пколение python: курс для начинающих» с сайта stepik.org на питоне.

Что покажет приведенный ниже фрагмент кода?
num1 = 4
num2 = 6
num1 += num2
num1 *= num1
print(num1)

Что покажет приведенный ниже фрагмент кода?
total = 0
for i in range(1, 6):
total += i
print(total)

Что покажет приведенный ниже фрагмент кода?
total = 0
for i in range(1, 6):
total += i
print(total, end=»)

Количество чисел

На вход программе подаются два целых числа aa и bb (a \le b)(ab). Напишите программу, которая подсчитывает количество чисел в диапазоне от aa до bb включительно, куб которых оканчивается на 44 или 99.

Формат входных данных
На вход программе подаются два целых числа aa и bb (a \le b)(ab).

Формат выходных данных
Программа должна вывести одно целое число в соответствии с условием программы.

Примечание. Куб числа aa – это его третья степень a^3a3.

Сумма чисел

На вход программе подается натуральное число nn, а затем nn целых чисел, каждое на отдельной строке. Напишите программу, которая подсчитывает сумму введенных чисел.

Формат входных данных
На вход программе подаются натуральное число nn, а затем nn целых чисел, каждое на отдельной строке.

Формат выходных данных
Программа должна вывести сумму данных чисел.

Асимптотическое приближение

На вход программе подается натуральное число nn. Напишите программу, которая вычисляет значение выражения\left(1+\dfrac12 + \dfrac13 + \ldots + \dfrac \right) — \ln (n).(1+21​ +31​+…+n1​)−ln(n).

Примечание. Для вычисления натурального логарифма воспользуйтесь функцией log(n) , которая находится в модуле math .

Сумма чисел

На вход программе подается натуральное число nn. Напишите программу, которая подсчитывает сумму тех чисел от 11 до nn (включительно) квадрат которых оканчивается на 2, \, 52,5 или 88.

Формат входных данных
На вход программе подается натуральное число nn.

Формат выходных данных
Программа должна вывести единственное число в соответствии с условием задачи.

Примечание. Если таких чисел нет в указанном диапазоне, то следует вывести 00.

Факториал

На вход программе подается натуральное число nn. Напишите программу, которая вычисляет n!n!.

Входные данные
На вход программе подается натуральное число n, \, (n \le 12)n,(n≤12).

Выходные данные
Программа должна вывести единственное число в соответствии с условием задачи.

Примечание. Факториалом натурального числа nn, называется произведение всех натуральных чисел от 11 до nn, то естьn!=1\cdot2\cdot3\cdot…\cdot nn!=1⋅2⋅3⋅…⋅n

Без нулей

Напишите программу, которая считывает 10 чисел и выводит произведение отличных от нуля чисел.

Формат входных данных
На вход программе подаются 10 целых чисел, каждое на отдельной строке.

Формат выходных данных
Программа должна вывести произведение отличных от нуля чисел.

Примечание. Гарантируется, что хотя бы одно из 10 чисел является ненулевым.

Сумма делителей

На вход программе подается натуральное число nn. Напишите программу, которая вычисляет сумму всех его делителей.

Входные данные
На вход программе подается натуральное число nn.

Выходные данные
Программа должна вывести единственное число в соответствии с условием задачи.

Примечание. Функция подсчета суммы всех делителей числа является очень важной в теории чисел.

Знакочередующаяся сумма

На вход программе подается натуральное число nn. Напишите программу вычисления знакочередующей суммы 1-2+3-4+5-6 + \ldots + (-1)^ n.1−2+3−4+5−6+…+(−1)n+1n.

Входные данные
На вход программе подается натуральное число nn.

Выходные данные
Программа должна вывести единственное число в соответствии с условием задачи.

Наибольшие числа ?️?️

На вход программе подается натуральное число nn, а затем nn различных натуральных чисел, каждое на отдельной строке. Напишите программу, которая выводит наибольшее и второе наибольшее число последовательности.

Формат входных данных
На вход программе подаются натуральное число n \ge 2n≥2, а затем nn различных натуральных чисел, каждое на отдельной строке.

Формат выходных данных
Программа должна вывести два наибольших числа, каждое на отдельной строке.

Only even numbers ?️

Напишите программу, которая считывает последовательность из 10 целых чисел и определяет является ли каждое из них четным или нет.

Формат входных данных
На вход программе подаются 10 целых чисел, каждое на отдельной строке.

Формат выходных данных
Программа должна вывести строку «YES», если все числа четные и «NO» в ином случае.

Последовательность Фибоначчи ?️

Напишите программу, которая считывает натуральное число nn и выводит первые nn чисел последовательности Фибоначчи.

Формат входных данных
На вход программе подается одно число n\, (n \le 100)n (n≤100) – количество членов последовательности.

Формат выходных данных
Программа должна вывести члены последовательности Фибоначчи, отделенные символом пробела.

Примечание. Последовательность Фибоначчи – это последовательность натуральных чисел, где каждое последующее число является суммой двух предыдущих:1, \, 1, \, 2, \, 3, \, 5, \, 8, \, 13, \, 21, \, 34, \, 55, \, 89, \ldots1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89,…

Что покажет приведенный ниже фрагмент кода total 0 for i in range 1 6 total i print total end

В программирование часто сталкиваются с вопросом перебрать весь список и извлечь из него необходимые данные. Цикл for позволяет перебрать любой итерируемый объект, то есть объект, из которого команда for сможет брать элементы по одному, пока не будет обработан последний элемент, не зависимо от его длины.

Содержание страницы:
1.1. Цикл for в Python
1.2. Аргумент end фунции print
1.3. Действия во время выполнения цикла for
1.4. Основные ошибки с циклом for
2.1. Встроенная функция range
2.2. Создание числового списка с помощью функции range
2.4. Перебор списка по индексам с помощью функции range
3. Генераторы списков

1. Цикл for в Python.

У нас есть список и для того, чтобы не обращаться к каждому элементу по отдельности, мы можем воспользоваться циклом for . В следующем примере переберем список с брендами автомобилей.

>>> cars = ['ford', 'opel', 'audi', 'land rover', 'bmw']
>>> for brend in cars :
. print(brend) # отступ в 4 пробела
.
ford
opel
audi
land rover
bmw

Во второй строке кода определяется цикл for . Python берет каждую торговую марку из списка и сохраняет его в переменной brend. После двоеточия код на следующей строке должен начинается с 4 пробелами. С помощью функции print, название марки выводится в переменной brand. Затем код повторяется до тех пор, пока не закончатся элементы в списке.

1.2. Аргумент end фунции print .

Функция print выводит свой аргумент, после чего курсор перемещает на следующую строку, но при большом количестве элементов в списке, не всегда это удобно. Можно воспользоваться аргументом end, записав его после переменной.

>>> cars = ['ford', 'opel', 'audi', 'land rover', 'bmw']
>>> for brend in cars :
. print(brend, end=' ') # отступ в 4 пробела
.
ford opel audi land rover bmw

Аргумент end записывается в виде end= ' ' . Какое количество пробелов вы укажите, такое и будет после выводится между переменными.

1.3. Действия во время выполнения цикла for .

Во время цикла for помимо вывода элементов, с ними можно выполнять различные действия. К примеру, можно выводить сообщения с каждым проходом цикла, для этого воспользуемся f-строками.

>>> cars = ['ford', 'opel', 'audi', 'land rover', 'bmw']
>>> for brend in cars :
. print(f"Автомобили торговой марки
очень надежные")
.
Автомобили торговой марки Ford очень надежные
Автомобили торговой марки Opel очень надежные
Автомобили торговой марки Audi очень надежные
Автомобили торговой марки Land Rover очень надежные
Автомобили торговой марки Bmw очень надежные

Со строками цикл for работает также как и со списком.

>>> mesage = 'Hello World!'
>>> for i in mesage :
. print(i * 5, end=' ')
.
HHHHH eeeee lllll lllll ooooo WWWWW ooooo rrrrr lllll ddddd .

1.4. Основные ошибки с циклом for .

В Python связь одной строки кода с предшествующей строкой обозначается отступами. В больших программах встречаются блоки кода с отступами в несколько разных уровней. Благодаря отступам, сильно упрощается чтение кода. Основные ошибки как раз и складываются из ошибок в пропущенных или лишних отступах.

  • Пропущенный отступ.

>>> mesage = 'Hello World!'
>>> for i in mesage :
. print(i * 5, end=' ') # нет отступа в 4 пробела
File "<stdin>", line 2
print(i * 5, end=' ')
^
IndentationError: expected an indented block

Для устранения этой ошибки, достаточно поставить в следующей строке после команды for 4 пробела. В основном, если вы работаете в любом современном текстовом редакторе, то после двоеточия он сам поставит отступы на следующей строке.

  • Лишний отступ.
  • Пропущенное двоеточие.

2. 1. Встроенная функция range .

Встроенная функция range() используется для построения числовых последовательностей. В примере используем команду for и функцию range для выполнения ровно 10 итераций с выводом значения от 0 до 10.

>>> for x in range(10) :
. print(x, end=' ')
.
0 1 2 3 4 5 6 7 8 9

При передаче только одного аргумента, последовательность будет начинаться с 0 и до значения аргумента (10), не включая его. Одна из самых распространённых ошибок, это когда разработчик предполагает, что значение аргумента функции range включается в сгенерированную последовательность.

Приведем пример с двумя аргументами. Выведем последовательность от 20 до 30.

>>> for x in range(20, 30) :
. print(x, end=' ')
.
20 21 22 23 24 25 26 27 28 29

2.2. Создание числового списка с помощью функции range .
  • С помощью функции range удобно строить числовые списки.

>>> numbers = list( range(5, 25) )
>>> print(numbers)
[5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24]

  • Функция range может создавать последовательности, пропуская числа в заданном диапазоне. Например, приведем пример построения списка от 0 до 100, с шагом 15.

>>> numbers = list( range(0, 100, 15) )
>>> print(numbers)
[0, 15, 30, 45, 60, 75, 90]

  • С помощью цикла for и функции range можно создавать практически любой числовой список. К примеру, создадим список квадратов всех числе от 1 до 10. Операция возведения в степень обозначается двумя звездочками ( ** ).

>>> a = []
>>> for i in range(1, 11) :
. a.append(i**2)
.
>>> print(a)
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

На каждом цикле переменная возводится в квадрат и добавляется в список.

2.4. Перебор списка по индексам с помощью функции range

С помощью цикла for и функции range список можно перебирать по индексам и с каждым значением в списки, производить любые операции. Приведем пример, перебора списка по индексам, с помощью функции range и функции len, которая определяет длину списка.

>>> list_1 = [1, 3, 5, 10, 12, 20]
>>> for index in range ( len (list_1)):
. list_1[ index ] += 100
.
>>> print(list_1)
[101, 103, 105, 110, 112, 120]

В начале определим длину списка с помощью функции len . Затем это значение передается функции range . В нашем примере длина списка равна 6. С каждым проходом цикла for, index принимает значения от 0 до 6 (не включая 6). В теле цикла мы вызываем список list_1 и обращаемся к элементам списка по индексам, равные значению переменной index . Каждое значение индекса мы увеличивает на 100. Затем с помощью функции print выводим список на экран и видим что все значения увеличены на 100.

С помощью индексов и функции range мы можем объединять информацию из разных списков. В примере ниже мы имеем список с именами, а второй список с фамилиями. Выведем на экран имя и фамилию:

>>> list_4 = ['Artem', 'Serg', 'Georgy', 'Petr']
>>> list_5 = ['Ivanov', 'Petrov', 'Sidorov', 'Ulyanov']
>>> for index in range ( len (list_4)):
. print(list_4[ index ], list_5[ index ])
.
Artem Ivanov
Serg Petrov
Georgy Sidorov
Petr Ulyanov

В результате получили общие данные на экране.

Аналогично можно создавать новые списки из двух или трех списков. Приведем пример перемножения трех списков:

>>> list_1 = [1, 3, 5, 10, 12, 20]
>>> list_2 = [20, -9, 42, 10, 755, 12]
>>> list_3 = [12, 85, 96, 155, 235, 12]
>>> list_new = []
>>> for index in range ( len (list_1)):
. list_new.append(list_1[ index ] * list_2[ index ] * list_3[ index ])
.
>>> print(list_new)
[240, -2295, 20160, 15500, 2129100, 2880]

В начале мы создадим пустой новый список вне цикла, куда будем добавлять результат с помощью функции append. В результате мы получим новый список с результатом перемножения предыдущих списков по индексам.

Важно помнить, что программа будет работать, если вы уверены, что списки одинаковой длины. Проверить это вы всегда можете с помощью встроенной функции len .

3. Генераторы списков в Python .

Состоящий выше пример построения квадратов чисел в разделе 2.2 состоял из нескольких строк кода. Генератор списка позволяет сгенерировать тот же список, но всего в одной строке. Определите название списка, после откройте квадратные скобки. Запишите выражение для значений, в нашем случает i ** 2. Затем напишите цикл for для генерирования чисел, которые будут передаваться выражению и закройте квадратные скобки.

>>> a = [i ** 2 for i in range(1,11)]
>>> print(a)
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

Решение модуля 7.3 из курса «Поколение python: курс для начинающих»

Полное решение модуля (урока) 7.3 из курса «Пколение python: курс для начинающих» с сайта stepik.org на питоне.

Что покажет приведенный ниже фрагмент кода?
num1 = 4
num2 = 6
num1 += num2
num1 *= num1
print(num1)

Что покажет приведенный ниже фрагмент кода?
total = 0
for i in range(1, 6):
total += i
print(total)

Что покажет приведенный ниже фрагмент кода?
total = 0
for i in range(1, 6):
total += i
print(total, end=»)

Количество чисел

На вход программе подаются два целых числа aa и bb (a \le b)(ab). Напишите программу, которая подсчитывает количество чисел в диапазоне от aa до bb включительно, куб которых оканчивается на 44 или 99.

Формат входных данных
На вход программе подаются два целых числа aa и bb (a \le b)(ab).

Формат выходных данных
Программа должна вывести одно целое число в соответствии с условием программы.

Примечание. Куб числа aa – это его третья степень a^3a3.

Сумма чисел

На вход программе подается натуральное число nn, а затем nn целых чисел, каждое на отдельной строке. Напишите программу, которая подсчитывает сумму введенных чисел.

Формат входных данных
На вход программе подаются натуральное число nn, а затем nn целых чисел, каждое на отдельной строке.

Формат выходных данных
Программа должна вывести сумму данных чисел.

Асимптотическое приближение

На вход программе подается натуральное число nn. Напишите программу, которая вычисляет значение выражения\left(1+\dfrac12 + \dfrac13 + \ldots + \dfrac \right) — \ln (n).(1+21​ +31​+…+n1​)−ln(n).

Примечание. Для вычисления натурального логарифма воспользуйтесь функцией log(n) , которая находится в модуле math .

Сумма чисел

На вход программе подается натуральное число nn. Напишите программу, которая подсчитывает сумму тех чисел от 11 до nn (включительно) квадрат которых оканчивается на 2, \, 52,5 или 88.

Формат входных данных
На вход программе подается натуральное число nn.

Формат выходных данных
Программа должна вывести единственное число в соответствии с условием задачи.

Примечание. Если таких чисел нет в указанном диапазоне, то следует вывести 00.

Факториал

На вход программе подается натуральное число nn. Напишите программу, которая вычисляет n!n!.

Входные данные
На вход программе подается натуральное число n, \, (n \le 12)n,(n≤12).

Выходные данные
Программа должна вывести единственное число в соответствии с условием задачи.

Примечание. Факториалом натурального числа nn, называется произведение всех натуральных чисел от 11 до nn, то естьn!=1\cdot2\cdot3\cdot…\cdot nn!=1⋅2⋅3⋅…⋅n

Без нулей

Напишите программу, которая считывает 10 чисел и выводит произведение отличных от нуля чисел.

Формат входных данных
На вход программе подаются 10 целых чисел, каждое на отдельной строке.

Формат выходных данных
Программа должна вывести произведение отличных от нуля чисел.

Примечание. Гарантируется, что хотя бы одно из 10 чисел является ненулевым.

Сумма делителей

На вход программе подается натуральное число nn. Напишите программу, которая вычисляет сумму всех его делителей.

Входные данные
На вход программе подается натуральное число nn.

Выходные данные
Программа должна вывести единственное число в соответствии с условием задачи.

Примечание. Функция подсчета суммы всех делителей числа является очень важной в теории чисел.

Знакочередующаяся сумма

На вход программе подается натуральное число nn. Напишите программу вычисления знакочередующей суммы 1-2+3-4+5-6 + \ldots + (-1)^ n.1−2+3−4+5−6+…+(−1)n+1n.

Входные данные
На вход программе подается натуральное число nn.

Выходные данные
Программа должна вывести единственное число в соответствии с условием задачи.

Наибольшие числа ?️?️

На вход программе подается натуральное число nn, а затем nn различных натуральных чисел, каждое на отдельной строке. Напишите программу, которая выводит наибольшее и второе наибольшее число последовательности.

Формат входных данных
На вход программе подаются натуральное число n \ge 2n≥2, а затем nn различных натуральных чисел, каждое на отдельной строке.

Формат выходных данных
Программа должна вывести два наибольших числа, каждое на отдельной строке.

Only even numbers ?️

Напишите программу, которая считывает последовательность из 10 целых чисел и определяет является ли каждое из них четным или нет.

Формат входных данных
На вход программе подаются 10 целых чисел, каждое на отдельной строке.

Формат выходных данных
Программа должна вывести строку «YES», если все числа четные и «NO» в ином случае.

Последовательность Фибоначчи ?️

Напишите программу, которая считывает натуральное число nn и выводит первые nn чисел последовательности Фибоначчи.

Формат входных данных
На вход программе подается одно число n\, (n \le 100)n (n≤100) – количество членов последовательности.

Формат выходных данных
Программа должна вывести члены последовательности Фибоначчи, отделенные символом пробела.

Примечание. Последовательность Фибоначчи – это последовательность натуральных чисел, где каждое последующее число является суммой двух предыдущих:1, \, 1, \, 2, \, 3, \, 5, \, 8, \, 13, \, 21, \, 34, \, 55, \, 89, \ldots1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89,…

Используем range() с некоторым шагом в Python

Как мы знаем, фукнция range(n) позволяет создать нам список положительных чисел от 0 до n (не включая само число n).

Немногие знают о том, что можно указать и начальное число:

Но совсем немногие из тех немногих, которые знают о том, что можно указать всю разбежку, знают о следующем трюке:

Вы можете передать функции range() третий параметр, который отвечает за шаг функции. Таким образом вы можете, например, итерироваться по всем четным числам:

python books logo

Английский для программистов

Наш телеграм канал с тестами по английскому языку для программистов. Английский это часть карьеры программиста. Поэтому полезно заняться им уже сейчас

Give the output of the following when num1 = 4, num2 = 3, num3 = 2

a) num1+= num2 + num3
Ans: it will not display any output but value of num1 will become 9 because
b) print(num1)

Ans: Will display 9 which is value of num1.
c) num1 = num1 ** (num2 + num3)

Ans: it will not display any output but value of num1 will be updated to 59049 because num1 = num1 ** (num2 + num3) is
num1 = 9**(3+2)
num1 = 9**5
num1 = 9*9*9*9*9
num1 =59049
d) print(num1)
Ans: will display 59049 as num1.
e) num1**= num2 + c

Ans: it will generate error because c is undefined
f) num1 = ‘5’ +’5’

Ans: it will not display any output but num1 will be updated to 55 because
num1 = ‘5’ +’5’
num1 = 55 (because characters are concatenated always not added)
g) print(num1)

Ans: will display 55 as value of num1.
h) print(4.00/(2.0 + 2.0))

Ans: will display 1.0 because
4.00/(2.0 + 2.0)
= 4.00/(4.0)
= 1.0
i) num1 = 2 + 9*((3*12)-8)/10

Ans: will not display any output but num1 will be updated to 27.2 because
num1 = 2 + 9*((3*12)-8)/10
num1 = 2 + 9*(36-8)/10
num1 = 2 + 9*(28)/10
num1 = 2 + 252/10
num1 = 2 + 25.2
num1 = 27.2
j) print(num1)

Ans: will display 27.2 as value of num1.
k) num1 = float(10)

Ans: will not display output but num1 will be updated to 10.0 because
In num1 = float(10) 10 will be converted to 10.0 by float method.
float() is a method in python which returns a floating point value from a number or string.
l) print(num1)

Ans: will display 10.0
m) num1 = int(‘3.14’)

Ans: will not display output but generate error because passing 3.14 as string literal will be unidentified by compiler.
n) print(num1)

Ans: display Error as mentioned in answer no n.
o) print(10!=9 and 20>=20)

Ans: Will display True as output because both conditions 10 != 0 and 20 >= 20 are True.
p) print(5 % 10 + 10 < 50 and 29 <= 29

Ans: will return True because
print (5 % 10 + 10 < 50 and 29 <= 29)
= print (5 + 10 <50 and 29 <=29)
= print (15 <50 and 29<=20)
= print (True and 29<=20)
= print (True and True)
= True

Вопрос №67279 от пользователя Oleg в уроке «Сигнатура функции», курс «Основы Python»

В Python есть функция abs(). Изучите её сигнатуру на странице документации.

Напишите программу, которая использует функцию abs() и выводит на экран модуль суммы двух переменых num1 и num2.

Oleg, отправляйте код на ревью, проверяющему легче будет его смотреть.

Олег, попробуйте поэтапно. Сначала вычислите сумму и присвойте это значение переменной. Потом используя функцию abs() вычислите модуль полученного значения. Тоже присвойте то что получилось переменной. Потом уже выведет на экран то, что получилось через функцию print()

Андрей Моисейкин, // removed так сделал и прокатило

Хорошо, что справились!

Oleg, дай ответ который надо в питоне напсать, 3 часа голову ломаю

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *