Computer >> Máy Tính >  >> Lập trình >> C ++

Triển khai Fizz Buzz trong C ++

Trong vấn đề này, chúng ta sẽ thấy cách triển khai và các loại của Fizz-Bizz vấn đề.

Fizz Buzz - đó là một vấn đề lập trình đơn giản, trong đó người lập trình thay đổi sự xuất hiện o tất cả bội số của 3 bằng ‘ Fizz ’Và tất cả bội số của 5by‘ Buzz 'Trong các số từ 1 đến 100.

Hãy lấy một ví dụ để hiểu vấn đề

1, 2, 'Fizz', 4, 'Buzz', 'Fizz' , 7, 8, 'Fizz' , 'Buzz', 11, 'Fizz' , 13, 14, 'Fizz Buzz' , 16, 17, 'Fizz' , 19, 'Buzz',....

Phương pháp tiếp cận giải pháp

Một cách tiếp cận đơn giản để giải quyết vấn đề là chỉ cần sử dụng một vòng lặp từ 1 đến 100. Và sau đó, trong mỗi lần lặp lại, hãy kiểm tra cả hai điều kiện bên dưới một cách riêng biệt,

Điều kiện 1 - nếu tôi chia hết cho 3, hãy thay thế số đếm bằng 'Fizz'.

Điều kiện 2 - nếu tôi chia hết cho 5, hãy thay thế số đếm bằng 'Buzz'.

Nếu không, hãy in số. Đối với các giá trị mà số đó chia hết cho cả 3 và 5. Chúng tôi sẽ in fizz buzz .

Ví dụ

Chương trình minh họa hoạt động của giải pháp của chúng tôi

#include <iostream>
using namespace std;

int main(){

   for (int i=1; i<=100; i++){

      if (i%15 == 0)
         cout<<"Fizz Buzz,\t";
      else if ((i%3) == 0)
         cout<<"Fizz,\t";
      else if ((i%5) == 0)
         cout<<"Buzz,\t";
      else
         cout<<i<<",\t";
   }
   return 0;
}

Đầu ra

1, 2, Fizz, 4, Buzz, Fizz, 7, 8, Fizz, Buzz, 11, Fizz, 13, 14, Fizz Buzz, 16, 17, Fizz, 19, Buzz, Fizz, 22,
23, Fizz, Buzz, 26, Fizz, 28, 29, Fizz Buzz, 31, 32, Fizz, 34, Buzz, Fizz, 37, 38, Fizz, Buzz, 41, Fizz, 43,
44, Fizz Buzz, 46, 47, Fizz, 49, Buzz, Fizz, 52, 53, Fizz, Buzz, 56, Fizz, 58, 59, Fizz Buzz, 61, 62, Fizz,
64, Buzz, Fizz, 67, 68, Fizz, Buzz, 71, Fizz, 73, 74, Fizz Buzz, 76, 77, Fizz, 79, Buzz, Fizz, 82, 83, Fizz,
Buzz, 86, Fizz, 88, 89, Fizz Buzz, 91, 92, Fizz, 94, Buzz, Fizz, 97, 98, Fizz, Buzz,

Một số biến thể khác của Fizz Buzz vấn đề

Vấn đề Fizz Buzz là một vấn đề lập trình phổ biến thường được sử dụng trong các cuộc phỏng vấn lập trình để kiểm tra logic của lập trình viên. Theo thời gian, vấn đề đã có một số nâng cấp để làm cho vấn đề tốt hơn và đôi khi khó giải quyết hơn. Dưới đây là một số biến thể phổ biến của vấn đề Fizz Buzz.

  • Fizz Buzz dựa trên chữ số - Trong bài toán này, người lập trình cần thay đổi giá trị thành fizz buzz dựa trên sự xuất hiện của 3 hoặc 5 là một chữ số của số thay vì kiểm tra các thừa số.

    Ví dụ - 1, 2, Fizz (3), 4, Buzz (5), 6, 7, 8, 9, 10, 11, 12, Fizz (13), 14, Buzz (15), 16, 17, 18, 19 , 20, 21, 22, Fizz (23), 24, Buzz (25), 26, 27, 28, 29, Fizz (30), Fizz (31), Fizz (32), Fizz (33), Fizz (34) ), Fizz Buzz (35), ...

  • Fizz Buzz Woof - Biến thể này của bài toán thêm một từ nữa là sai cho số nguyên tố tiếp theo 7. Bây giờ, chúng ta sẽ thay đổi các giá trị cho các thừa số 3, 5 và 7.

    Ví dụ - 1, 2, Fizz (3), 4, Buzz (5), Fizz (6), Woof (7), 8, Fizz (9), Buzz (10), 11, Fizz (12), 13, Woof ( 14), Buzz (15), 16, 17, Fizz (18), 19, Buzz (20), Fizz Woof (21), 22, 23, Fizz (24), Buzz (25), 26, Fizz Woof (27) ), Woof (28), 29, Buzz (30), 31, 32, Fizz (33), 34, Fizz Buzz gâu (35) ...

  • Fizz Buzz cho các số cơ bản khác - Một biến thể khác của trò chơi là chỉ cần thay đổi dựa trên số của một cơ số khác để làm cho vấn đề phức tạp hơn một chút.

    Ví dụ - chuyển sang cơ số 16 (hệ thập lục phân) 1, 2, Fizz, 4, Buzz, Fizz, 7, 8, Fizz, Buzz, B, Fizz, D, E, Fizz Buzz, 11, Fizz, ....

  • Kết hợp hai hoặc nhiều biến thể - Bài toán có thể trở nên phức tạp hơn bằng cách kết hợp hai hoặc nhiều biến thể của bài toán. Giống như một Fizz Buzz xem xét cả hai yếu tố cũng như các chữ số để thay đổi thành Fizz buzz.