![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#11 |
Форумчанин
Регистрация: 09.11.2009
Сообщений: 669
|
![]()
rmise, от твоих постов в глазах пястрит уже, почитай правила, пока тебя не оштрафовали, запрещено создавать два и более постов подряд, для этого есть кнопка "Правка"
Я не всегда знаю, о чем говорю, но знаю, что прав. © Мухаммед Али.
К чёрту обстоятельства. Я создаю возможности. © Брюс Ли |
![]() |
![]() |
![]() |
#12 |
Пользователь
Регистрация: 05.05.2010
Сообщений: 11
|
![]()
Ребятки,всем привет=))))
мне нужна помощь по бейсику.... |
![]() |
![]() |
![]() |
#14 |
Старожил
Регистрация: 26.04.2008
Сообщений: 2,645
|
![]()
Я думаю, что rmise попал в "ловушку" компилятора. Проблема уже несколько раз встречалась на форуме.
Вся проблема в строчке s:=m*b; если переменные m или b имеют тип недостаточный для хранения результата их операции. То есть эта строчка с точки зрения машины рассматривается как 2 разных команды. Первая - это умножение m и b, а вторая присваивание результата умножения переменной s. Вот в результате первой команды и происходит переполнение, так как результат будет храниться в типе которых минимально подходит для m и b (в примере это тип integer). А невиновной переменной s присваивается уже заведомо ложное значение. Выход либо в разделении этих 2-х "команд", либо в явнов указании их типов. См, пример: Код:
|
![]() |
![]() |
![]() |
#15 |
Старожил
Регистрация: 04.02.2009
Сообщений: 17,351
|
![]()
Это ошибки округления, а не среды программирования и Экзель им подвержен тоже. Связано с логикой работы математического сопроцессора.
ЗЫ. Даю наводку, есть такая вещь как гугл...
Маньяк-самоучка
Utkin появился в результате деления на нуль. Осторожно! Альтернативная логика ![]() |
![]() |
![]() |
![]() |
#16 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]() Цитата:
Код:
Код:
Код:
I'm learning to live...
|
|
![]() |
![]() |
![]() |
#17 |
Пользователь
Регистрация: 03.11.2007
Сообщений: 22
|
![]()
Мдя...это ещё rmise до деления не дошел
![]() Код:
![]() Что-то явно не так, да? ![]() А теперь с extended: Код:
![]() Во так вот. Правильно надо типы данных подбирать. А говорить, что Delphi не правильно умножает я бы не стал...
WebDelphi.ru - блог о программировании на Delphi
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Написать программу которая все элементы мссива умножает на 2 | FranZuZ | Помощь студентам | 4 | 18.02.2010 15:54 |
правильно ли?? | Babur4iK | Помощь студентам | 1 | 28.01.2010 13:22 |
Delphi. Как правильно подключить модуль? | SnowFall | Помощь студентам | 6 | 12.05.2009 02:34 |
MySQL + Delphi. Как реализовать правильно? | Vlad_55 | БД в Delphi | 4 | 19.11.2007 17:10 |