DANH SÁCH BÀI VIẾT Vẽ hình tam giác trong lập trình C/C++ Vẽ hình vuông trong lập trình C/C++ Vẽ hình chữ nhật trong lập trình C/C++ Kiểm tra 3 cạnh nhập vào có tạo thành hình tam giác Tính chu vi, diện tích hình tam giác trong C/C++ Tính chu vi diện tích hình tròn, thể tích hình cầu trong C/C++ Tính diện tích, thể tính hình lập phương trong lập trình C/C++ Tính diện tích, thể tích hình hộp chữ nhật trong lập trình C/C++ Tính diện tích, thể tích hình trụ tròn trong lập trình C/C++
Đây là một bài tập rất cơ bản giúp cho việc luyện tập code lập trình C/C++.
Vẽ hình tam giác trong lập trình C/C++
Ý tưởng của bài toán vẽ hình tam giác sẽ như sau, giả sử gọi n là chiều cao hình tam giác. Ta sẽ sử dụng 2 vòng lặp for lồng nhau, với vòng lặp thứ nhất ta sẽ duyệt từng hàng, sau đó vòng lặp thứ hai dựa vào vị trí hàng(i) ta in ra số lượng ký tự cần thiết để tạo nên 1 hình tam giác.
Code chương trình C
#include <stdio.h>
int main()
{
int n;
printf("Nhap chieu cao hinh tam giac: ");
scanf("%d", &n);
int i,j;
//duyệt vòng lặp i để duyệt n hàng
for(i = 0; i < n; i++){
//Vòng lặp j để vẽ số in ra số lượng * cần thiết ở mỗi hàng
for(j = n-i; j < n; j++){
printf("* ");//In ra các ký tự * tạo nên hình tam giác
}
printf("\n");
}
}
Chạy thử chương trình, như vậy ta đã vẽ được một hình tam giác dạng tam giác vuông cân.
Vậy để chuyển tam giác thành dạng tam giác đều, ta sẽ dùng thêm 1 vòng lặp nữa để đặt khoảng cách trên từng hàng.
#include <stdio.h>
int main()
{
int n;
printf("Nhap chieu cao hinh tam giac: ");
scanf("%d", &n);
int i;
for(i = 0; i < n; i++){
int j;
//Thêm vòng lặp này để đặt khoảng cách ở trước mỗi hàng
for(j = i; j < n; j++){
printf(" ");
}
for(j = n-i; j < n; j++){
printf("* ");
}
printf("\n");
}
}
Và đây là kết quả
Để đảo ngược hình tam giác thì ta chỉ cần thay đổi số bước lặp của vòng lặp j.
#include <stdio.h>
int main()
{
int n;
printf("Nhap chieu cao hinh tam giac: ");
scanf("%d", &n);
int i;
for(i = 0; i < n; i++){
int j;
//Thay đổi số bước lặp j để đảo ngược hình tam giác
for(j = n-i; j < n; j++){
printf(" ");
}
for(j = i; j < n; j++){
printf("* ");
}
printf("\n");
}
}
Kết quả sau khi đảo ngược hình tam giác
[Xem tất cả bài viết chủ đề C/C++ tại đây]