Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / помогите незнающему / 5 сообщений из 5, страница 1 из 1
14.07.2003, 22:23
    #32207720
j0hn
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите незнающему
Господа, помогите незнающему.

var
A, B, C, F, Y: real;
X, U: Integer;
begin
U := 1;
....
case cbMesto.ItemIndex of
0: Y := 2;
1: Y := 1.8;
2: Y := 1.6;
3: Y := 1.3;
4: Y := 1;
5: Y := 0.6;
6: Y := 0.4;
if (cbBase.text = 'xxx') and (cbMesto.text = 'yyy') then
Y := U + 1;

ERROR: Constant expression expected

Не могу найти ошибку....=(
...
Рейтинг: 0 / 0
14.07.2003, 22:42
    #32207727
Cat2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите незнающему
Может cbMesto.ItemIndex за дипазон вываливается? И что то я не вижу END для CASE. А отладчик-то, на какой строке вываливается?
...
Рейтинг: 0 / 0
14.07.2003, 23:23
    #32207735
j0hn
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите незнающему
отладчик вываливается на строке Y := U + 1;


case cbMesto.ItemIndex of
0: Y := 2;
1: Y := 1.8;
2: Y := 1.6;
3: Y := 1.3;
4: Y := 1;
5: Y := 0.6;
6: Y := 0.4;
if (cbBase.text = 'xxx') and (cbMesto.text = 'yyy') then
Y := U + 1;
....
end;
...
Рейтинг: 0 / 0
15.07.2003, 08:26
    #32207823
m_kus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите незнающему
Ну Вы даёте!
Надо писать так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
var 
A, B, C, F, Y: real; 
X, U: Integer; 
begin 
U :=  1 ; 
.... 
case cbMesto.ItemIndex of 
 0 : Y :=  2 ; 
 1 : Y :=  1 . 8 ; 
 2 : Y :=  1 . 6 ; 
 3 : Y :=  1 . 3 ; 
 4 : Y :=  1 ; 
 5 : Y :=  0 . 6 ; 
 6 : begin Y :=  0 . 4 ; 
if (cbBase.text = 'xxx') and (cbMesto.text = 'yyy') then 
Y := U +  1 ; end;
end; //case

или, скорее всего, так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
var 
A, B, C, F, Y: real; 
X, U: Integer; 
begin 
U :=  1 ; 
.... 
case cbMesto.ItemIndex of 
 0 : Y :=  2 ; 
 1 : Y :=  1 . 8 ; 
 2 : Y :=  1 . 6 ; 
 3 : Y :=  1 . 3 ; 
 4 : Y :=  1 ; 
 5 : Y :=  0 . 6 ; 
 6 : Y :=  0 . 4 ;
end; //case 
if (cbBase.text = 'xxx') and (cbMesto.text = 'yyy') then 
Y := U +  1 ; 

Компилятор ругается на оператор внутри case он ждёт строки:
Код: plaintext
число: оператор;
или:
Код: plaintext
 else оператор;
или
Код: plaintext
end;

А! может и так
...
Рейтинг: 0 / 0
15.07.2003, 09:59
    #32207910
j0hn
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите незнающему
огромное спасибо!
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / помогите незнающему / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]