Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.09.2007, 15:28   #1
=LeonZone=
Форумчанин
 
Аватар для =LeonZone=
 
Регистрация: 15.08.2007
Сообщений: 118
Радость Перевод целых чисел из одной системы счисления в другую

Необходимо написать такую программу... Выбор системы счисления производится пользователем, а желательно вообще в Edit вводить)
Есть у кого-нибудь готовые функции или что-то в этом роде? Вообщем помогите пожалуйста!
=LeonZone= вне форума Ответить с цитированием
Старый 18.09.2007, 16:13   #2
bill
Форумчанин
 
Аватар для bill
 
Регистрация: 26.04.2007
Сообщений: 440
По умолчанию

алгоритм перевода любой системы счисления в двоичную выкладывал здесь.(там с коментами) В другие аналогично.
bill вне форума Ответить с цитированием
Старый 18.09.2007, 21:08   #3
Tayfun
Форумчанин
 
Аватар для Tayfun
 
Регистрация: 24.06.2007
Сообщений: 351
По умолчанию

Программа перевода из k-ричной в j-ричную систему счисления. Алгоритм сделан на Паскале для Delphi аналагично!
SISSCHIS.rar
Я не маюсь бездельем, я от него тащусь!
Tayfun вне форума Ответить с цитированием
Старый 18.09.2007, 21:28   #4
=LeonZone=
Форумчанин
 
Аватар для =LeonZone=
 
Регистрация: 15.08.2007
Сообщений: 118
По умолчанию

Оказывается это не так уж и сложно! Огромное спасибо)
=LeonZone= вне форума Ответить с цитированием
Старый 23.09.2007, 18:28   #5
bill
Форумчанин
 
Аватар для bill
 
Регистрация: 26.04.2007
Сообщений: 440
По умолчанию

Улучшенный варант кода + сам проект-вложение. Все работает.
Вложения
Тип файла: zip Система_счисления.zip (211.6 Кб, 715 просмотров)
bill вне форума Ответить с цитированием
Старый 04.10.2007, 22:53   #6
Ruver000
 
Регистрация: 04.10.2007
Сообщений: 6
По умолчанию

А если нужно допустим перевести 69A в 16ой системе (число и система вводится пользователем) в 4ую(система тоже вводится пользователем) систему...
Ruver000 вне форума Ответить с цитированием
Старый 07.10.2007, 18:16   #7
jopa
Новичок
Джуниор
 
Регистрация: 07.10.2007
Сообщений: 2
По умолчанию

Цитата:
Сообщение от Tayfun Посмотреть сообщение
Программа перевода из k-ричной в j-ричную систему счисления. Алгоритм сделан на Паскале для Delphi аналагично!
Вложение 1044
Несовсем ясен твой алгоритм. Не пойму что за чем происходит.
1я половина програмы ясна - перевод с 10й системы в указаную.
Но что делает 2я половина проги я так и не понял
//
Введите число
-13
Введите систему
-17
D
Введите систему
-19
Введите число
-D
13
//
Что за нах?
с 10й число 13 перевело в 17ричную - вышло D. потом я ввожу 19ричную систему и этоже число D а мне выводит 13. Хотя по сути она должна была перевести число с 17й в 19ю систу счисления.
jopa вне форума Ответить с цитированием
Старый 07.10.2007, 19:27   #8
Tayfun
Форумчанин
 
Аватар для Tayfun
 
Регистрация: 24.06.2007
Сообщений: 351
По умолчанию

Цитата:
Что за нах?
с 10й число 13 перевело в 17ричную - вышло D. потом я ввожу 19ричную систему и этоже число D а мне выводит 13. Хотя по сути она должна была перевести число с 17й в 19ю систу счисления.
Кароче... ТАм маленькая опечатка есть, вот правильный вариант:
Код:
program schisleniya;
uses crt;
var
b2,ss,b,s:string;
os,c,e,ch,p,i,j,n,k:integer;
begin
clrscr;
s:='123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_';{36}
writeln('VVEDITE CHISLO');
read(n);
writeln('VVEDITE SISTEMU SCHISLENIYA');
read(k);
while n>=1 do begin
p:=n mod k;
if p>=10 then b:=copy(s,p,1) else str(p,b);
ss:=b+ss;
n:=n div k;
end;
writeln(ss);
writeln('VVEDITE SISTEMU SHISLENIYA');
readLN(k);
writeln('VVEDITE CHISLO');
readln(sS);
c:=length(ss);
for i:=1 to c do begin
b:=copy(ss,i,1);
for j:=1 to 36 do begin
b2:=copy(s,j,1);
if b=b2 then os:=j;
end;
ch:=k*ch+os;
end;
writeln(ch);
readkey;
end.
Вторая часть переводит из k-ричной системы счисления в 10-ричную
1)Вводишь систему счисления.
2)Вводишь число в этой системе счисления
Я не маюсь бездельем, я от него тащусь!
Tayfun вне форума Ответить с цитированием
Старый 07.10.2007, 22:16   #9
jopa
Новичок
Джуниор
 
Регистрация: 07.10.2007
Сообщений: 2
По умолчанию

Цитата:
Сообщение от Tayfun Посмотреть сообщение
Кароче... ТАм маленькая опечатка есть, вот правильный вариант:
Код:
program schisleniya;
uses crt;
var
b2,ss,b,s:string;
os,c,e,ch,p,i,j,n,k:integer;
begin
clrscr;
s:='123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_';{36}
writeln('VVEDITE CHISLO');
read(n);
writeln('VVEDITE SISTEMU SCHISLENIYA');
read(k);
while n>=1 do begin
p:=n mod k;
if p>=10 then b:=copy(s,p,1) else str(p,b);
ss:=b+ss;
n:=n div k;
end;
writeln(ss);
writeln('VVEDITE SISTEMU SHISLENIYA');
readLN(k);
writeln('VVEDITE CHISLO');
readln(sS);
c:=length(ss);
for i:=1 to c do begin
b:=copy(ss,i,1);
for j:=1 to 36 do begin
b2:=copy(s,j,1);
if b=b2 then os:=j;
end;
ch:=k*ch+os;
end;
writeln(ch);
readkey;
end.
Вторая часть переводит из k-ричной системы счисления в 10-ричную
1)Вводишь систему счисления.
2)Вводишь число в этой системе счисления
Благодарю. Теперь разобрался
Немного подгонки под себя и понесу здавать 1ю лабораторку

Последний раз редактировалось jopa; 07.10.2007 в 22:20.
jopa вне форума Ответить с цитированием
Старый 16.12.2007, 13:42   #10
RIO
Форумчанин
 
Аватар для RIO
 
Регистрация: 15.12.2007
Сообщений: 422
По умолчанию

Код:
program schisleniya;
s:='123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_';{36}
for j:=1 to 36 do begin
36 - это что ? ? ? Я так понял до 36-ричной системы включително можна вычислять или я ошибаюсь? Возможно с этой программой можна вычислить какую угодно систему?
RIO вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перевод из одной системы исчисления в другую. Svop Помощь студентам 7 20.12.2010 19:00
Программа перевода из одной системы счисления в другую - Turbo Pascal 7.0. Prescott Помощь студентам 5 19.03.2010 19:26
Перевод из одной системы счисления в другую Sky_VSUH Помощь студентам 1 28.02.2008 20:18
перевести числа с одной системы счисления в другую Informer Общие вопросы C/C++ 3 23.11.2007 16:21