Как включить отрицательные значения для моего кода? Преобразование системы счисления - PullRequest
0 голосов
/ 02 октября 2019

Я создал программу для преобразования любого положительного десятичного числа (основание 10) в любое основание, и это прекрасно работает. Как я могу реализовать это для учета отрицательных десятичных знаков?

int main() {

    int num, base, i, r, digit, p, count = 0;

    char a[100];

    printf("Enter a decimal number: \n");
    scanf("%d", &num);

    printf("Enter the base to convert to: \n");
    scanf("%d", &base);

    p=num;
    do {
        r = p % base;
        digit = '0' + r;

        if (digit > '9')
            digit = digit+7;
        a[count]=digit;
        count++;
        p=p/base;
    } while (p!=0);

    printf("\n%d in base %d is: \n",num, base);

    for (i=count-1;i>=0;--i)
        printf("%c",a[i]);

    printf(".\n");

    return 0;
}

1 Ответ

0 голосов
/ 02 октября 2019

Вы можете проверить, является ли вход отрицательным. Если это так, умножьте его на -1, чтобы получить положительное значение, и после преобразования этого положительного значения в другое основание добавьте этот отрицательный знак обратно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...