Losowanie bez powtórzeń...
Ostatnio zmodyfikowano 2015-06-11 13:57
damian955 Temat założony przez niniejszego użytkownika |
Losowanie bez powtórzeń... » 2015-06-11 04:19:52 Witajcie! Mam problem, otóż wykonuję program w ramach pracy domowej. Ma działać następująco: podaję trzy dowolne liczby całkowite do tablicy; program je zapamiętuje i wypisuje na ekran; program losuje 2 liczby z trzech, które podałem; losowanie ma się odbyć bez powtórzeń; Problem polega na tym, że nie wiem jakie instrukcje podać żeby program losował moje podane liczby bez ich powtarzania tzn nie wiem jakie zależności wstawić. Podam mój niedokończony kod i napiszę co wiem.
#include <cstdio> #include <iostream> #include <ctime> #include <windows.h> using namespace std; int los() { return(rand()%3)+1; } void pokaz(int a[],int liczba) { system("cls"); liczba=0; printf("Podane trzy liczby to:\n"); do { cout<<a[liczba]<<"\n"; liczba++; }while(liczba<3); } void wpisz(int a[],int nr,int liczba) { bool as; do//w tej linii program wykonuje petle {//w tej linii program otwieraa petle printf("Liczba nr %d: ",nr);cin>>a[liczba];as=cin.good();cin.clear();cin.sync();//w tej linii program zapamietuje trzy liczby nr++;//w tej linii program zapamietuje trzy liczby liczba++;//w tej linii program zapamietuje trzy liczby if(as==0) { system("cls"); cout<<"Wpisz trzy liczby na ekran:"<<endl; nr=1;liczba=0; } }while(liczba<3);//Warunek oddaje koniec
} int main() { srand(time(NULL)); int a[3],liczba,nr; cout<<"Wpisz trzy liczby na ekran:"<<endl; wpisz(a,1,0); pokaz(a,0); nr=1; do { liczba=los(); cout<<endl<<liczba; nr++;//Tutaj ma być stworzony if, ale nie wiem na jakiej podstawie dla zmiennej liczba wiec zostawiam bez if'a, żeby program odpalić bez nieskończonej pętli }while(nr<3); }
Wiem, że muszę sprawić aby zmienna liczba w funkcji main była różna no właśnie od czego od samej zmiennej liczba? Jak mam podpiąć zmienną liczba, aby móc ją negować jeśli będzie taka sama jak wcześniej. Chodzi o to, żeby nie wykorzystywać funkcji, gdyż najpierw próbuję cały kod budować bez niej, a dopiero później go sklejam na bieżąco na funkcje, tak się lepiej uczę. Ja na przykład zmienną liczba podpiął bym pod zmienn nr, ale nie mam pojęcia jak to zrobić.
Odpowiedź na jaką liczę to wyjaśnienie pod co mam podpiąć zmienną liczba, aby nie występowało powtarzanie tej samej tablicy. Oczywiście bez tworzenia dodatkowych funkcji (męczę się z tym już kilka dni i nie moge przez to kontynuować nauki, jedyny tego plus jest taki, że z automatu podczas główkowania wbija mi się wiedza ze starszych lekcji). Dzięki z góry za odp. |
|
darko202 |
» 2015-06-11 08:34:49 to jak zbudujesz konkretny algorytm zależy od Ciebie dlatego odpowiedz na postawione pytania musisz udzielić sobie sam :)
1. zastanów się jak zbudować algorytm 2. narysuj go np. jako schematy blokowe 3. zasymuluj działanie na ww. schemacie 4. przenieś na język programowania
ps. nie rób w jednej linii kilku operacji to zaciemnia
kod wstawiaj w [cpp]...[/cpp]
|
|
damian955 Temat założony przez niniejszego użytkownika |
» 2015-06-11 13:57:23 Ok usuwam konto na forum, bo bez sensu jest prosić o pomoc.
Edit: Proszę administrację o zbanowanie/usunięcie tego konta, gdyż nie jestem zadowolony z forum. Jeśli to się nie stanie w ciągu tygodnia to zostaniecie do tego sprowokowani. Dziękuję. |
|
« 1 » |