Video: Hướng dẫn cách giải khối Rubik 3x3 nhanh nhất và đơn giản nhất 2025
Bạn có thể tạo ra một phương pháp để vẽ một tam giác trong Ruby. Trước hết, hãy suy nghĩ về cách điều này có thể làm việc. Hình tam giác bạn sẽ vẽ sẽ giống như một tam giác cân, ở đó hai bên sẽ có kích thước giống nhau và cơ sở sẽ nhỏ hơn một chút.
Không giống như hình chữ nhật, nơi mỗi hàng dễ định dạng, cho tam giác bạn cần làm cho mỗi hàng trông khác. Dòng đầu tiên sẽ là đỉnh của hình tam giác (điểm kết thúc). Hàng cuối cùng sẽ là cơ sở của tam giác và sẽ là chiều rộng mà người dùng chỉ định.
Xem liệu bạn có thể tìm ra mã đang làm ở đây không.
-
Bắt đầu một phương pháp mới gọi là hình tam giác:
# Bên trên đây là phần cuối của phương pháp hình chữ nhật def tam giác (chiều cao, bên ngoài_thống báo, bên_thống số) # Mã cho tam giác sẽ đi ở đây cuối
Lưu ý rằng bạn sẽ sử dụng biến chiều cao cho cả chiều cao và chiều rộng bên trong của phương pháp này.
-
Tạo một vòng lặp sẽ lặp lại chiều cao. Đặt mã này bên trong phương thức tam giác:
1. upto (height) do | hàng | # Vẽ mã vào đây ở bước tiếp theo
-
Đối với một tam giác, bạn cần phải vẽ khoảng khoảng trống (vùng trống) cho mỗi hàng không chiếm toàn bộ chiều rộng mà bạn đang vẽ. Khi bạn vẽ mỗi hàng, bạn sẽ được vẽ khoảng trắng ít hơn. Thêm dòng này là dòng đầu tiên của vòng lặp:
print "* (height - row)
Toán ở đây sẽ tính một số không gian nhỏ hơn vì số hàng lớn hơn (nhớ, bạn đang đếm hàng 1 ở trên cùng, và hàng sẽ bằng chiều cao ở phía dưới)
-
Tiếp theo, bạn phải xử lý các trường hợp cho hàng đầu tiên, đó là đầu của Hình 9 Bước 4: Mã số bước ngay sau bước 3.
Xử lý dòng cuối cùng của trường hợp tiếp theo bằng cách thêm một điều kiện elsif
Nếu dòng == 1 đặt "# {outside_letter * 2}" end < nếu hàng == 1 đặt "# {outside_letter * 2}" elsif rows == height đặt outside_letter * height * 2 end
-
Bây giờ thêm mã cho trường hợp phức tạp hơn một chút của việc xử lý tất cả các dòng giữa. của điều kiện, bạn sẽ sử dụng một điều khoản khác.Xem toàn bộ điều kiện ở đây:
nếu hàng == 1 đặt "# {outside_letter * 2}" elsif hàng == chiều cao đặt outside_letter * chiều cao * 2 khác trung = inside_letter * (hàng - 2) in "# {outside_letter} # {middle} # {ins ide_letter} "đặt" # {inside_letter} # {middle} # {outside_letter} "end
-
Mã trông hơi lạ. Tại sao có cả một bản in và một tuyên bố?
Đã đến lúc để hiển thị tam giác. Ở dưới cùng của tệp mã, bên dưới hộp thoại phương thức hình chữ nhật, thêm một phương thức gọi tam giác:
tam giác (chiều cao, bên ngoài_thẻ, bên_thư báo)
-
Lưu tệp chương trình của bạn, chuyển sang terminal và chạy chương trình.Bạn sẽ thấy một cái gì đó như sau:
Mã ví dụ được sử dụng bao gồm một phương pháp hình chữ nhật trước phương pháp tam giác, vì vậy bạn sẽ thấy một hình chữ nhật cân bằng trên tam giác.