#include <stdio.h>
enum state {success,fail,quit};
int status = fail;
int main(void)
{
int n;
char t;
do
{
printf("Enter a number between 0 and 32767: ");
if(scanf("%d", &n
) == 1 && ((n
> 0) && (n
< 32767)) ) status = success;
else
while((t
=getchar()) !='\n' && t
!=EOF
) ; }while (status == fail);
if (status == success)
{
int oct1, oct2, oct3, oct4, oct5;
oct1 = ((((n / 8) / 8) / 8) / 8) % 8;
oct2 = (((n / 8) / 8) / 8) % 8;
oct3 = ((n / 8) / 8) % 8;
oct4 = (n / 8) % 8;
oct5 = n % 8;
printf("In octal, your number is: %d%d%d%d%d\n", oct1
, oct2
, oct3
, oct4
, oct5
); return 0;
}
}
I2luY2x1ZGUgPHN0ZGlvLmg+CmVudW0gc3RhdGUge3N1Y2Nlc3MsZmFpbCxxdWl0fTsKaW50IHN0YXR1cyA9IGZhaWw7CgppbnQgbWFpbih2b2lkKQp7CmludCBuOwpjaGFyIHQ7CiAgICBkbwogICAgewogICAgcHJpbnRmKCJFbnRlciBhIG51bWJlciBiZXR3ZWVuIDAgYW5kIDMyNzY3OiAiKTsKICAgIAogICAgaWYoc2NhbmYoIiVkIiwgJm4pID09IDEgJiYgKChuID4gMCkgJiYgKG4gPCAzMjc2NykpICkKCQlzdGF0dXMgPSBzdWNjZXNzOwogICAgZWxzZQoJCXdoaWxlKCh0PWdldGNoYXIoKSkgIT0nXG4nICYmIHQgIT1FT0YpIDsKICAgIH13aGlsZSAoc3RhdHVzID09IGZhaWwpOwppZiAoc3RhdHVzID09IHN1Y2Nlc3MpCnsKCmludCBvY3QxLCBvY3QyLCBvY3QzLCBvY3Q0LCBvY3Q1OwoKb2N0MSA9ICgoKChuIC8gOCkgLyA4KSAvIDgpIC8gOCkgJSA4OwpvY3QyID0gKCgobiAvIDgpIC8gOCkgLyA4KSAlIDg7Cm9jdDMgPSAoKG4gLyA4KSAvIDgpICUgODsKb2N0NCA9IChuIC8gOCkgJSA4OwpvY3Q1ID0gbiAlIDg7CgpwcmludGYoIkluIG9jdGFsLCB5b3VyIG51bWJlciBpczogJWQlZCVkJWQlZFxuIiwgb2N0MSwgb2N0Miwgb2N0Mywgb2N0NCwgb2N0NSk7CnJldHVybiAwOwp9Cn0=