Vẽ hình chữ nhật bằng dấu trong python

Đầu vào sẽ là số nguyên a là chiều cao của hình chữ nhật, số nguyên b là chiều rộng của hình chữ nhật, yêu cầu của bài toán là In hình chữ nhật chiều cao a , chiều rộng b ra màn hình bằng dấu sao trong C.

2. Lời giải

Để giải được bài tập In hình chữ nhật chiều cao a , chiều rộng b ra màn hình bằng dấu sao trong C. bạn phải có kiến thức về toán học cơ bản, có kiến thức về nhập xuất cơ bản và cách sử vòng lặp for trong lập trình C.

Các bước thực hiện bài toán như sau:

Bước 1: Khai báo int a, b là chiều rộng và chiều cao của hình chữ nhật.

Bước 2: Nhập dữ liệu vào a và b nếu a<0 yêu cầu nhập lại a; nếu b<0 yêu cầu nhập lại b.

Bước 3: Chúng ta dùng hai vòng lặp : Vòng lặp đầu tiên dùng để điều kiển chiều cao của hình chữ nhật. Vòng lặp thứ hai dùng để điều khiển chiều rộng của hình chữ nhât. Ta sử dụng vòng lặp for bắt đầu từ int i = 1, kết thúc khi i<=a và mỗi lần i tăng lên 1; trong vòng for i ta sử dụng vòng lặp for bắt đầu từ int j = 1, kết thúc khi j<=b và mỗi lần j tăng lên 1 và in ra dấu ‘ * ‘.

Bước 4: In hình chữ nhật ra màn hình.

#include
int main()
{
    //khai bao a, b
    int a, b; 
    //nhap du lieu cho a
    do 
    {
        printf("Nhap chieu cao cua hinh chu nhat a = ");
    	scanf("%d",&a);
    }while(a<0);
    //nhap du lieu cho b
    do 
    {
        printf("Nhap chieu cao cua hinh chu nhat b = ");
    	scanf("%d",&b);
    }while(b<0);
    //vong for dung de dieu khien chieu cao
    for(int i = 1; i <= a; ++i)
    {
    	//vong for dung de dieu khien chieu rong
        for(int j = 1; j <= b; ++j) 
        {
            printf("*");
        }
        printf("\n"); //xuong dong khi in xong 1 hang 
    }
}

Ví dụ tôi nhập a=3 và b=4

Kết quả:

Nhap chieu cao cua hinh chu nhat a = 3
Nhap chieu cao cua hinh chu nhat b = 4
****
****
****3. Tổng kết

Để thực hiện giải bài tập In hình chữ nhật ra màn hình bằng dấu sao trong C bạn đọc cần phải có kiến thức cơ bản về ngôn ngữ lập trình C, bạn cần nắm vững cách nhập xuất căn bản và các cách sử dụng vòng lặp for trong C và các phép toán học cơ bản.

Viết chương trình in ra hình chữ nhật có kích thước m x n rỗng. Bài này tương tự bài in ra hình chữ nhật có kích thước m x n nhưng ở đây là rỗng mà. Bài tập này ngoài giúp chúng ta thấy được sức mạnh của vòng lặp for lồng nhau.  Nó giúp chúng ta sử dụng linh hoạt các toán tử quan hệ nữa :D.

Đề bài: Trên ngôn ngữ lập trình C , hãy nhập vào hai số nguyên dương m,n từ bàn phím. Hãy viết chương trình in ra hình chữ nhật có chiều dài = m, và chiều rộng = n điều kiện là rỗng

Như vậy, bài toán này sẽ giúp các bạn học được các kiến thức cơ bản nhất về nhập xuất trong lập trình C. Cách sử dụng vòng lặp và cấu trúc điều khiển rẽ nhánh của ngôn ngữ lập trình C

Xác định input output:

input: Nhập n = 2 , m = 3

output: hình chữ nhật có chiều rộng = 2, chiều dài = 3 nhưng rỗng nha

Ý tưởng :

  1. Chúng ta sẽ sử dụng một vòng lặp for để in ra chiều dài ví dụ chiều dài = 4 thì nó sẽ in ra chuỗi **** ở các đỉnh. Còn những điểm không phải đỉnh chỉ cần in ra *  * độ dài khoảng trắng là 2. Cái này thì chúng ta chỉ cần gán thêm điều kiện để xác định tại các đỉnh sẽ in ra chuỗi **** là được
  2. Sau đó tiếp tục sử dụng một vòng lặp for lồng bên ngoài để lặp lại số lần bằng chiều rộng n đã cho
  3. Cuối cùng là chạy thôi 😀

Ok chỉ vậy thôi, bây giờ mình sẽ code và chú thích chi tiết ngay ở dưới.

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

#include

#include

intmain()

{

    intn,m;

    printf("Nhap n: ");

    scanf("%d",&n);

    printf("Nhap m: ");

    scanf("%d",&m);

    for(;n<=0||m<= 0;)

    {

        if(n<=0){

            printf("Phai nhap n > 0 \nNhap lai n: ");

            scanf("%d",&n);

        }

        if(m<=0){

            printf("Phai nhap m > 0 \nNhap lai m: ");

            scanf("%d",&m);

        }

    }    

    /* Kiem tra dieu kien m va n >= 0

           mình sẽ không viết thêm điều kiện n là chiều rộng m là chiều dài nha

           vì cái chúng ta cần nắm ở đây là vòng lặp for lồng bên dưới kìa :D */

    for(inti=1; i<=n;i++)    {

        for(intk=1;k<=m; k++){

            if(i==1||k==1||i==n|| k==m){

                printf("*");=

            }

            else{

                printf(" ");

            }

        }

        printf("\n");

    }

    // In ra man hinh hcn chieu rong = n va chieu dai = m

}

Kết quả:

Nhập n: 3

Nhập m: 6

******

*    *

******

Okê xong rồi đấy :D. Bài này rất đơn giản phải không. Thế là mình đã giải quyết xong bài tập này riiuf. Chúc các bạn học lập trình thật tốt. Mình xin được kết thúc bài viết tại đây.