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

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

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 31.10.2007, 23:30   #1
BETONOMESHALKA
Пользователь
 
Аватар для BETONOMESHALKA
 
Регистрация: 25.06.2007
Сообщений: 40
По умолчанию [Error] Unit1.pas(40): Incompatible types: 'Integer' and 'Extended

Делфа пишет ошибку '''''[Error] Unit1.pas(40): Incompatible types: 'Integer' and 'Extended''''' Вот мой код '''''
''''''''''''''''''''''''''''''''''' ''''''''''''''''
t1:= strtoint(edit1.text);
t2:= strtoint(edit2.Text);
s:= strtoint(edit3.Text);

v1:= s/t1;
v2:= s/t2;
v3:= (v1+v2)/2;
v4:= s/v3;
''''''''''''''''''''''''''''''''''' ''''''
Help me please.
Граф дракула наш кумир
Патамушта он ВОМПИР!
BETONOMESHALKA вне форума Ответить с цитированием
Старый 01.11.2007, 00:21   #2
Карась
Участник клуба
 
Аватар для Карась
 
Регистрация: 26.10.2007
Сообщений: 1,244
По умолчанию

попробуй переобозначить переменные... Не integer, а real поставь. Или variant.

Вроде как делфи ненравится "деление" и "интеджер"
Умом Россию не понять, пока не выпито ноль пять,
А если выпито ноль пять всё делом кажется не хитрым,
Попытка глубже понимать уже попахивает литром...
Карась вне форума Ответить с цитированием
Старый 01.11.2007, 00:27   #3
Roof
Форумчанин
 
Аватар для Roof
 
Регистрация: 01.02.2007
Сообщений: 785
По умолчанию real real ))

скорее всего ты объявляешь v1, v2, v3, v4 как integer, а их нада объявить как real
вобщем держи исходник полностью
Вложения
Тип файла: rar Projects.rar (5.3 Кб, 61 просмотров)
Изо всей благодати
В руках крепко сжатых
Я донесу только капли
Roof вне форума Ответить с цитированием
Старый 01.11.2007, 10:07   #4
BETONOMESHALKA
Пользователь
 
Аватар для BETONOMESHALKA
 
Регистрация: 25.06.2007
Сообщений: 40
По умолчанию

Благодарю
Граф дракула наш кумир
Патамушта он ВОМПИР!
BETONOMESHALKA вне форума Ответить с цитированием
Старый 15.03.2014, 12:38   #5
Камиль1965
Новичок
Джуниор
 
Регистрация: 15.03.2014
Сообщений: 1
По умолчанию вопрос устаревший но может кому еще интересно..

если все переменные интегер и они нужны в дальнейшем в программе как интегер, то деление надо делать с округлением типа:

voprosov_vsego:=trunc(strok_vsego/8);- отбрасывается остаток

например, результат 12,3 будет 12

или
voprosov_vsego:=rpund(strok_vsego/8); - округляется до целого числа

например, результат деления 12,3 будет 12, а результат деления 12,5 будет 13.
Камиль1965 вне форума Ответить с цитированием
Старый 15.03.2014, 13:40   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Такое округление может глюкнуть, из-за неточности работы процессора с вещественными. Оно то конечно правильный подход для расчета координат на экране (к примеру), но в случае автора нужно просто использовать div и не морочить голову.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 15.03.2014, 13:51   #7
XE5
Заблокирован
 
Регистрация: 02.03.2014
Сообщений: 439
По умолчанию

Универсальное решение по ошибкам, выдаваемым делфи. Имеется к примеру ошибка
'[Error] Unit1.pas(40): Incompatible types: 'Integer' and 'Extended
Приводим её к виду:
Incompatible types: 'Integer' and 'Extended
Вбиваем в любой поисковик, просвещаемся. Сложно?
XE5 вне форума Ответить с цитированием
Старый 15.03.2014, 13:56   #8
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,291
По умолчанию

Вы прикалываетесь - теме СЕМЬ лет.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 15.03.2014, 13:59   #9
XE5
Заблокирован
 
Регистрация: 02.03.2014
Сообщений: 439
По умолчанию

Новое, это хорошо забытое старое. Не глянул даты. Кстати по поводу приколов. Хранить в БД форума темы семилетней давности, вот это реальный прикол.
XE5 вне форума Ответить с цитированием
Старый 15.03.2014, 17:26   #10
eoln
Старожил
 
Аватар для eoln
 
Регистрация: 26.04.2008
Сообщений: 2,645
По умолчанию

Раз уж все некромантией занялись, то и я добавлю.
Цитата:
Сообщение от Камиль1965 Посмотреть сообщение
например, результат деления 12,3 будет 12, а результат деления 12,5 будет 13.
12,5 будет округлено до 12 (а вот 13,5 => 14), round - это банковское округление к ближайшему чётному.
XE5, почему же это плохо? Это позволяет не отвечать на однотипные вопросы, а просто посылать всех в поиск. Кстати, срок хранения сообщений на форуме обсуждался, так что поиск в помощь
eoln вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ошибка - [Error] Unit1.pas(325): Operator not applicable to this operand type blackstersl Общие вопросы Delphi 6 27.08.2008 13:17
Delphi Incompatible types Iogan Gamba Puti Помощь студентам 1 19.06.2008 13:45
Unit1 -> Unit2 Shouldercannon Общие вопросы Delphi 7 14.06.2008 00:43
[Error] UIsp.pas(232): Incompatible types: 'TAge' and 'TDateTime' Nikitin Общие вопросы Delphi 2 03.04.2008 11:56
[Error] MainUnit.pas(100): Incompatible types: 'Cardinal' and 'TCaption' ben95 Общие вопросы Delphi 2 02.02.2008 14:35