[c++] kolejne potęgi dwójki mniejsze od n
Ostatnio zmodyfikowano 2016-01-09 20:35
mateczek |
» 2016-01-09 18:27:19 daj przynajmniej link do zadania !!! pełny opis !!! bo inaczej skąd ktoś ma się wiedzieć w jakim formacie ma ją być dane wyjściowe?? w zgadywanik można się bawić jeszcze rok a w zadaniu pewnie wszystko pisze !!! Więc albo link albo http://wrozbita-maciej.pl/ :P |
|
Eryk17 Temat założony przez niniejszego użytkownika |
» 2016-01-09 18:29:57 link: http://main2.edu.pl/c/konkurs-wstepu-do-programowania/p/pot/ gdyby nie dało się go otworzyc: Napisz program, który wypisze, w kolejności rosnącej, wszystkie potęgi dwójki nie większe od danej liczby naturalnej n. Wejście Wejście zawiera jedną liczbę naturalną n (1 ≤ n ≤ 1 000 000 000). Wyjście W kolejnych wierszach wyjścia Twój program powinien wypisać kolejne potęgi liczby 2 nie większe od n (o wykładnikach całkowitych nieujemnych), w porządku rosnącym. Przykład Dla danych wejściowych: 10 poprawnym wynikiem jest: 1 2 4 8 |
|
carlosmay |
» 2016-01-09 18:40:31 Użyj manipulatora std::fixed oraz std::setprecision() z ustawioną precyzją na 0. Zalogowałem się na mainie i wyszło mi bez błędów.
Dane wyjściowe muszą być dokładnie jak na przykładzie. Nawet z notacją naukową zadanie jest zaliczne (jedynie przy kilku wynikach jest błąd).
|
|
mateczek |
» 2016-01-09 18:42:17 |
|
Eryk17 Temat założony przez niniejszego użytkownika |
» 2016-01-09 19:40:58 Dobra, działa. Wszystkim dziękuję za pomoc. |
|
mateczek |
» 2016-01-09 20:08:39 Błąd był w temacie :P !!! Zamiast "kolejne potęgi dwójki mniejsze od n". powinno być "kolejne potęgi dwójki mniejsze równe od n" :P (w zadaniu stoi nie większe od n)!!!! ale skoro już klepnąłem programik to się podzielę :P #include <iostream> using namespace std;
int main() { long long pot = 1; long long max; cin >> max; while( 1 ) { cout << pot << endl; pot = pot << 1; if( pot > max ) break; } } |
|
Gibas11 |
» 2016-01-09 20:35:44 Przekombinowane, ja zrobiłem to tak: #include <iostream> using namespace std;
int main() { unsigned int n; cin >> n; for( unsigned long long i = 1; i <= n; i *= 2 ) cout << i << endl; return 0; }
Pętle for serio ułatwiają życie, czemu by z nich nie korzystać? EDIT: Dałem normalniejsze typy, nie wszyscy lubią rzeczy typu uint64_t. :\ EDIT2: Zamiast *= 2 może być <<= 1, ale większość kompilatorów powinna sprowadzić to do tego samego w ramach optymalizacji. |
|
1 2 « 3 » |