Strona 1 z 1

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

: 16 lis 2014, o 16:04
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ś?

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

: 16 lis 2014, o 17:47
autor: Afish
A co już zrobiłaś?

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

: 16 lis 2014, o 18:48
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;
}

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

: 16 lis 2014, o 18:54
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.

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

: 16 lis 2014, o 19:12
autor: musialmi
I wcale nie musisz zamieniać for na while.

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

: 16 lis 2014, o 19:48
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

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

: 16 lis 2014, o 19:52
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

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

: 16 lis 2014, o 21:27
autor: Afish
Dostajesz 01, bo wypisujesz dwie zmienne. Wypisuj tylko p.