Vấn đề được chuyển thể từ cuốn sách Fortran 77 của Donald M. Monro
Giới thiệu
Máy vẽ kỹ thuật số được sử dụng rộng rãi để tạo ra các dạng bản vẽ, đồ thị và các kết quả hình ảnh khác nhau. Hầu hết các máy như vậy chỉ có thể di chuyển bút của chúng theo các hướng nhất định, thường là các bước đơn theo hướng X và Y hoặc cả hai. Một máy điển hình sẽ di chuyển theo một trong tám hướng được hiển thị trong Hình 1:
Hình 1
Thử thách
Viết chương trình không có các hàm lượng giác , lấy một số từ 0 đến 7 (đã bao gồm) làm đầu vào và xuất ra tọa độ tương ứng của các điểm cuối trong Hình. 1.
Đầu ra phải là một mảng hoặc danh sách có hai phần tử (nghĩa là (1, 0)hoặc [0,-1])
Bảng I / O
0 (1, 0)
1 (1, 1)
2 (0, 1)
3 (-1, 1)
4 (-1, 0)
5 (-1, -1)
6 (0, -1)
7 (1, -1)
Chiến thắng
Mã ngắn nhất tính bằng byte thắng
cos, sin, tan, secv.v.
rotate(x)hàm được tính là một hàm lượng giác? (nó chỉ xoay "khung vẽ" bằngxradian)