вопрос к упражнениям по практикуму Python.


#21


#22

Тренажер - хитрая бестия.
К сожалению, без подписки не могу глянуть свой код, хотя раньше свободно листал
по всем уровням...
По коду что могу сказать... У Вас даже при первом вводе отрицательного числа оно проверяется только на следующей итерации, и выводит это число перед этим все равно.
Может, это и не нравится мистеру Тренажеру...
Попробуйте что-то типа этого:

number = 0
str_ = "Enter a positive integer."
number = int(input(str_))
while number >= 0:
    print("You nave entered", number)
    number = int(input(str_))

P.S. И для того, чтобы можно было код вставлять, тут надо пустую строку добавлять перед вставкой, а то не работает...


#23

Перепробовал кучу вариантов, ничего не подходит. И comp3 = complex(6, -2) - в уроке был именно такой пример, и comp3 = 6 - 2j пробовал, и что-то еще. В Pycharm проблем нет, все работает.:thinking:


#24

Доброго дня.
Вариант
comp3 = complex("6-2j")
тоже не подходит?

В описании функции:

При преобразовании из строки строка не должна содержать пробелов вокруг центрального оператора + или -
Если первый параметр является строкой, он будет интерпретирован как комплексное число, и функция должна вызываться без второго параметра.


#25

Доброго времени суток.

Условные конструкции - задание 1:
Создайте переменную A, присвойте ей значение 10.
Выведете сообщение на консоль “A – is greater than 5”, только при условии, если A больше 5.

Код:

A = 10
if A > 5: 
print("A – is greater than 5")

Никак не проходит. Перепробовано все что только можно. Что в данном случае может понадобится тренажеру?


#26

Странно, код 1 в 1 как мой (5 строк):

A = 10

if A > 5:
    print("A - is greater than 5")

Часто вывод в консоль копируют из задания, чтобы не набирать ручками.
Попробуйте дефис поменять на минус, они могут быть похожи, не забудьте пустую 5 строку, попробуйте вместо табуляции в 4 строке поставить 4 пробела. Я с 8 попытки только ублажил тренажер :slight_smile:
По поводу тире, информация для размышления:
ради интереса скопировал строку из задания слева в редактор справа, потом из редактора в текстовый документ, изменил в редакторе тире "-" на минус "-", скопировал второй строкой в текстовый документ, сохранил и открыл в hex-редакторе, как оказалось, в первой строке тире имеет аж 3 байтовый код E2 80 93 (Среднее тире с кодом U+2013), а во второй это обычный минус (значение с кодом U+002D).
ppp


#27

Таки подошло, спасибо :slightly_smiling_face:


#28

Действительно, дело было в злосчастном тире-минусе. Спасибо за подсказку, тут действительно не угадаешь с тобой что-то не так или с тренажером и заданием. Видимо по какой-то причине кодировка сбивается, не сильна в этом, но замечание интересное.

С заданием, про которое спрашивали выше, я так же какое-то время мучилась. В самом условии не сказано, что нужно каждый раз выводить строчку "Вы ввели число такое-то". Перепробовав n-е число вариантов, наткнулась на верный, быть может кому-то пригодится.
Циклические конструкции в Python -> задание 2

number = 0
str_ = "Enter a positive integer: "
while number >= 0:
    number = int(input(str_))
print("You have entered", number)

#29

Подскажите пожалуйста по заданию.
Напишите код в соответствии с инструкциями в задании
Напишите функцию с именем func которая будет выводить в консоль числа от 0 до 4, каждое в новой строке если ее запустить без параметров. Либо числа от 0 до n-1, где n – параметр функции. Используйте цикл while и переменную итератор i. Цикл while должен проверять условие (i != n).

...

code

...

func()

Мой код:
def func(n=5):
i = int()
while i != n:
print(i)
i += 1
func()
в компиляторе все отлично работает, при этом тренажер выдает ошибку...