+ 1

Python 21.3

Задание на пайтоне Выдаёт одну из пяти ошибок

5th Apr 2021, 1:59 PM
Иван Титов
Иван Титов - avatar
28 Answers
+ 5
Ну и толку? Все числа деляться на два и четные и нечетные. Только нечетное например будет 7 /2 -> 3.5, -> 0.5 откинеться, вообще 3 получится. Есть функция поднятия до большего целого значения например 3.5 подниметься до 4, но в нашем случае это не то.
6th Apr 2021, 6:24 AM
Yaroslav Vernigora
Yaroslav Vernigora - avatar
+ 3
Это очень хороший оператор, он много где может пригодиться. Например в задаче про автобусы и пассажиров. Если тебе такая задача попадется
6th Apr 2021, 6:42 AM
Yaroslav Vernigora
Yaroslav Vernigora - avatar
+ 2
У меня не вышло твою программу модифицировать по минимуму, чтоб прошло все тесты, пришлось сильно ее поменять и у меня сработало... 😉
6th Apr 2021, 6:13 AM
Yaroslav Vernigora
Yaroslav Vernigora - avatar
+ 2
😆 вообщем так, подскажу. ты неправильно делаешь проверку. Что значит // ? Я уже забыл. Целочисленное деление?
6th Apr 2021, 6:16 AM
Yaroslav Vernigora
Yaroslav Vernigora - avatar
+ 2
Тебе надо использовать % оператор "модуло" 🤭 остаток от деления. Если при делении на "модуло" 2 == 0... то сам понимаешь (%2 ==0)
6th Apr 2021, 6:27 AM
Yaroslav Vernigora
Yaroslav Vernigora - avatar
+ 2
Ну так правильно! Как проверить четное число? Оно будет делиться на 2 без остатка! Ферштейн?
6th Apr 2021, 6:31 AM
Yaroslav Vernigora
Yaroslav Vernigora - avatar
+ 2
Тесты то мы прошли, но в самом коде такая себе особенность нехорошая. При делении на % 1 и четные и нечетные числа выдает результат 0. Я только что проверил. Поэтому если бы это была серьезная программа, то наверно была бы ошибка, при какомто значении. Не знаю. Надо бы потестить этот вариант
6th Apr 2021, 6:51 AM
Yaroslav Vernigora
Yaroslav Vernigora - avatar
+ 2
Ну я решал это не так. 1. Проверка на четность. 2. Если число рано нулю. 3. Во всех остальных случаях (это уже заведомо нечетное) умножаю на три
6th Apr 2021, 6:57 AM
Yaroslav Vernigora
Yaroslav Vernigora - avatar
+ 2
Ярослав Вернигора(Yaroslav Vernigora), >>> И я вот не пойму, как вы так вот в условии ифа просто делаете деление, без оператора сравнения? Что, так можно было? Можно до тех пор, пока классе объекта присутствует метод __bool__ (вызывается конструктором bool для преобразования объекта в булевское значение). В int он возвращает False если число равно 0, иначе True.
6th Apr 2021, 2:41 PM
#0009e7 [get]
#0009e7 [get] - avatar
+ 1
Привет! Задание "учитывая четность?"
5th Apr 2021, 5:38 PM
Yaroslav Vernigora
Yaroslav Vernigora - avatar
+ 1
Можно глянуть сам код?
6th Apr 2021, 5:50 AM
Yaroslav Vernigora
Yaroslav Vernigora - avatar
+ 1
Скопируй там в окне решения и либо сразу сюда вставляй или создай файл в разделе коды { }, сохрани там и сюда давай ссылку
6th Apr 2021, 5:53 AM
Yaroslav Vernigora
Yaroslav Vernigora - avatar
+ 1
Да? У тебя к примеру вот эта строка с делением на три вообще лишняя. Можешь удалить ее
6th Apr 2021, 6:03 AM
Yaroslav Vernigora
Yaroslav Vernigora - avatar
+ 1
И я вот не пойму, как вы так вот в условии ифа просто делаете деление, без оператора сравнения? Что, так можно было? 😁 я бы например вот так написал: if (number // 2 == 0):
6th Apr 2021, 6:06 AM
Yaroslav Vernigora
Yaroslav Vernigora - avatar
+ 1
Добавил оператор сравнения, теперь в 4м все норм Ошибка в первом 😂
6th Apr 2021, 6:14 AM
Иван Титов
Иван Титов - avatar
+ 1
Спасибо, Натюрлих!
6th Apr 2021, 6:38 AM
Иван Титов
Иван Титов - avatar
+ 1
Ну просто Красавчик! 😆
6th Apr 2021, 6:41 AM
Yaroslav Vernigora
Yaroslav Vernigora - avatar
0
Привет! Задание "учитывая четность?" Да, и так и так перефразировал код, все ровно 4й тест не правильный
6th Apr 2021, 5:50 AM
Иван Титов
Иван Титов - avatar
0
Как его скинуть?
6th Apr 2021, 5:51 AM
Иван Титов
Иван Титов - avatar
0
Number = int(input()) If (number // 2): Print (number * 2) Elif (number // 1): Print (number * 3) Elif(number // 3): Print(number * 3) Else: Print(0)
6th Apr 2021, 5:54 AM
Иван Титов
Иван Титов - avatar