С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 28.03.2012
Сообщений: 9

Ограничение диапазона числа в шестиричной системы счисления

10.12.2012, 08:24. Показов 3526. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Составить программу для работы с целыми числами в шестиричной системе счисления.
Для хранения таких чисел использовать стандартный тип long int, но ограничиться только цифрами 0,1,2,3,4,5. Учесть, что при таком представлении можно работать только с числами, ограниченными диапазоном типа long int. В качестве диапазона чисел в шестиричной системе счисления можно взять значения от –2145555555 до 2145555555.
1) Составить функцию для перевода таких чисел в десятичную систему счисления. Функция должна получать исходное число в форме параметра и возвращать результат.
2) Составить функцию для перевода чисел из десятичной системы счисления в шестиричную. Функция должна получать исходное число и возвращать результат в форме параметров, а возвращаемое самой функцией значение должно отслеживать переполнение.
С горем пополам в шестиричную и обратно перевела, а вот как ограничить диапазон чисел в шестиричной системе от –2145555555 до 2145555555 (выходное значение функции Obratno)
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
#include <stdio.h>
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
#include <iostream.h>
#include <limits.h>
#include <math.h>
#define BASE 6
 
bool is5digit(long int x);
long int BASEto10(long int a);
long int Obratno(long int a);
 
int main(void){
    long int x, y, arevers;
    printf("a=");
    scanf("%ld", &x);
     if(is5digit(x))
        {printf("Vvedeno 6-noe chislo\r\n");
            y = BASEto10(x);
    printf("a=%ld\n", y);
    arevers = Obratno(y);
    printf("Decimal notation: a=%ld\n", arevers);  }
    else
        printf("Oshibka vvoda\r\n");
    cin.get();
    return 0;
}
 
long int BASEto10(long int a){
    int k=1;
    long int a10=0;
    while (a) {
        a10 += k*(a%10);
        k *= BASE;
        a /= 10;
    }
    return a10;
};
 
long int Obratno(long int a){
    int k=0;
    long int arevers=0;
    while (a) {
      div_t n;
      n = div(a, (long int)BASE);
      a=n.quot;
      arevers+=pow((float)10,k)*n.rem;
      ++k;
    }
    return arevers;
  };
  bool is5digit(long int x)
{
    bool RetVal = true;
    char chBuf[32];
    sprintf(chBuf,"%d",x);
    for(int i = 6; i < 9; i++)
    {
        if(strchr(chBuf,(int)'0' + i))
            RetVal = false;
    }
    return RetVal;
    }
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
10.12.2012, 08:24
Ответы с готовыми решениями:

Перевода вещественного числа из шестиричной в десятичную систему счисления
Собственно, не могу найти функцию перевода вещественного числа из 6 сс в 10ую(у меня есть функция перевода целой части, но с дробной не...

Перевод натурального числа из десятичной системы счисления в систему счисления по основанию
Здравствуйте. Я хотела бы попросить у вас помощи. Я понимаю, что это не очень красиво, но вдруг кто-нибудь откликнется. Я не очень...

Простейший алгоритм перевода числа из 10 системы счисления в 16 ричную систему счисления
Помогите написать самый простой алгоритм перевода из 10 системы счисления в 16 ричную систему счисления! Мне нужен именно самый простенький...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
10.12.2012, 08:24
Помогаю со студенческими работами здесь

Перевод числа из 8-ичной системы счисления в 16-ричную систему счисления и обратно.
Написать программу на С++. Перевод из 8 системы счисления в 16 систему счисления и обратно из 16 с/с в 8 с/с. Условия к программе: ...

Рекурсия: перевод целого числа из десятичной системы счисления в 9 систему счисления
Написать рекурсивную функцию перевода целого числа из десятичной системы счисления в 9-чную систему счисления.

Перевод числа из любой системы счисления в десятичную систему счисления
дано число типа integer, записанное в любой другой системе счисления. перевести это число в 10сс. Очень нужна помощь!!

Перевод числа из восьмеричной системы счисления в шестнадцатеричную систему счисления
Вот пример числа: 754 = 1EC 1000 = 200

Написать программу которая будет переводить числа из 14-ой системы счисления в 8-ую систему счисления
Помогите. очень нужно. Если можно, то как можно скорее) заранее спасибо) что-то у самой не получается(


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru