» Главная
eXcode.ru » Статьи » Задачи » С решениями
» Новости
» Опросы
» Файлы
» Журнал



Пользователей: 0
Гостей: 2





Системы счисления




Условие задачи:

Написать программу для перевода числа из десятичной в любую другую систему счисления (основание не больше 16).


Мое решение на Delphi


program Project1;

{$APPTYPE CONSOLE}

uses
SysUtils;
const z:array[0..15] of char = (′0′,′1′,′2′,′3′,′4′,′5′,′6′,′7′,′8′,′9′,′A′,′B′,′C′,′D′,′E′,′F′);

var x,a: integer;
s:string;

begin
readln(a);
readln(x);
s:=′′;
if a=0 then s:=′0′ else
if x<=16 then begin
while a>0 do begin
s:=z[(a mod x)]+s;
a := a div x;
end;
end;
write(s);
readln;
end.
К началу статьи





Добавил: LedWormДата публикации: 2005-06-02 16:59:31
Рейтинг статьи:3.50 [Голосов 4]Кол-во просмотров: 17624

Комментарии читателей

Всего комментариев: 7

2009-03-10 13:56:51
чсмпимм
пралограл

2007-12-20 00:19:31
Zяяяя
Спасибо=)

2007-10-26 18:56:38
Влад
переведите пожалуйста от 0 до 100 из десятичной системы счисления в сисемы счичления от двоичной до двадцатипятеричной

2007-10-17 09:25:23
Марина
Вы не знаете как решить задачу?Пример.Равенство 201р=53 в шестеричной системе счисления справедливо ли в системе счисления с основанием р:1)3. 2)10. 3)4. 4)6. 5)5

2007-06-03 22:52:19
Александр
Вот, что я придумал на С. Ограничимся тем что представление числа в 10-ой системе счисления влезает в unsigned.

void Convert(char*Num,int in_base,char*Res,int out_base){
unsigned r=0,rem;

for(;*Num;Num++)
r=r*in_base+(isalpha(*Num)?*Num-'A'+10:*Num-'0');

for(;r;r/=out_base){
rem=r%out_base;
*Res++=rem<10?rem+'0':rem-10+'A';
}
*Res=0;//только надо реверс у массива сделать..а то циферки в обратном порядке записаны
}

2007-05-18 12:14:04
алена
Не нравится

2006-04-06 18:40:15
m4Xgr
нужно обязательно обработать условие когда х=1,иначе получится зацикливание программы
Ваше имя: *
Текст записи: *
Имя:

Пароль:



Регистрация

Вы жалеете, что Билли уходит на пенсию?
Гореть ему в АДУ!!!
41% (53)
Побыстрее бы ушел!
5% (6)
Уйдет он, придет другой!
28% (36)
А мне все равно, я Mac юзаю!
2% (3)
Жаль, дядю Билла :(
12% (15)
Может он передумает?!
13% (17)

Проголосовало: 130
Звонит браток в компютерный магазин:
- Але, козлы, чe вы мне за комп продали!? Не работает!
- А вы кнопку "power" на нём нажали?
- Да я её два раза нажал, всё равно не работает!
Рейтинг: 3.8/10 (4)
Посмотреть все анекдоты