Lekcja 21, problem z pierwszym zadaniem.
Ostatnio zmodyfikowano 2011-12-14 13:24
Lukaso358 Temat założony przez niniejszego użytkownika |
Lekcja 21, problem z pierwszym zadaniem. » 2011-12-10 21:56:42 Witam, po dowiedzeniu się o obsłudze tej strony jeśli chodzi o tekst, piszę, że mam już napisany program, lecz nie wylosowuje mi dwóch z podanych liczb, tylko jakieś nie wiadomo z skąd wzięte. |
|
malan |
» 2011-12-10 22:52:08 Dobrze by było, gdybyście poprawili błędy. |
Może frytki do tego? 1. http://www.cplusplus.com/reference/clibrary/cstdlib/rand/2. Co to ... jest? O.o 3. f( b[ x ] == b[ x - 1 ] ) return true; Co Ty chciałeś tutaj zrobić? 4. Dalej nie mam zamiaru patrzeć, bo... do { int liczba = wylosuj(); return liczba; } if( czyBylaWylosowana( tablica, ile1, b1, x1 == false ) ) { b1[ ile1 ] = tablica[ c ]; return b1[ ile1 ]; ile1++; c++; }
|
|
pekfos |
» 2011-12-11 16:58:59 Dobrze by było, gdybyście poprawili błędy. |
No, było by. aktualnie nie jest dobrze.. |
|
Wienzu |
» 2011-12-12 15:24:52 Również posiadam problem z zadaniem pierwszym w tym zadaniu. Problem jednak jest trochę innej natury. Program działa (?). Po wielokrotnym sprawdzeniu faktycznie podaje dwie liczby z wybranych. Coś tutaj nie działa albo ja czegoś nie rozumiem, tablica ma elementy max do t[2] a zarówno "a" jak i "b" może przyjąć wartości od 0 do 3, co mogłoby dać mi wynik t[3]... mimo to program działa dobrze i właśnie gdy zmienię w funkcji losuj rand()%(indeks-1) to losuje tylko od 1 do 2. Czy chodzi o właściwość funkcji rand()? Przepraszam bardzo za wygląd wiadomości ale nie mam po prostu pojęcia jak wstawić te ramki a nigdzie na stornie nie umiem też znaleźć podpowiedzi w tej sprawie. #include <iostream> #include <ctime> using namespace std;
int losuj( int indeks ) { return rand() %( indeks ); }
int porownaj( int t[], int indeks, int pierwszaLiczba ) { int b; do { b = losuj( indeks ); } while( pierwszaLiczba == b ); return b; }
int main() { srand( time( 0 ) ); int t[ 3 ]; int a, b; do { cout << "Podaj trzy liczby i zatwierdz kazda ENTERem:" << endl; cin >> t[ 0 ] >> t[ 1 ] >> t[ 2 ]; a = losuj( 3 ); b = porownaj( t, 3, a ); cout << "Pierwsza liczba: " << t[ a ] << endl; cout << "Druga liczba: " << t[ b ] << endl; } while( a < 10 ); return 0; } Pozdrawiam. |
|
malan |
» 2011-12-12 20:21:41 @Wienzu: na tym forum nie tworzymy tematów w temacie. Jeden problem to jeden temat. Masz problem? Załóż swój temat :) |
|
Lukaso358 Temat założony przez niniejszego użytkownika |
Dzięki. » 2011-12-14 13:24:54 Dzięki Wienzu za podpowiedź. |
|
« 1 » |