Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > Оператор case


Автор: PIF 30.6.2005, 12:46
Здравствуйте! Скажите пожалуйста как правильно записать следующий код:
Код

case volum of
0.025: error_V:=0.1;
0.05: error_V:=0.1;
0.1: error_V:=0.2;
0.2: error_V:=0.2;
0.25: error_V:=0.2;
0.5: error_V:=0.3;
1: error_V:=0.6;
else error_v:=0;
end;

Выдает ошибку:
[Error] Unit1.pas(569): Ordinal type required
[Error] Unit1.pas(570): Incompatible types: 'Integer' and 'Extended'

Автор: Satana 30.6.2005, 12:50
в кейсе могут быть только Integer в качестве разделителя

Автор: Akella 30.6.2005, 13:19
а какого типа переменная volume?
больше кода, господа, не стесняйтесь

Автор: Girder 30.6.2005, 13:22
Код
case trunc(volum*1000) of
 25: error_V:=0.1;
 50: error_V:=0.1;
 100: error_V:=0.2;
 200: error_V:=0.2;
 250: error_V:=0.2;
 500: error_V:=0.3;
 1000: error_V:=0.6;
else error_v:=0;
end;



PIF пользуйся тегами Code!

Автор: mvdr 30.6.2005, 13:25
Код

volum_new:=volum*1000;

case volum_new of
25: error_V:=0.1;
50: error_V:=0.1;
100: error_V:=0.2;
200: error_V:=0.2;
250: error_V:=0.2;
500: error_V:=0.3;
1000: error_V:=0.6;
else error_v:=0;
end;

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)