170 похожих чатов

Здравствуйте. У меня задача удалить все 0 из числа. Проблема

в том что на выход получаю перевернутое число. Как можно решить эту проблему?
Ввожу: 120406
Получаю: 6421

n = int(input())
while n > 0:
if n % 10 != 0:
print (n % 10, end='')
n = n // 10

39 ответов

19 просмотров

print(int(input().replace("0", "")))

Replace строковый метод

Мы и строку получаем

V- Автор вопроса

Спасибо. Совсем забыл про него

👍

return int("".join([x for x in str(n)[::-1] if x != "0"]))

в одну строку

Гоано код. Replace зря что ли придумали

... логики в твоих словах нету время тратить смысла тоже нету

Молодец

та не ты че, прав ты, молодец получается тоже ты

ну так по факту же. у тебя и перебор и сбор. еще й листкомпрех зачем то. твой вариант хуже всем

Тормози да . Времени же у тебя нет . На хер пустоту разводить

В том то и дело что я не сказал что мой способ эффективнее в плане производительности! Просто как вариант вкинул решение в 1 строку, че вы начинаете.

Та успокойся)) Все в порядке парень)

Не слушай даунов сверху, которые тебе советуют реплейс и т. п. вплоть до регулярок. Это джуны, которые ЧСВ сюда своё потешить пришли, пока админы спят, они буянят :) Ты скорее всего проходишь курсы, судя по твоей задаче. Подразумевается, что ты должен решить эту задачу без приведения числа к строке (т. е. не банально однострочником print(input().replace("0", ""))). Начнёшь решать с этим ограничением и сразу почувствуешь, насколько это труднее, чем отключить мозг и вызвать replace().

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

но если окажется что он проходил раздел по строкам извинишь перед парнями

Тему функций ещё не проходил? Если проходил, или просто знаешь, что это такое, и что оно принимает аргументы и возвращает значение — рассматривай задание так, будто тебе нужно написать функцию, которая принимает какое-то пользовательское число, и возвращает тоже число типа integer (и именно integer!) согласно условию. Ну и преобразование к str в этой функции не использовать.

Повешусь. Я уже заебал, чуть ли не вторая бессонная ночь

а это что то уже усложнение. тоже джун которой с чсв пришел?)

Да, джун-аутсайдер, решил вот алгоритмами повыёбываться

Хуего получается

V- Автор вопроса

Это задание (ссылка) к уроку про while. Задачу решил, но у меня получилось все длинно, некрасиво и без while.

Так вот, для решения твоей задачи стоит создать перед циклом переменную, в которую результат запишешь (в начале 0), а так же в моем решении появился ещё вспомогательный множитель (в начале 1, конечно же). В самом цикле мы первым делом определяем цифру, по которой итерируемся на данный момент. Далее всё просто: если она не 0, мы умножаем цифру на множитель, а затем добавляем в результат, и умножаем множитель на десять. Зачем умножать цифру на множитель? Чтобы сохранить разрядность результата. 120406 — первая итерация, берём число 6. Множим на 1 (вспомогательный множитель у нас в начале равен единице). Множитель умножаем на 10. Итог: res будет 6 на данном этапе. factor— 10. Следующий шаг. Цифра 0 — пропускаем. Следующий. Цифра 4 — не ноль, умножаем уже на десять, res после этого шага выходит 46… И так далее. Вот код: n = 120406 factor = 1 res = 0 while n > 0: digit = n % 10 if digit != 0: res += digit * factor factor *= 10 n = n // 10 print(res)

Реверс можно сделать

За твои советы с replace() тебе бы ебало разбить

На хуй иди да. Нормальные советы , рабочие

Тебе на собесе дают элементарнейшее задание: на вход число, на выход число из цифр в обратном порядке исходного. Будешь str() юзать?

Ты со степика курс проходишь?

Revers

V- Автор вопроса

Спасибо. Понял. Пойду переделаю

И вообще , был вопрос- был ответ. Где он решает , что - мне было неясно

Не говоря уже о том, что ты не прошёл собес, вызови у любой строки метод >revers или какой ты там имел ввиду?

С каких пор там вообще нужны функции и методы? Ебашишь [::-1] и поехали

+

Мб он reversed() билт-ин имел ввиду ещё…

V- Автор вопроса

Нет. Ссылка Задание к 19

Ну задания по базе практически везде одинаковы

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта