2016-04-27 5 views
0

Здравствуйте коллег программистов,Клев Ограничение 0-9

INT основной() Int N;

scanf("%d", &n ,); 
printf("nibble = %d%d%d%d", (n/8)%2, (n/4)%2, (n/2)%2 , n%2); 

return 0;} 

Я создал этот код до сих пор, код преобразует десятичное значение в кусок.

Работает, но у меня есть вопросы относительно того, как ограничить ввод 0-9, без использования, если statemens. Есть ли возможность сделать это, и как? На данный момент код использует 0 - 15 десятичных знаков. И не могли бы вы привести мне пример или объяснить мне, чтобы я мог его понять.

Спасибо!

ответ

0

, что не представляется возможным без использования условий

, но сказать нам, что ваша программа должна делать, если десятичный> 9 гнал в?

scanf("%d", &n ,); 
if ((n>=0) && (n<10)) 
    printf("nibble = %d%d%d%d", (n/8)%2, (n/4)%2, (n/2)%2 , n%2); 
else 
    printf("err: input out of range"); 
+0

, но можете ли вы дать мне возможный пример даже с условиями, может быть, пожалуйста? – Sali

+0

приятно поблагодарить вас, так что && в середине второй линии защищает оба входа n> 0 и n <10 вправо? – Sali

+0

Я добавил пример выше. Кстати, вы объявили n как «int» - его подписанный var в большинстве компиляторов. если вы пишете «unsigned int», вы можете удалить первое условие (n> = 0). – user3336433