C4droid nie działa poprawnie
Ostatnio zmodyfikowano 2015-04-11 19:37
BadBullPL Temat założony przez niniejszego użytkownika |
C4droid nie działa poprawnie » 2015-04-11 16:48:46 C4droid to kompilator na androida. Jednak nie jest on idealny. Często pisze na nim programy by poćwiczyć. Ale gdy robię pętlę to często jest ona nieskończoną. Problem jest tez z czyszczeniem strumienia wejścia. Program często wariuje po dodaniu linijek odpowiedzialnych za owe czynności. Teraz moje pytanie czy można to jakiś naprawić? |
|
Brunon3 |
» 2015-04-11 17:38:07 Pokaż ten kod co Ci "wariuje".
-BD. |
|
BadBullPL Temat założony przez niniejszego użytkownika |
» 2015-04-11 17:49:37 To jest przykład dla pętli kod poniżej był sprawdzamy na pc i działa poprawnie. #include <iostream> #include <cstdlib> #include <ctime> #include <string> int losowanie() { return( rand() % 50 ) + 1; } int czworka() { return( rand() % 500 ) + 100; } int trojka() { int a = 24; return a; } int piatka() { return( rand() % 19000 ) + 1000; } int szostka() { return( rand() % 48000000 ) + 2000000; } bool czyByla( int tablica[], int iLiczba, int ile ) { if( ile == 0 ) return false; int indeks = 0; do { if( tablica[ indeks ] == iLiczba ) return true; indeks++; } while( indeks < ile ); return false; } int main() { srand( time( NULL ) ); std::string tekst = "wygrac"; std::cout << "Witaj w symulatorze TOTALIZATORA SPORTOWEGO LOTTO" << std::endl; std::cout << "Jest on bardzo realistyczny ale pieniadze kt�re mozesz " << tekst << " juz nie bardzo." << std::endl; std::cout << "Zasady sa jak w orginalnym TOTKU czyli podajesz 6 liczb od 1 do 50 i w zaleznosci ile trafiles wyplacana ci jest nagroda." << std::endl; std::cout << "Za jedna trafiona lub dwie nie ma zadnych pieniedzy ale od trojki zaczyna sie jazda." << std::endl; std::cout << "Zaczynamy!" << std::endl; std::cout << "Na poczatek wpisz szesc liczb." << std::endl; int twojeLiczby[ 6 ]; int x = 0; do { std::cin.clear(); std::cin.sync(); std::cin >> twojeLiczby[ x ]; if( twojeLiczby[ x ] > 50 || twojeLiczby[ x ] < 1 || std::cin.fail() ) { std::cout << "Podaj LICZBE od 1 do 50." << std::endl; } else x++; } while( x < 6 ); int wylosowaneLiczby = 0; int cos = 0; int tablica[ 6 ]; do { wylosowaneLiczby = losowanie(); if( czyByla( tablica, wylosowaneLiczby, cos ) == false ) { tablica[ cos ] = wylosowaneLiczby; cos++; } } while( cos < 6 ); int wynik = 0; cos = 0; do { if( tablica[ cos ] == twojeLiczby[ cos ] ) { wynik++; } cos++; } while( cos < 6 ); int trzy = trojka(); int cztery = czworka(); int piec = piatka(); int szesc = szostka(); cos = 0; std::cout << "Liczby wylosowane to: "; do { std::cout << tablica[ cos ] << ","; cos++; } while( cos < 6 ); std::cout << " " << std::endl; cos = 0; std::cout << "A twoje liczby to: "; do { std::cout << twojeLiczby[ cos ] << ","; cos++; } while( cos < 6 ); std::cout << " " << std::endl; if( wynik == 0 || wynik == 1 || wynik == 2 ) { std::cout << "Niestety, nic nie wygrales." << std::endl; } if( wynik == 3 ) { std::cout << "Trafiles trojke. Wygrales: " << trzy << std::endl; } if( wynik == 4 ) { std::cout << "Trafiles czworke. Wygrales: " << cztery << std::endl; } if( wynik == 5 ) { std::cout << "Trafiles piatke. Wygrales: " << piec << std::endl; } if( wynik == 6 ) { std::cout << "GRATULEJE. WYGRALES GLOWNA NAGRODE CZYLI: " << szesc << std::endl; } return 0; }
|
|
Brunon3 |
» 2015-04-11 17:51:16 A gdzie main();?
-BD. |
|
wojownik266 |
» 2015-04-11 17:53:34 Zaraz za funkcją czyByła! |
|
Brunon3 |
» 2015-04-11 17:54:50 Zaraz za funkcją czyByła! |
No przecież wiem, chodzi mi o to żeby owego main()'a pokazał... -BD. |
|
BadBullPL Temat założony przez niniejszego użytkownika |
» 2015-04-11 18:14:16 Jak mam ci pokazać coś co jest |
|
pekfos |
» 2015-04-11 19:26:31 Co znaczy 'wariuje'? Na androida powinieneś raczej stosować linuksowe czyszczenie strumienia. Jak mam ci pokazać coś co jest |
Może skopiuj mu gdzieś oddzielnie, lol. |
|
« 1 » 2 |