//Не смотрел Ваш код, просто моё видение решения задачи
//PascalABC.NET 3.2 сборка 1318
Var
t:text;
x,y,i,j:integer;
s:string;
c:char;
world:array[1..4] of char=('E','S','W','N');
begin
j:=1;
c:='E';
assign(t,'input.txt');
reset(t);
read(t,s);
close(t);
i:=1;
while s[i]<>'S' do
begin
if s[i]='R' then
begin
if c='N' then j:=1 else inc(j);
c:=world[j];
end;
if s[i]='L' then
begin
if c='E' then j:=4 else dec(j);
c:=world[j];
end;
if s[i]='F' then
case c of
'E':inc(x);
'S':dec(y);
'W':dec(x);
'N':inc(y);
end;
inc(i);
end;
assign(t,'output.txt');
rewrite(t);
write(t,x,' ',y);
close(t);
end.
Пример содержимого input.txt:
FLFS
Пример содержимого output.txt:
1 1
Картинка должна быть в папке с программой и быть в формате BMP
uses
graphabc;
var
n: string;
b: Picture;
s:integer;
begin
writeln('введите расстояние до зеркала');
readln(s);
write('Введите имя файла рисунка: ');
readln(n);
window.Clear;
b := Picture.Create(n);
b.Load(n);
b.Draw(50, 50);
b.FlipHorizontal;
b.Draw(50+2*s,50);
end.
#include <iostream>
using namespace std;
int main () {
int a,b;
cout << "Введите два числа: " << endl;
cin >> a >> b;
if(a > 0 || b > 0)
cout << max(a,b) * 2;
else
cout << "Некорректный ввод." << endl;
}