0 / 0 / 0
Регистрация: 21.06.2013
Сообщений: 12
1

Перевод из одной системы счисления в другую от 2 до 36

22.06.2013, 11:12. Показов 25449. Ответов 15
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите пожалуйсто, сколько сижу ничего стоющего не приходит в голову!
Дано целое неотрицательное число в I-ричной системе счисления. Вывести это число в J-ричной системе счисления. Ограничения: 2 <= I, J <= 36, для представления цифр 10...35 используются прописные латинские буквы A...Z соответственно, число разрядов исходного числа не превышает 1000. При вводе: В первой строке находятся числа I и J (в десятичной системе счисления), во второй строке - число для перевода. При выводе: Вывести искомое число. Если число начинается с буквы, перед ней не должно быть нуля. Примеры
Ввод 1
10 36
29234652
Вывод 1
HELLO
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.06.2013, 11:12
Ответы с готовыми решениями:

Системы счисления. Перевод из одной системы счисления в другую.
Задание: Написать программу на языке С++ или Turbo Pascal для переведа числа, представленного в...

Перевод с одной системы счисления в другую
Приветствую вас, товарищи программисты. Помогите пожалуйста. Не могу решить, маленькую проблемку....

Перевод из одной системы счисления в другую
Подскажите в чем ошибка: Uses crt; const a:array of char=('0', '1', '2', '3', '4', '5', '6',...

Перевод из одной системы счисления в другую
Есть программа , переводящая число из одной системы счисления в другую , используя текстовые файлы...

15
Эксперт С++
4267 / 2241 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
22.06.2013, 19:35 2
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
#include <iostream.h>
#include <cstring>
#define DIG "0123456789ABCDEFGHIGKLMNOPQRSTUVWXYZ"
using namespace std;
 
int Atoi(char *s, int p){
    int i, a, digit[256] = {0};
    for(i = 0; DIG[i]; i++)
        digit[DIG[i]] = i;
    for(i = a = 0; s[i]; i++)
        a = a * p + digit[s[i]];
    return a;
}
 
void Itoa(int a, int p, char *s) {
   static int i = 0, n;
   if (a) {
      ++i;
      Itoa(a / p, p, s);
      s[n - i--] = DIG[a % p];
   }
   else
      s[n = i] = '\0';
}
 
int main(){
   char s[1024] = "29234652";
   Itoa(Atoi(s, 10), 36, s);
   cout << s << endl;
   return 0;
}
0
0 / 0 / 0
Регистрация: 21.06.2013
Сообщений: 12
23.06.2013, 18:12  [ТС] 3
Спасибо, только он с большим количеством символов не хочет работать, выдаёт пустую строку в выводе
0
Эксперт С++
4267 / 2241 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
23.06.2013, 18:19 4
Цитата Сообщение от kenedy542 Посмотреть сообщение
Спасибо, только он с большим количеством символов не хочет работать, выдаёт пустую строку в выводе
покажите пример
0
415 / 411 / 95
Регистрация: 06.10.2011
Сообщений: 832
23.06.2013, 18:25 5
@kenedy542, а вы не забывайте, что int вмещает максимально 2^31 - 1
1
Эксперт С++
4267 / 2241 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
23.06.2013, 18:31 6
Цитата Сообщение от kenedy542 Посмотреть сообщение
число разрядов исходного числа не превышает 1000
Хммм... не заметил. нужно тоже самое, только с длинной арифметикой.
0
0 / 0 / 0
Регистрация: 21.06.2013
Сообщений: 12
23.06.2013, 20:42  [ТС] 7
В общем щас я скину фотографию с тестами, которые программа должна пройти
0
0 / 0 / 0
Регистрация: 21.06.2013
Сообщений: 12
23.06.2013, 20:50  [ТС] 8
https://www.cyberforum.ru/atta... 1372006228
Миниатюры
Перевод из одной системы счисления в другую от 2 до 36  
0
Эксперт С++
4267 / 2241 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
23.06.2013, 20:56 9
а откуда эти тесты, что за систему пишите?
0
0 / 0 / 0
Регистрация: 21.06.2013
Сообщений: 12
23.06.2013, 21:01  [ТС] 10
Цитата Сообщение от Thinker Посмотреть сообщение
а откуда эти тесты, что за систему пишите?
В общем это летняя практика у 1гго курса))
0
Olivеr
23.06.2013, 21:10
  #11

Не по теме:

Цитата Сообщение от kenedy542 Посмотреть сообщение
В общем это летняя практика у 1гго курса))
Прикольно. Вам тесты дают, а нам не давали:(

0
Эксперт С++
4267 / 2241 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
23.06.2013, 21:10 12
первым делом реализуйте длинную арифметику, а затем функции Atio и Itoa немного преобразовать останется.
0
0 / 0 / 0
Регистрация: 21.06.2013
Сообщений: 12
23.06.2013, 21:16  [ТС] 13
Цитата Сообщение от Thinker Посмотреть сообщение
первым делом реализуйте длинную арифметику, а затем функции Atio и Itoa немного преобразовать останется.
Вопрос наверное глупый, но что значит реализовать длинную арефметику несовсем понимаю))
0
Эксперт С++
4267 / 2241 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
23.06.2013, 21:17 14
http://ru.wikipedia.org/wiki/%... 2%E8%EA%E0
1
0 / 0 / 0
Регистрация: 21.06.2013
Сообщений: 12
25.06.2013, 14:23  [ТС] 15
Цитата Сообщение от Thinker Посмотреть сообщение
К сожалению, из-за моего недостаточного знания С++(мало его изучаю только, 1 семестр) не могу понять этот метод и его в дальнейшем использовать. Не можешь его реализовать? пробовал другими способами написать эту программу, частично используя твой алгоритм, но мне сказали что без Длинной арифметики ничего не поделаешь...
0
Эксперт С++
4267 / 2241 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
25.06.2013, 14:26 16
Цитата Сообщение от kenedy542 Посмотреть сообщение
не могу понять этот метод и его в дальнейшем использовать.
так у вас
Цитата Сообщение от kenedy542 Посмотреть сообщение
это летняя практика у 1гго курса
вот и займитесь плотнее этим вопросом, время как раз для этого.
0
25.06.2013, 14:26
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.06.2013, 14:26
Помогаю со студенческими работами здесь

Перевод из одной системы счисления в другую
Посмотрите, пожалуйста, кому не сложно код в с++. При компиляции выдает ошибку invalid function...

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

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

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

Перевод из одной системы счисления в другую
Составить программу для перевода чисел из восьмеричной системы счисления в десятичную. Написать...

Перевод из одной системы счисления в другую
Программа для перевода числа со знаком из 2 в 10 систему счисления и обратно. 2=&gt;10=&gt;2. ...


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

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru