Zapisywanie historycznych danych losowań Lotto

0

Witam! Razem ze znajomym chcemy zrobić program w którym będzie można sprawdzić powtórzenie się liczb z ostatnich losowań Lotto. Przykładowo dzisiaj odbyło się losowanie, wiec wchodzę w program wpisuje liczby które były one zapisują się w programie i w dokumencie(maksymalnie 10 losowań), a następnie gdy któregoś dnia będę chciał puścić kupon to wchodzę w program podaj liczby a program sprawdzi czy podane liczby kiedyś się już nie powtórzyły (one się nie zapisują w pliku). Nie chce dokładnego kodu jak napisać, co najwyżej jakąś podpowiedź jak to ugryźć, czy zapisać to w tabeli czy może tylko w pliku a następnie pobrać wszystkie linie pliku i porównać każdą ze swoją nową wpisaną.
Ps. jesteśmy początkującymi programistami dopiero się uczymy.

4

@Dzwoniec:

Jasne. Oczywiście nie musisz czytać rozdziałów 1-8 podręcznika C++, tylko rozdział nr 9 o tablicach, a 10-22 tez możesz odpuścić. Voila, banieczka (chyba kilka baniek) twoja ...

A już mrożąco serio: nawet nie masz takich kategorii w głowie, które by pozwoliły postawić pytanie/zagadnienie, bo o wykonaniu to nawet krowy nie cwierkaja
Królu, w geometrii nie ma drogi specjalnej dla królów - wrzuć to zdanie w googla.

2

Sugerowałbym zapisanie wylosowanego zestawu jako pojedynczej liczby typu uint64_t complet,bit=1;
Ustawiając odpowiednie bity jako wylosowane liczby complet|=(bit<<number);
To upraszcza wszelkie porównywania.

1

Zamiast ręcznie wpisywać (i pamiętać o wpisywaniu) to lepiej ściągnąć sobie wyniki i robić z nimi co się tylko zapragnie.
wyniki lotto od 1957r.

4

Ja bym proponował najpierw wrócić do podręcznika z matematyki: rozdział kombinatoryka i prawdopodobieństwo.
Doczytać ile się da, zrobić odpowiednie obliczania dla lotto, a dopiero potem brać się za "analizę" wyników bez względu na metodę. Czyli najpierw powinieneś zdobyć troszkę wiedzy domenowej.
Oszczędzi ci to mnóstwo czasu i frustracji.

Doczytaj też o paradoksie urodzinowym - bo pisałeś coś o szukaniu powtarzających się wynikach.

0

Cześć! Fajny pomysł na projekt! Przedstawię kilka sugestii, jak można zacząć:

Użyj pliku do przechowywania wyników losowań Lotto:
Możesz użyć pliku tekstowego do przechowywania wyników ostatnich 10 losowań. Każdy wynik losowania może być przechowywany jako linia w pliku, z liczbami oddzielonymi przecinkami lub innym separatorem. W przypadku dodania nowego wyniku, usuń najstarsze losowanie, aby utrzymać maksymalnie 10 wyników.

Funkcja do zapisywania wyników losowania:
Napisz funkcję, która zapisze wynik losowania do pliku. Funkcja powinna otworzyć plik, przeczytać aktualne wyniki, dodać nowy wynik, a następnie przepisać plik z nowymi wynikami (maksymalnie 10). Pamiętaj o obsłudze błędów związanych z otwieraniem i zapisywaniem plików.

Funkcja do wczytywania wyników losowań z pliku:
Napisz funkcję, która wczyta wyniki losowań z pliku do kontenera, np. std::vector lub std::list. Kontener ten będzie zawierał dane do przeszukiwania powtórzeń liczb.

Funkcja do sprawdzania powtórzeń liczb:
Napisz funkcję, która przyjmuje jako argument kontener z wynikami losowań oraz zestaw liczb wpisanych przez użytkownika. Funkcja powinna sprawdzić, czy podane liczby kiedykolwiek wcześniej się powtórzyły. Możesz użyć algorytmów takich jak std::find lub std::count, aby sprawdzić występowanie liczb.

Główny interfejs programu:
Utwórz prosty interfejs tekstowy, który pozwoli użytkownikowi wprowadzić nowe wyniki losowań oraz sprawdzić, czy liczby wpisane przez użytkownika powtórzyły się wcześniej. Użyj napisanych wcześniej funkcji do obsługi plików i sprawdzania powtórzeń.

W ten sposób twój program będzie miał oddzielne funkcje do zarządzania wynikami losowań, zapisywania i wczytywania danych z pliku, a także sprawdzania powtórzeń liczb. Rozważ użycie kontenerów i algorytmów z biblioteki standardowej C++ (STL) do pracy z danymi, co znacznie ułatwi implementację.

Powodzenia w realizacji projektu!

0
clip180 napisał(a):

Cześć! Fajny pomysł na projekt! Przedstawię kilka sugestii, jak można zacząć:
...

Powodzenia w realizacji projektu!

Sądzisz, że OP zrozumie ?Miala być szybka kasa, a nie nauka czegokolwiek

0
ZrobieDobrze napisał(a):
clip180 napisał(a):

Cześć! Fajny pomysł na projekt! Przedstawię kilka sugestii, jak można zacząć:
...

Powodzenia w realizacji projektu!

Sądzisz, że OP zrozumie ?Miala być szybka kasa, a nie nauka czegokolwiek

NIe wydaje mi sie ze opierajac sie tylko na ostatnich 10 losowaniach rozbija bank, nie poprosili tez o gotowy kod wiec moze chca sie czegos pouczyc.

3

Bardzo ciekawy projekt, wykorzystajcie pythona i może jakieś pigle do zrzucania danych na dysk.

A tak z matematyki trochę teorii.
Macie takie same szanse na trafienie 1,2,3,4,5,6 i na trafienie 1,2,3,4,5,6 pod rząd.

Zdarzenia w losowaniu są zdarzeniami niezależnymi tak jak rzut monetą, teraz masz 50% szans na reszkę i orła i ci wypadnie orzeł to znaczy że przy następnym rzucie znowu masz 50% szans na orła i reszkę nic się nie zmienia.

Tak samo jak na wylosowanie 1,2,3,4,5,6 masz szansę wylosować 1,2,3,4,5,6 zaraz po tym wylosowaniu.

Ale w pythonie łatwiej wam będzie trzymać dane i je przetwarzać, pickle biblioteka pozwala łatwo różne obiekty jak tablice i tuple z pythona zapisać bezporśrednio do pliku, w C++ będziecie się trochę męczyć jak nic z programowania nie umiecie.

1

@GodOfCode.:

Postawienie matematycznej kwestii niezależności losowań da jedyny możliwy skutek praktyczny: rzucić ten projekt do kosza.
Ale niektórzy w szkole mieli brzydką panią od matematyki, więc ...

0

Obecnie nie ma to już sensu, bo wszystko jest komputerowo wyliczane. Lotto to największy scam i oplucie gdy ktoś wygra (nie można wziąć całej kwoty, tylko dostaje się co miesiąc jakąś małą część). Lepiej liczyć karty grając w blackjacka i tak ogrywać kasyna.

1 użytkowników online, w tym zalogowanych: 0, gości: 1