Hầu hết các bạn có lẽ đã nghe nói về chương trình Đồ họa Rùa nổi tiếng, ban đầu được phổ biến bởi Logo. Thách thức này là triển khai chương trình Đồ họa Rùa bằng ngôn ngữ bạn chọn.
Quy tắc:
Tầng phải là một đường chéo với kích thước đầu vào bởi người sử dụng thông qua std-in trong các hình thức
x/y
, đại diện chox
vày
chiều dài tương ứng.x
có thể không quá 20 vày
không được quá 45,Khi bút ở trạng thái xuống, nó phải vẽ cả hình vuông (tọa độ x / y) lá rùa và hình vuông con rùa đi vào. Đây là những gì sẽ xảy ra trong cuộc sống thực, vì vậy đó là những gì chương trình của bạn nên làm.
Vị trí ban đầu và hướng của những con rùa phải đầu vào bởi người sử dụng theo hình thức
x,y,d
, nơix
vày
là các vị trí trên trục X và trục y, tương ứng, vàd
là sự chỉ đạo, nhập nhưU
,D
,R
, hoặcL
(lên, xuống, phải không và trái, tương ứng).Bạn phải dừng rùa và hiển thị thông báo lỗi nếu rùa chạm tường. Nói cách khác, rùa không thể đi xuyên tường.
Con rùa phải bao gồm các lệnh sau:
Đặt lại - Đặt lại bảng để trống - rùa quay trở lại vị trí và hướng ban đầu.
DRAW và ERASE - Các lệnh này đặt rùa tương ứng để vẽ và xóa.
LÊN và XUỐNG - Hai lệnh này đặt vị trí của công cụ hoạt động (bút hoặc cục tẩy) lên và xuống tương ứng.
HƯỚNG DẪN x - Lệnh này biến rùa thành bất kỳ hướng Bắc, Đông Bắc, Đông, Đông Nam, Nam, Tây Nam, Tây hoặc Tây Bắc, được biểu thị bằng các chữ số 1-8, với Bắc (lên) là 1, Đông Bắc là 2 ...
FORWARD xx - Tiến lên hình vuông rùa xx; FORWARD 15 tiến bộ rùa 15 hình vuông. Nếu con rùa đối mặt với N, E, S, của W, nó sẽ chỉ vẽ theo
x
hình vuông theo hướng đó. Nếu con rùa đang đối mặt với NE, NW, SE hoặc SW, nó sẽ vẽ theox
hình vuông theo cả hai hướng; tức là trong FORWARD 1 trong khi đối mặt với NE, nó sẽ rút ra điều này:X X
HIỂN THỊ - Hiển thị bảng, sử dụng
X
cho các ô vuông đầy (tọa độ x / y) và một khoảng trốngcho các ô vuông trống.
VỊ TRÍ - In tọa độ x / y của rùa trên bảng.
SETPOS xyd - Đặt rùa theo hướng tọa độ x / y
d
, sử dụng ký hiệu tương tự như lệnh TRỰC TIẾP .STOP - Hiển thị bảng và chấm dứt chương trình sau khi người dùng nhập ký tự
~
.
Các lệnh ví dụ:
TRỰC TIẾP 2 FORWARD 1 HƯỚNG DẪN 4 FORWARD 1:
X X X
TRỰC TIẾP 2 FORWARD 1 HƯỚNG DẪN 4 FORWARD 4:
X X X X X
HƯỚNG 3 CHO PHÉP 5:
XXXXX
Chương trình này sẽ sử dụng các quy tắc chấm điểm golf nguyên tử-mã tiêu chuẩn để cố gắng cho phép các ngôn ngữ lập trình không bí truyền, như Java và C ++, cạnh tranh.
Phiên bản 1 ở đây . Nó không yêu cầu người dùng nhập kích thước bảng và điểm bắt đầu rùa, cũng không yêu cầu chuyển động chéo.