Editorial for C Bài 6.B1: Hình vuông tăng dần


Remember to use this editorial only when stuck, and not to copy-paste code from it. Please be respectful to the problem author and editorialist.

Submitting an official solution before solving the problem yourself is a bannable offence.

Author: buitrunghieu

Lời giải chi tiết

Ý tưởng: Để ý kĩ ở hàng, ta thấy chỉ số từ trái sang phải được tăng dần, khi nào đến giá trị \(n\) thì ở ô tiếp theo nếu vẫn điền được thì ta đặt lại về 1 và lại tiếp tục tăng dần. Ta tiếp tục để ý cột đầu tiên, thấy được rằng cột đó có giá trị từ \(n\) về 1. Áp dụng các phát hiện này để in ra hình như mong muốn.

Các bước giải:

  • Bước 1: Khai báo và nhập vào số nguyên \(n\).
  • Bước 2: Sử dụng 2 vòng lặp lồng nhau, vòng lặp ở ngoài ta chạy \(i\) từ \(n\) về 1, ta đặt 1 biến tạm thời tmp để lưu giá trị hiện tại của \(i\). Còn vòng lặp ở trong chạy từ 1 đến \(n\).
  • Bước 3: Với vòng lặp ở trong, in ra giá trị hiện tại của tmp, đồng thời tăng giá trị tmp lên 1. Sau đó kiểm tra tmp có lớn hơn \(n\) không. Nếu có, đặt lại giá trị của tmp về 1. Chú ý in ra thêm dấu cách nếu số \(tmp\) được in ra nhỏ hơn 10.
  • Bước 4: Sau khi duyệt xong vòng lặp ở bên trong, xuống dòng để tiếp tục vẽ các dòng tiếp theo.

Đăng ký khóa học: https://www.facebook.com/clblaptrinhfullhouse

SĐT liên hệ: 0372229686

Youtube: CLB Lập Trình Full House

Fullhouse dev đồng hành trên từng dòng code


Comments

There are no comments at the moment.