IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

> Калькулятор
antonioSP
сообщение 4.05.2006 13:17
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 16
Пол: Мужской

Репутация: -  0  +


Помогите плз с програмкой. Нужно сделать калькулятор считающий в разных системах счисления. В десятично я сделал, а как реализовать в других понятия не имею. Подскажите как лучше и проще это сделать.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
Closed Topic Открыть новую тему 
Ответов
volvo
сообщение 19.05.2006 16:03
Сообщение #2


Гость






Да, правильно. Не добавил еще одно условие:
function ToDec(n:string; radix:longint):real;
var
_int: longint;
_frac: real;

s: string;
i, p: byte;
const
digit: string[16]='0123456789ABCDEF';

begin
p := pos('.', n);
if p = 0 then s := n
else s := copy(n, 1, p - 1);

_int := 0; _frac := 0.0;

while s[1] = '0' do delete(s, 1, 1);
for i := 1 to length(s) do
_int := _int * radix + pos(n[i], digit) - 1;

if (p <> 0) and (p < length(n)) then begin // <--- Здесь !!!

s := copy(n, p + 1, 255);
while s[length(s)] = '0' do delete(s, length(s), 1);

for i := 1 to length(s) do
_frac := _frac + 1 / stepen(radix, i);

end;
ToDec := _int + _frac;
end;


Проверь сейчас.
 К началу страницы 
+ Ответить 

Сообщений в этой теме
antonioSP   Калькулятор   4.05.2006 13:17
volvo   В чем именно у тебя затруднения? Как это оформить,...   4.05.2006 14:10
antonioSP   Мне как раз не ясно как реализовать, какими алгори...   4.05.2006 18:45
lapp   Или же работать в заданной системе, или переводит...   5.05.2006 1:48
volvo   Погоди... Насколько я помню, на форуме уже поднима...   4.05.2006 18:52
antonioSP   А можно ли работать в в одной и той же системе счи...   5.05.2006 19:16
lapp   А можно ли работать в в одной и той же системе сч...   6.05.2006 7:32
antonioSP   Прошу помощи в поиске ошибке в процедуре ToDec для...   19.05.2006 12:38
volvo   antonioSP, ошибка далеко не там, где тебе кажется:...   19.05.2006 12:47
volvo   А вообще, я бы сделал так: function ToDec(n:string...   19.05.2006 13:15
antonioSP   Спасибо тебе большое, правда функция не совсем кор...   19.05.2006 15:47
volvo   Да, правильно. Не добавил еще одно условие: functi...   19.05.2006 16:03
antonioSP   Спасибо за помощь, но опять косячок. При вводе дро...   19.05.2006 17:14
volvo   Спасибо за помощь, но опять косячок.Ну само собой ...   27.05.2006 19:47
antonioSP   Это я уже заметил и исправил :) Но у меня опять ...   28.05.2006 19:00
volvo   Аргумент передаешь в градусах? А Delphi вообще-то ...   28.05.2006 19:14
antonioSP   :) Не знал что в Делфях в радианах. Спасибо тебе v...   28.05.2006 19:28


Closed Topic Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 10.07.2025 0:08
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"