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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
masterflash
0 / 0 / 0
Регистрация: 13.12.2011
Сообщений: 9
#1

направьте на путь истинный) перевод систем счисления - C++

23.09.2013, 00:36. Просмотров 477. Ответов 3
Метки нет (Все метки)

прошу помощи. как реализовать перевод из 10 сис.счисления в любую другую(по моему примеру)?вроде бы все должно идти верно..

в кнопке пишу:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
void __fastcall TForm1::Button1Click(TObject *Sender)
{
int а=31; //число
int i=0;
int b[10]; //получаемый массив цифр
int osn=2; //основание системе счисления
int ch; //частное при делении числа на основание
 
while (ch>osn) {
ch=a/osn;
b[i]=a-ch*osn;
a=ch;
i++;
}
 
b[i]=ch;
Label1->Caption=b[i];
}
должен вывести массив цифр в системе счисления с основанием "osn". подскажите, что в моем примере не так.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.09.2013, 00:36
Здравствуйте! Я подобрал для вас темы с ответами на вопрос направьте на путь истинный) перевод систем счисления (C++):

Направьте на путь истинный - C++
Содержание работы: Написать программу, реализующую обмен (чтение/запись) данных по схемам "Оперативная память - Внешняя память" или...

Направьте на путь истинный!) - C++
Здравствуйте господа и леди форума) Начал я изучать язык программирования с++, выбрал книжку для новичка " Р.Флюре." Ооп в с++, она наверно...

Перевод систем счисления. - C++
Здравствуйте, сразу оговорюсь: занимаюсь программированием три дня. Я вот пытался сделать программу по переводу числа из 16-ричной системы...

перевод систем счисления - C++
1. Задание: Напишите программу перевода чисел из 2 системы в 10. 2.Задание: Напишите программу выполнения арифметических операций в...

Перевод систем счисления - C++
Здраствуйте, на входе имеется некое десятеричное число (примеры:1 / 2,8 / 0,123456) как перевести в другую систему счисления пробовал...

Перевод систем счисления - C++
Здравствуйте,помогите пожалуйста доработать программу перевода числа в разные системы счисления.Нужно чтобы заместо цифр 10 11 12 13 14...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
nexen
187 / 180 / 3
Регистрация: 27.01.2012
Сообщений: 1,335
23.09.2013, 12:26 #2
masterflash, ну как минимум while(ch>osn) - ошибка, ибо ch не инициализировано до цикла. А вообще, всё делается проще (если использовать твои наименования):
C++
1
2
3
4
5
6
7
8
int a, osn = 2, i = 0;
int b[1000];
while (a != 0)
{
b[i] = a % osn;
a /= osn;
++i;
}
Только учитывая, что число в массиве b записано в обратном порядке, т.е. для вывода (на C++) сразу после этого кода:
C++
1
2
3
4
5
6
--i; // ибо i было равно кол-ву цифр, а массив у нас от 0 до i-1
while(i >= 0)
{
printf("%d ", b[i]);
--i;
}
1
masterflash
0 / 0 / 0
Регистрация: 13.12.2011
Сообщений: 9
23.09.2013, 15:58  [ТС] #3
Цитата Сообщение от nexen Посмотреть сообщение
masterflash, ну как минимум while(ch>osn) - ошибка, ибо ch не инициализировано до цикла. А вообще, всё делается проще (если использовать твои наименования):
C++
1
2
3
4
5
6
7
8
int a, osn = 2, i = 0;
int b[1000];
while (a != 0)
{
b[i] = a % osn;
a /= osn;
++i;
}
Только учитывая, что число в массиве b записано в обратном порядке, т.е. для вывода (на C++) сразу после этого кода:
C++
1
2
3
4
5
6
--i; // ибо i было равно кол-ву цифр, а массив у нас от 0 до i-1
while(i >= 0)
{
printf("%d ", b[i]);
--i;
}
спасибо за отклик, я пробую:

C++
1
2
3
4
5
6
7
8
9
10
11
void __fastcall TForm1::Button1Click(TObject *Sender)
{
int a=31, osn = 2, i = 0;
int b[1000];
while (a != 0)
{
b[i] = a % osn;
a /= osn;
++i;
}
Label1->Caption=b[i];
на этом этапе он должен выводить массив, где цифры расположены пока что наоборот,верно? (с++ builder)
пс: числу a,для примера,присвоил сразу "31"
0
nexen
187 / 180 / 3
Регистрация: 27.01.2012
Сообщений: 1,335
23.09.2013, 16:50 #4
masterflash, на этом этапе он просто сформировал массив. Я понятия не имею, что такое
C++
1
Label1->Caption=b[i];
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.09.2013, 16:50
Привет! Вот еще темы с ответами:

перевод чисел из систем счисления - C++
Составить программу перевода чисел из десятичной системы счисления в систему с основанием: 12; 31; 3; и программу обратного перевода

Наставте на истинный путь начинающего - C++
Дорогие друзья я изучил основы языка C++.И хотел бы продвигаться дальше в область программирования игр.Подскажите пожалуйста может быть...

Направьте на верный путь - C++
"Дана символьная матрица размера 4 х 5. Из последовательности её строк сформировать новую строку и определить ее длину. Проверить наличие...

Направьте меня на верный путь... - C++
У меня задача: Дана символьная матрица размера 4 х 5. Из последовательности её строк сформировать новую строку и определить ее длину....


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
23.09.2013, 16:50
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru