#python-3.x
Вопрос:
Я пытаюсь вывести остаток числа(userInput) при делении на 2 на каждой итерации в Python. У меня есть аналогичный код на C, который выглядит так:
#include <stdio.h>
#include <stdlib.h>
main()
{
int i;
printf("Enter a number: ");
scanf("%d",amp;i);
for(i=i; i <= 1000; i = i/2){
if (i==0){
break;
}
printf("%dn",i%2);
}
system("pause");
}
Комментарии:
1. Постарайтесь быть более ясным. Чего именно вы пытаетесь достичь? код C, который вы опубликовали, каждый раз делит число на 2, а затем получает напоминание о результате. Например, если пользовательский ввод равен 56, он будет напечатан: (56%2) -> 0, (28%2) ->> 0, (14%2) ->>> 0 (7%2) ->>>> 1 .. и так далее.
2. Да, могу ли я использовать ту же логику в python. Я пытался, но, похоже, это невозможно. У меня есть такой же код на JAVA, как этот: номер открытого класса{ public static void main(String[]args){ для ( int i =64; i
Ответ №1:
Как насчет чего-нибудь вроде этого:
user_number = int(input('Please enter a numbern'))
while (user_number > 1):
print('{}%2 = {}'.format(user_number, user_number % 2))
user_number = user_number / 2
Пожалуйста, поправьте меня, если я неправильно понял назначение кода.
Комментарии:
1. Я бы также предложил цикл while в вашем коде на языке Си. Как вы можете видеть, я также добавил дружественный шрифт.
2. Да, я обязательно постараюсь.