|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
17.08.2011, 13:55 | #1 |
Пользователь
Регистрация: 17.08.2011
Сообщений: 14
|
Exitcode_205
Пишет exitcode 205)НЕ ммогу понять, что ему не нравиться) Надо из 16(ричного)2разр. перевести в десятичный.
Код:
________ Код нужно оформлять по правилам: тегом [CODE]..[/СODE] (это кнопочка с решёточкой #) Не забывайте об этом! Модератор. Последний раз редактировалось Ulq; 17.08.2011 в 16:15. |
17.08.2011, 15:06 | #2 |
Форумчанин
Регистрация: 23.11.2010
Сообщений: 530
|
ну что сразу бросается в галаза, эт лишняя запятая
Код:
|
17.08.2011, 15:24 | #3 |
Пользователь
Регистрация: 17.08.2011
Сообщений: 14
|
нет, это не то.Просто я когда копировал код убирал лишние переменные, а так все работает, только выводит "exitcode 205", что с ним то делать?
|
17.08.2011, 16:05 | #4 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
да потому что у вас полная АХИНЕЯ написана!
начиная с того, что Вы ЦЕЛИКОМ переводите число A (хотя думаете, что работаете с одним разрядом) и заканчивая БЕСКОНЕЧНЫМ циклом Код:
вот внутри цикла и происходит ошибка 205 - переполнение вещественного числа! |
17.08.2011, 16:26 | #5 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
варианты решения могут быть от таких (относительно нечестных - используется тот факт, что VAL сам преобразует шестнадцатеричные числа - если в начале строки есть знак $
Код:
Код:
p.s. ваш алгоритм тоже можно довести до ума. Но мой Вам совет. Вместо n := n + 1; k := exp(ln(16) * n); пишите просто: k := k * 16; Уберите тип real - работайте исключительно с целочисленными типами. while (a[i] in ...) замените на if (a[i] in ) там, где val(a, x, c); нужно val(a[i], x, c); |
17.08.2011, 16:27 | #6 |
Пользователь
Регистрация: 17.08.2011
Сообщений: 14
|
Ясно, а другое в голову не приходит) У меня был код, но если в нем поставить сначала букву, а потом цифру тоже ничего не получалось), а третий:
Я писал Код:
" if b:='A' then n:=10;"И от 0..9 - тоже самое.И он получился здоровенный и не 'красивый'=) Подскажите плиз как её написать... |
17.08.2011, 16:30 | #7 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Ulq
смотрите выше... |
17.08.2011, 16:40 | #8 |
Пользователь
Регистрация: 17.08.2011
Сообщений: 14
|
спасибо, в 2 код немного не понятен), но разберусь.Просто я только недавно начал учить, и сейчас решаю задачи по сборнику, а эту никак не получалось) Еще раз спасибо)
|
17.08.2011, 21:33 | #9 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Цитата:
как не странно, но 2-й пример очень близок к вашему алгоритму (ну, если не считать ошибок реализации). Если не разберётесь - обращайтесь. Это - "азбука", поэтому Вам обязательно "разжуют" как и что.. Ну и рекомендую ещё свой вариант довести до ума согласно вышеприведённым замечаниям. p.s. кстати, Вы бы легко сами нашли ошибки в вашем коде, если сделали так, как я - воспользовались пошаговой отладкой! |
|
18.08.2011, 12:31 | #10 |
Регистрация: 20.07.2011
Сообщений: 8
|
16-чная 2-чная
0 0000 1 0001 2 0010 3 0011 4 0100 5 0101 6 0110 7 0111 8 1000 9 1001 A 1010 B 1011 C 1100 D 1101 E 1110 F 1111 Вставляем число в 16 системе в переменную String копируем по символу, сравниваем, находим, удаляем, вставляем. |