Fizz Buzz problemində n rəqəmi verdik, yazdırın sim verilmiş şərtlərlə 1-dən n-ə qədər rəqəmlərin nümayişi:
- 3-ü qat üçün “Fizz” yazdırın.
- 5-dən çox olan “Buzz” yazdırın.
- Həm 3-ü həm də 5-i vuranlar üçün “FizzBuzz” yazdırın.
- Əks təqdirdə nömrəni simli formatda çap edin.
Mündəricat
misal
Input:
n = 4
Çıxış:
1
2
fizz
4
Fizz Buzz üçün alqoritm
- 1-dən n-ə qədər rəqəmləri təkrarlayın (döngü dəyişəni i-dir).
- Hər ədədə görə, həm 3, həm də 5-ə bölünürsə, yəni i% 3 = 0 və i% 5 = 0, sonra “FizzBuzz” yazdırın.
- Əks halda, rəqəm 3-ə bölünürsə, yəni mən% 3 = 0, sonra “Fizz” yazdırın.
- Əks halda, rəqəm 5-ə bölünürsə, yəni mən% 5 = 0, “Buzz” yaz.
- Başqa bir halda, nömrəni bir simli kimi çap edin.
Həyata keçirilməsi
Fizz Buzz Leetcode üçün C ++ Proqramı
#include<bits/stdc++.h> using namespace std; void fizzbuzz(int n){ for(int i=1;i<=n;i++){ if(i%3 == 0 && i%5==0){ cout<<"Fizzbuzz\n"; } else if(i%3 == 0){ cout<<"Fizz\n"; } else if(i%5 == 0){ cout<<"Buzz\n"; } else{ cout<<to_string(i)<<"\n"; } } } int main(){ int n; cin>>n; fizzbuzz(n); }
14
1 2 Fizz 4 Buzz Fizz 7 8 Fizz Buzz 11 Fizz 13 14
Fizz Buzz Leetcode üçün JAVA Proqramı
import java.util.Scanner; class Main { static void fizzbuzz(int n){ for(int i=1;i<=n;i++){ if(i%3 == 0 && i%5==0){ System.out.println("Fizzbuzz"); } else if(i%3 == 0){ System.out.println("Fizz"); } else if(i%5 == 0){ System.out.println("Buzz"); } else{ System.out.println(Integer.toString(i)); } } } public static void main(String args[]) { int n; Scanner sc = new Scanner(System.in); n = sc.nextInt(); fizzbuzz(n); } }
7
1 2 Fizz 4 Buzz Fizz 7
Varyasyon
4-ə bölünən ədədə “Fizz”, 8-ə bölünən ədədə “Buzz” yazın, düzgün cavabı çap edin. Bu vəziyyətdə 8-ə bölünən ədədlər 4-ə bölünür, çünki 8-in qatının çoxluğudur, bu səbəbdən bu sual üçün çoxsaylı etibarlı cavab ola bilər, çünki 4-in çoxluğunda ya “Fizz” ya da “Buzz” seçimini edə bilərik. Diqqətlə müşahidə etsəniz belə, 8-ə bölünən bütün rəqəmləri “Fizz” ilə əvəz edə bilərik, bu da düzgün cavab olacaqdır.
Qeyd: Bu sualı həll edərkən diqqətlə izləyin, çünki verilmiş rəqəmlərin bir-birindən çox olması halında çoxsaylı etibarlı cavablarımızın ola biləcəyini gördük.
Mürəkkəblik təhlili
Zaman mürəkkəbliyi
O (n) burada n bizə verilən rəqəmdir. Bir simli formatını çap etmək üçün hər ədədi 1-dən N-ə bir dəfə keçməyimiz lazım olduğu üçün.
Kosmik Mürəkkəblik
O (1) çünki əlavə köməkçi yer istifadə etmirik və ya yaratmırıq.