[C++] Potęgi dwójki do pewnej liczby

Tuska1503
Użytkownik
Użytkownik
Posty: 3
Rejestracja: 16 lis 2014, o 15:51
Płeć: Kobieta
Lokalizacja: Rumunia

[C++] Potęgi dwójki do pewnej liczby

Post autor: Tuska1503 »

Tytuł zadania: Napisz program, który wypisze, w kolejności rosnącej, wszystkie potęgi
dwójki nie większe od danej liczby naturalnej \(\displaystyle{ n}\)

Nie wiem jak się za to zabrać chodzę do gimnazjum i jestem zielona, pomoże ktoś?
Ostatnio zmieniony 16 lis 2014, o 17:46 przez Afish, łącznie zmieniany 1 raz.
Powód: Poprawa wiadomości.
Afish
Moderator
Moderator
Posty: 2828
Rejestracja: 15 cze 2008, o 15:45
Płeć: Mężczyzna
Lokalizacja: Seattle, WA
Podziękował: 3 razy
Pomógł: 356 razy

[C++] Potęgi dwójki do pewnej liczby

Post autor: Afish »

A co już zrobiłaś?
Tuska1503
Użytkownik
Użytkownik
Posty: 3
Rejestracja: 16 lis 2014, o 15:51
Płeć: Kobieta
Lokalizacja: Rumunia

[C++] Potęgi dwójki do pewnej liczby

Post autor: Tuska1503 »

Starałam się wypisać zmienną n

ogólnie mam coś takiego ale jest to źle zrobione ponieważ potrzebna mi pętla while. a na tych pętlach w ogole się nie znam.

W każdym razie po wpisaniu w programie 10 mają pokazać mi się takie liczby : 1 2 4 8

Kod: Zaznacz cały

#include <iostream>

using namespace std;

int main()

{unsigned int n;
unsigned long long p=1;
cin>>n;

for(int i=0;i<n;i++)
{
   cout<<i<<p<<endl;
p*=2;
}

    return 0;
}
Ostatnio zmieniony 16 lis 2014, o 18:50 przez Afish, łącznie zmieniany 2 razy.
Powód: Poprawa wiadomości.
Afish
Moderator
Moderator
Posty: 2828
Rejestracja: 15 cze 2008, o 15:45
Płeć: Mężczyzna
Lokalizacja: Seattle, WA
Podziękował: 3 razy
Pomógł: 356 razy

[C++] Potęgi dwójki do pewnej liczby

Post autor: Afish »

Obecnie w pętli porównujesz zmienną i ze zmienną n, ale potęgę dwójki trzymasz w p, więc to jej powinnaś użyć do porównywania z n.
A przerobienie fora na while'a jest stosunkowo proste: najpierw wyciągasz zmienną i przed pętlę, potem w warunku while'a zostawiasz obecny warunek z fora (zmieniony zgodnie z poprzednim zdaniem), a samą zmianę wartości zmiennej i robisz już w ciele pętli.
Osobną kwestią jest, że zmienna i jest Ci niepotrzebna, co pewnie zauważyć po wykonaniu poprawki, którą opisałem w pierwszym zdaniu.
Awatar użytkownika
musialmi
Użytkownik
Użytkownik
Posty: 3466
Rejestracja: 3 sty 2014, o 13:03
Płeć: Mężczyzna
Lokalizacja: PWr ocław
Podziękował: 382 razy
Pomógł: 434 razy

[C++] Potęgi dwójki do pewnej liczby

Post autor: musialmi »

I wcale nie musisz zamieniać for na while.
Tuska1503
Użytkownik
Użytkownik
Posty: 3
Rejestracja: 16 lis 2014, o 15:51
Płeć: Kobieta
Lokalizacja: Rumunia

[C++] Potęgi dwójki do pewnej liczby

Post autor: Tuska1503 »

Teoretycznie nie muszę a praktycznie tak :c ponieważ są to zadania z main2.edu.pl , które zadaje nam na informatyce nasz nauczyciel. Jesli nie użyję pętli while to nie dostanę punktu, jak na razie dostałam 0 z odpowiedzią : wstępne sprawdzenie : błąd.

Ja już nie wiem jak mam to zrobić, nic mi nie wychodzi po wpisaniu 10 dostaje 01 a to nie tak ma wyglądać ;c
Awatar użytkownika
musialmi
Użytkownik
Użytkownik
Posty: 3466
Rejestracja: 3 sty 2014, o 13:03
Płeć: Mężczyzna
Lokalizacja: PWr ocław
Podziękował: 382 razy
Pomógł: 434 razy

[C++] Potęgi dwójki do pewnej liczby

Post autor: musialmi »

Wklej kod, jaki masz po poradach, które podał Afish. Jeśli się do rad nie zastosowałaś, to zastosuj. Spróbuj przerobić for na while samodzielnie
Afish
Moderator
Moderator
Posty: 2828
Rejestracja: 15 cze 2008, o 15:45
Płeć: Mężczyzna
Lokalizacja: Seattle, WA
Podziękował: 3 razy
Pomógł: 356 razy

[C++] Potęgi dwójki do pewnej liczby

Post autor: Afish »

Dostajesz 01, bo wypisujesz dwie zmienne. Wypisuj tylko p.
ODPOWIEDZ