Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <vector>
- #include <utility>
- #include <fstream>
- #include <windows.h>
- #include <cstdlib>
- #include <stdlib.h>
- #include <ctime>
- #include <stdio.h>
- #include "random"
- using namespace std;
- thread_local std::mt19937 gen{std::random_device{}()};
- template<typename T>
- T random(T min, T max) {
- return std::uniform_int_distribution<T>{min, max}(gen);
- }
- class para{
- public:
- int ilosc_skarpet=0;
- int czy_para(int ile_jest,int para)
- {
- if(ile_jest%2==0)
- {
- return (para+1);
- }
- else return para;
- }
- };
- int main()
- {
- int nr_testu=0;
- int ile_testow;
- cin>>ile_testow;
- while(nr_testu!=ile_testow){
- int czarne=50,
- brazowe=40,
- zielone=30,
- niebieskie=20;
- nr_testu++;
- para czarne_pary;
- para brazowe_pary;
- para zielone_pary;
- para niebieskie_pary;
- int iczarne_pary=0;
- int ibrazowe_pary=0;
- int izielone_pary=0;
- int iniebieskie_pary=0;
- int ile_skarpet_lacznie=0;
- cout<<"Zaczynam dobieranie par ! "<<endl;
- while(iczarne_pary+ibrazowe_pary+izielone_pary+iniebieskie_pary<20)
- {
- ile_skarpet_lacznie++;
- int maksymalna_ilosc_do_losowania=czarne+brazowe+zielone+niebieskie;
- int losowa=random(0,maksymalna_ilosc_do_losowania);
- if(losowa<=czarne)
- {
- cout<<" Dobrano czarna skarpete "<<endl;
- czarne_pary.ilosc_skarpet++;
- czarne--;
- iczarne_pary=czarne_pary.czy_para(czarne_pary.ilosc_skarpet,iczarne_pary);
- Sleep(10);
- }else if(losowa>czarne&&losowa<=czarne+brazowe)
- {
- cout<<" Dobrano brazowa skarpete "<<endl;
- brazowe_pary.ilosc_skarpet++;
- brazowe--;
- ibrazowe_pary=brazowe_pary.czy_para(brazowe_pary.ilosc_skarpet,ibrazowe_pary);
- Sleep(10);
- }else if(losowa>czarne+brazowe&&losowa<=czarne+brazowe+zielone)
- {
- cout<<" Dobrano zielana skarpete "<<endl;
- zielone_pary.ilosc_skarpet++;
- zielone--;
- izielone_pary=zielone_pary.czy_para(zielone_pary.ilosc_skarpet,izielone_pary);
- Sleep(10);
- }else if(losowa>czarne+brazowe+zielone&&losowa<=czarne+brazowe+zielone+niebieskie)
- {
- cout<<" Dobrano niebieskie skarpete "<<endl;
- niebieskie_pary.ilosc_skarpet++;
- niebieskie--;
- iniebieskie_pary=niebieskie_pary.czy_para(niebieskie_pary.ilosc_skarpet,iniebieskie_pary);
- Sleep(10);
- }
- }
- {
- cout<<endl<<"Zapisuje w pliku tekstowym "<<endl;
- fstream Testyc;
- Testyc.open("G:\\Qt projekty\\Prawdopodobienstwo_index_AGH_Warunek_Najgorszy\\Testy.txt",ios::out|ios::app);
- Testyc<<endl<<"Nr testu "<<nr_testu<<endl;
- Testyc<<"Liczba czarnych to "<<czarne_pary.ilosc_skarpet<<endl;
- Testyc<<"Liczba brazowych to "<<brazowe_pary.ilosc_skarpet<<endl;
- Testyc<<"Liczba zielonych to "<<zielone_pary.ilosc_skarpet<<endl;
- Testyc<<"Liczba niebieskie to "<<niebieskie_pary.ilosc_skarpet<<endl;
- Testyc<<"Lacznie "<<endl<<
- ile_skarpet_lacznie;
- Testyc.close();
- cout<<endl<<endl<<endl<<endl<<"Koniec petli , potrzeba bylo "<<ile_skarpet_lacznie<<" skarpet "<<endl;
- cout<<"Podam teraz ilosc wszyskich par wszystkich skapet "<<endl;
- cout<<"Czarnych bylo "<<czarne_pary.ilosc_skarpet<<" a par bylo "<<iczarne_pary<<endl;
- cout<<"Brazowych bylo "<<brazowe_pary.ilosc_skarpet<<" a par bylo "<<ibrazowe_pary<<endl;
- cout<<"Zielonych bylo "<<zielone_pary.ilosc_skarpet<<" a par bylo "<<izielone_pary<<endl;
- cout<<"Niebieskich bylo "<<niebieskie_pary.ilosc_skarpet<<" a par bylo "<<iniebieskie_pary<<endl;
- Sleep(2000);
- cout<<endl<<endl<<endl<<endl<<"Nastąpi czyszczenie konsoli ";
- system("cls");
- }
- }/* fstream Testyc;
- Testyc.open("Sprawdzarka.txt",ios::in)
- if(Testyc.good()==false)
- {
- cout<<"Coś z&&&&&& przy pliku xD ";
- exit(0);
- }
- */
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement