Liczby podzielne przez 3,5 i 7
Ostatnio zmodyfikowano 2015-04-28 13:03
Klatyk Temat założony przez niniejszego użytkownika |
Liczby podzielne przez 3,5 i 7 » 2015-04-27 19:18:41 Miałem napisać program który miał za zadanie: jak liczba podzielna przez 3 to wypisz fizz, jak przez 5 to wypisz fuzz a jak przez 7 to buzz, a jak przez 3 i 5 to fizzfuzz, jak 3 i 7 to fizzbuzz, jak 5 i 7 to fuzzbuzz a jak 3 5 i 7 to fizzfuzzbuzz Napisałem kod jednak działa to dla pojedynczych warunków dla tych złożonych nie :( jak podam np. 15 to zamiast wypisać "fizzfuzz" wypisuje tylko "fizz" czyli, że jest podzielne przez 3 a czy przez 5 już nie sprawdza i to samo z resztą czyli 3 i 7, 5 i 7 oraz 3 i 5 i 7 #include <iostream>
using namespace std;
int main() { int x = 0; cout << "Podaj x "; cin >> x; if( x % 3 == 0 ) { cout << "fizz"; } else if( x % 5 == 0 ) { cout << "fuzz"; } else if( x % 7 == 0 ) { cout << "buzz"; } else if( x % 3 == 0 && x % 5 == 0 ) { cout << "fizzfuzz"; } else if( x % 3 == 0 && x % 7 == 0 ) { cout << "fizzbuzz"; } else if( x % 5 == 0 && x % 7 == 0 ) { cout << "fuzzbuzz"; } else if( x % 3 == 0 && x % 5 == 0 && x % 7 == 0 ) { cout << "fizzfuzzbuzz"; } else cout << "Error"; return 0; }
|
|
pekfos |
» 2015-04-27 19:24:24 Wywal wszystkie else, połowa warunków jest niepotrzebna. |
|
Klatyk Temat założony przez niniejszego użytkownika |
. » 2015-04-27 19:27:52 Wywaliłem else to teraz wypisuje np. przy 15 "fizzfuzzfizzfuzz" czyli, że podzielna przez 3, 5 oraz 15 a chce tylko fizzfuzz
EDIT: w sumie można wywalić 4 ify i zostawić tylko te trzy pierwsze |
|
uhc |
» 2015-04-28 13:03:40 Daj 3 warunki if dla każdego warunku i jeden else, gdyby żaden nie działał |
|
« 1 » |