Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Перевод отрицательного десятичного числа в другую систему изчисления - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Что значит "возвращает" значение http://www.cyberforum.ru/cpp-beginners/thread1187503.html
Что значит "возвращает значение"? Вот есть function() { int variable = 5; ...//преобразования переменной variable ...
C++ Дописать код сортировки Что дописать,если строчек у меня n штук,нужно удалять лишние символы разделители, т.е. идет у меня подряд .,; и так после каждого слова есть лишние символы-разделители,оставался лишь первый... http://www.cyberforum.ru/cpp-beginners/thread1187487.html
Вывести слово, которое можно выложить из данного количества палочек C++
256 мегабайт, 2 секунды У пятиклассника Димы есть N счётных палочек, и он очень любит выкладывать из этих палочек слова. Однажды Дима пришёл из школы, где на уроке английского языка узнал...
Считать с файла книги после заданного года C++
В общем, программа добавляет книги в файл, считывает их оттуда, и всякое разное.. Случилась одна проблема: не могу я считать из файла только те книги которые были изданы после указанного мной с...
C++ Построить график по точкам из файла http://www.cyberforum.ru/cpp-beginners/thread1187475.html
У меня есть файл, в котором есть координаты моих точек и еще всякий мусор. Мне надо считать координаты с этого файла и построить график по ним. Я написал прогу для построения прямой по 2 точкам, но...
C++ Функции и массивы 1. Написать функцию, проверяющую по возрастанию или убыванию упорядочена указанная строка двумерного массива. Упорядочить по возрастанию все строки двумерного массива, которые не упорядочены по... подробнее

Показать сообщение отдельно
rafull6
0 / 0 / 0
Регистрация: 22.02.2013
Сообщений: 32

Перевод отрицательного десятичного числа в другую систему изчисления - C++

25.05.2014, 14:49. Просмотров 180. Ответов 0
Метки (Все метки)

Здравствуйте! Есть программа которая реализует перевод из десятичной системы исчисления в другую (указывается в самой программе). Проблема в том что программа не видит отрицательных чисел и не переводит их. Помогите поправить код что бы программа видела отрицательные числа и переводила их тоже (с учетом бита знака)

Вот код программы:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <locale.h>
 
int main()
{
    // пример организации ввода с ограничением
    int n;
    do {
        printf("Enter first number: ");
        scanf_s("%d", &n);
        fflush(stdin); // сброс нераспознаваемого "мусора"
    } while( n<0 );
 
    const int radix = 5; // основание СС тоже можно спросить у пользователя
    char buffer[]="0000000000";
    int i=3; // позиция в буфере первой записываемой цифры
 
    do {
        int x = n % radix;
        n = n / radix;
        char z;
        if( x<10 )
            z='0'+x;
        else
            z='A'-10+x;
        //printf("%c", z );
        buffer[i]=z; // вместо вывода на экран, записываем в буфер в обратном порядке
        i--;
    } while (n>0);
 
    // только в конце выводим результат
    printf("\nResult number: %s\n", buffer);
 
    _getch();
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru