LATEST

In hình tam giác bằng các dấu * trong C / C++

Trong bài viết này, codehow sẽ hướng dẫn các bạn cách in hình tam giác bằng các dấu * trong C / C++. Đây là dạng bài tập giúp các bạn rèn luyện tính tư duy logic và sử dụng vòng lặp trong C / C++.

Để mình đưa ra một ví dụ cho các bạn dễ hình dung nhé. Giả sử mình muốn in ra một hình tam giác vuông cân bằng các dấu sao với chiều cao là 5, khi đó kết quả như sau:

*
*  *
*  *  *
*  *  *  *
*  *  *  *  *

Ngoài ra còn có tam giác hình kim tự tháp, hoặc tam giác hình kim tự tháp ngược, ... . Vậy làm thế nào để in hình tam giác bằng cách dấu * trong C / C++ thì hãy bắt đầu ngay cùng mình thôi nhé.

In hình tam giác bằng các dấu * trong C / C++

Trong phần này mình sẽ thực hiện ba ví dụ để in tam giác bằng dấu * trong C / C++. Đầu tiên là chương trình in tam giác vuông cân, hai chương trình sau là in tam giác hình kim tự tháp và kim tự tháp ngược.

In tam giác vuông cân bằng dấu * trong C / C++

Đầu tiên chúng ta sẽ yêu cầu người dùng nhập vào chiều cao h của tam giác. Sau đó sử dụng vòng lặp for để lặp và in các dấu *.

Chương trình C:

#include <stdio.h>

int main(){
  //khai báo nhập vào chiều cao tam giác
  int h;
  printf("Nhập vào chiều cao của tam giác: ");
  scanf("%d", &h);
  for(int i = 1; i <= h; i++) {
    //In dấu *
    for(int j = 1; j <= i; j++) {
      printf("* ");
    }
    //xuống dòng kế tiếp
    printf("\n");
  }
  
  printf("\n-------------------------------\n");
  printf("Chương trình này được đăng tại codehow.net");
  return 0;
}

Chương trình C++:

#include <iostream>
using namespace std;

int main(){
  //khai báo nhập vào chiều cao tam giác
  int h;
  cout << "Nhập vào chiều cao của tam giác: ";
  cin >> h;
  for(int i = 1; i <= h; i++) {
    //In dấu *
    for(int j = 1; j <= i; j++) {
      cout << "* ";
    }
    //xuống dòng kế tiếp
    cout << endl;
  }
  
  cout<<"\n-------------------------------\n";
  cout<<"Chương trình này được đăng tại codehow.net";
  return 0;
}

Kết quả:

bai33 01 PNG

In tam giác hình kim tự tháp bằng dấu * trong C / C++

Để in tam giác hình kim tự tháp, ta cần in dấu * và in khoảng trắng. Vì hình kim tự tháp có đỉnh nhọn, vậy nên thay các dấu 8 ở đỉnh bằng khoảng trắng.

Chương trình C:

#include <stdio.h>

int main(){
  //khai báo nhập vào chiều cao tam giác
  int h;
  printf("Nhập vào chiều cao của tam giác: ");
  scanf("%d", &h);
  for(int i = 1; i <= h; i++) { 
    //In khoảng trắng
    for(int j = i; j < h; j++) {
      printf(" ");
    }
    // in dấu *
    for(int j = 1; j <= (2*i-1); j++) {
      printf("*");
    }
    //xuống dòng kế tiếp
    printf("\n");
  }
  
  printf("\n-------------------------------\n");
  printf("Chương trình này được đăng tại codehow.net");
  return 0;
}

Chương trình C++:

#include <iostream>
using namespace std;

int main(){
  //khai báo nhập vào chiều cao tam giác
  int h;
  cout << "Nhập vào chiều cao của tam giác: ";
  cin >> h;
  for(int i = 1; i <= h; i++) { 
    //In khoảng trắng
    for(int j = i; j < h; j++) {
      cout << " ";
    }
    // in dấu *
    for(int j = 1; j <= (2*i-1); j++) {
      cout << "*";
    }
    //xuống dòng kế tiếp
    cout << endl;
  }
  
  cout<<"\n-------------------------------\n";
  cout<<"Chương trình này được đăng tại codehow.net";
  return 0;
}

Kết quả:

bai33 02 PNG

In tam giác hình kim tự tháp ngược bằng dấu * trong C / C++

Tương tự như in tam giác hình kim tự tháp, ta cũng xem in đồng thời dấu * và khoảng trắng.

Chương trình C:

#include <stdio.h>

int main(){
  //khai báo nhập vào chiều cao tam giác
  int h;
  printf("Nhập vào chiều cao của tam giác: ");
  scanf("%d", &h);
  for(int i = 1; i <= h; i++) { 
    //In khoảng trắng
    for(int j = 1; j < i; j++) {
      printf(" ");
    }
    // in dấu *
    for(int j = 1; j <= (h * 2 -(2*i-1)); j++) {
      printf("*");
    }
    //xuống dòng kế tiếp
    printf("\n");
  }
  
  printf("\n-------------------------------\n");
  printf("Chương trình này được đăng tại codehow.net");
  return 0;
}

Chương trình C++:

#include <iostream>
using namespace std;

int main(){
  //khai báo nhập vào chiều cao tam giác
  int h;
  cout << "Nhập vào chiều cao của tam giác: ";
  cin >> h;
  for(int i = 1; i <= h; i++) { 
    //In khoảng trắng
    for(int j = 1; j < i; j++) {
      cout << " ";
    }
    // in dấu *
    for(int j = 1; j <= (h * 2 -(2*i-1)); j++) {
      cout << "*";
    }
    //xuống dòng kế tiếp
    cout << endl;
  }
  
  cout<<"\n-------------------------------\n";
  cout<<"Chương trình này được đăng tại codehow.net";
  return 0;
}

Kết quả:

bai33 03 PNG

Như vậy là chúng ta dã cùng nhau thực hiện các chương trình in hình tam giác bằng dấu * trong C / C++. Các bạn có thể luyện tập nhiều dạng bài tập hơn tại serries bài tập C / C++ của codehow nhé. Cảm ơn các bạn rất nhiều !!!

Cùng chuyên mục:

Danh sách liên kết (Linked List) là gì? Các loại danh sách liên kết

Danh sách liên kết (Linked List) là gì? Các loại danh sách liên kết

Sử dụng đệ quy để giải bài toán tháp Hà Nội

Sử dụng đệ quy để giải bài toán tháp Hà Nội

Đệ quy tương hỗ (Mutual Recursion) trong C / C++

Đệ quy tương hỗ (Mutual Recursion) trong C / C++

Đệ quy lồng (Nested Recursion) trong C / C++

Đệ quy lồng (Nested Recursion) trong C / C++

Đệ quy đa tuyến (Exponential Recursion) trong C / C++

Đệ quy đa tuyến (Exponential Recursion) trong C / C++

Đệ quy nhị phân (Binary Recursion) trong C / C++

Đệ quy nhị phân (Binary Recursion) trong C / C++

Đệ quy đuôi (Tail Recursion) trong C / C++

Đệ quy đuôi (Tail Recursion) trong C / C++

Đệ quy tuyến tính (Linear Recursion) trong C / C++

Đệ quy tuyến tính (Linear Recursion) trong C / C++

Hàm đệ quy là gì? Các loại hàm đệ quy trong C / C++

Hàm đệ quy là gì? Các loại hàm đệ quy trong C / C++

Thuật toán sắp xếp Quick Sort trong C / C++

Thuật toán sắp xếp Quick Sort trong C / C++

Thuật toán sắp xếp trộn (Merge Sort) trong C / C++

Thuật toán sắp xếp trộn (Merge Sort) trong C / C++

Thuật toán sắp xếp chọn (Selection Sort) trong C / C++

Thuật toán sắp xếp chọn (Selection Sort) trong C / C++

Thuật toán sắp xếp chèn (Insertion Sort) trong C / C++

Thuật toán sắp xếp chèn (Insertion Sort) trong C / C++

Thuật toán sắp xếp nổi bọt (Bubble Sort) trong C / C++

Thuật toán sắp xếp nổi bọt (Bubble Sort) trong C / C++

Thuật toán tìm kiếm nội suy (Interpolation Search) trong C / C++

Thuật toán tìm kiếm nội suy (Interpolation Search) trong C / C++

Thuật toán tìm kiếm nhị phần (Binary Search) trong C / C++

Thuật toán tìm kiếm nhị phần (Binary Search) trong C / C++

Thuật toán tìm kiếm tuyến tính (Linear Search) trong C / C++

Thuật toán tìm kiếm tuyến tính (Linear Search) trong C / C++

Thuật toán kiểm tra năm nhuận trong C / C++

Thuật toán kiểm tra năm nhuận trong C / C++

Thuật toán kiểm tra số chẵn lẻ trong C / C++

Thuật toán kiểm tra số chẵn lẻ trong C / C++

Thuật toán tính lũy thừa trong C / C++

Thuật toán tính lũy thừa trong C / C++

Top