11.12.2010, 20:21
|
#26
|
|
Dis is one half
Регистрация: 19.10.2007
Адрес: Санкт-Петербург
Сообщений: 1,460
Репутация: 304
|
Скрытый текст:
Цитата:
Сообщение от Дарио
begin
writeln('enter the course');
readln(K1);
writeln('enter the order');
readln(ord);
case K1 of
north: case ord of
forw: begin K2:=north; writeln(K2); end;
backw: begin K2:=south; writeln(K2); end;
left: begin K2:=west; writeln(K2); end;
right: begin K2:=east; writeln(K2); end;
east: case ord of
forw: begin K2:=east; writeln(K2); end;
backw: begin K2:=west; writeln(K2); end;
left: begin K2:=north; writeln(K2); end;
right: begin K2:=south; writeln(K2); end;
south: case ord of
forw: begin K2:=south; writeln(K2); end;
backw: begin K2:=north; writeln(K2); end;
left: begin K2:=east; writeln(K2); end;
right: begin K2:=west; writeln(K2); end;
west: case ord of
forw: begin K2:=west; writeln(K2); end;
backw: begin K2:=east; writeln(K2); end;
left: begin K2:=south; writeln(K2); end;
right: begin K2:=north; writeln(K2); end;
end.
|
Это называется китайский код
Если религия не запрещает поставить соответствие между направлениями и цифрами, то можно сделать так:
Добавлено через 21 минуту
Цитата:
Сообщение от Steklov
есть два комбобокса
в одном допустим 1 2 3 4
в другом Коля петя маша саша
как записать что бы при выборе 1, во втором появлялся только маша саша, при выборе 2 появлялся коля петя, при выборе другого только определенные данные?
как бы в if записать, но как правильнее?
|
Можно создать массив соответствий:
Скрытый текст:
Код:
var
// Первый индекс - индекс выбранного элемента в первом списке,
// второй - индекс имени. Если записано true, то соответствующее имя должно попасть в список.
whatShow = Array [0..3, 0..3] of Boolean;
names = Array[0..3] of String;
Begin
// Не знаю, есть ли в Delphi сокращенная инициализация массивов...
whatShow[0, 0] = false; whatShow[0, 1] = false; whatShow[0, 2] = true; whatShow[0, 3] = true;
whatShow[1, 0] = true; whatShow[1, 1] = true; whatShow[1, 2] = false; whatShow[1, 3] = false;
whatShow[2, 0] = false; whatShow[2, 1] = true; whatShow[2, 2] = false; whatShow[2, 3] = true;
whatShow[3, 0] = true; whatShow[3, 1] = false; whatShow[3, 2] = true; whatShow[3, 3] = false;
names[0] = "Коля"; names[1] = "Петя"; names[2] = "Маша"; names[3] = "Саша";
// Не помню названия методов, но суть такая:
CheckBox2.Clear; // Чистим список с именами
For i = 0 To 3 Do
If whatShow[CheckBox1.SelectedItemIndex, i] Then
CheckBox2.Items.Add(names[i]); // Добавляем имя в список, если в массиве в соответствующем месте true
End;
Последний раз редактировалось OneHalf; 12.12.2010 в 02:16.
Причина: Добавлено сообщение
|
|
|