ПОМОГИТЕ пожалуйста написать прогу :
Корабль сначала шел по заданному курсу ( север, восток, юг, запад ). Затем его курс был изменен согласно заданному приказу ( вперед, вправо, назад, влево ). Определить новый курс корабля.
Вх. данные: k - курс корабля
p - приказ капитана
Вых. данные: nk - новый курс
......................................
{n-север, s-юг, w-запад, e-восток; vd-вперёд, nd-назад, vl-влево, vp-вправо}
case of k of n: case p of vd: nk:=n;
nd: nk:=s;
vl: nk:=w;
vp: nk:=e;
end;
s: case p of vd: nk:=s;
nd: nk:=n;
vl: nk:=e;
vp: nk:=w;
end;
w: case p of vd: nk:=w;
nd: nk:=e;
vl: nk:=s;
vp: nk:=n;
end;
e: case p of vd: nk:=e;
nd: nk:=w;
vl: nk:=n;
vp: nk:=s;
end;
М | Теги ! |
и что, ты хочешь сказать, это компилируется?
case of k of n:
! | YnickYM, первое, оно же последнее предупреждение: 1) из-за тегов 2) тебе ясно сказано: Цитата(Правила Раздела) 7. Проверяйте программы перед тем, как разместить их на форуме!!! Все уяснил? |
case of k of n:
var k,p,kn:char;
begin
readln(k,p);
{n-север, s-юг, w-запад, e-восток; vd-вперёд, nd-назад, vl-влево, vp-вправо}
case k of n: case p of vd: nk:=n;
nd: nk:=s;
vl: nk:=w;
vp: nk:=e;
end;
s: case p of vd: nk:=s;
nd: nk:=n;
vl: nk:=e;
vp: nk:=w;
end;
w: case p of vd: nk:=w;
nd: nk:=e;
vl: nk:=s;
vp: nk:=n;
end;
e: case p of vd: nk:=e;
nd: nk:=w;
vl: nk:=n;
vp: nk:=s;
end;
end;
writeln(kn);
readln;
end.
тебе один раз на ошибку в этой программке уже указали...
const a: array [0 .. 3] of string = ('север', 'восток', 'юг', 'запад');
const b: array [0 .. 3] of string = ('вперед', 'вправо', 'назад', 'влево');
var i, j: byte;
x, y: string;
begin
Readln(x);
Readln(y);
for i := 0 to 3 do
if a[i] = x then
for j := 0 to 3 do
if b[j] = y then
Writeln(a[(i + j) mod 4]);
end.
Michael_Rybak, автор темы case хочет...