Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

losowanie wyrazów bez powtórzeń c++

JakubIT 30 Lip 2017 22:08 672 5
  • #1 30 Lip 2017 22:08
    JakubIT
    Poziom 2  

    Ostatnio chciałem zrobić sobie program który losuje pseudolosowo wyrazy ale kompletnie nie wiem jak to zrobić :( Mógłby ktoś zrobić taki program i wyjaśnić mi krok po kroku jak to zostało zrobione ?

    0 5
  • #2 30 Lip 2017 22:14
    2675900
    Użytkownik usunął konto  
  • #3 31 Lip 2017 10:32
    GrhuGhu
    Poziom 6  

    Dokładnie tak jak kolega wyżej napisał ;)
    Musisz trochę pomyśleć, na początku przeanalizuj dokładnie jakie czynności będzie musiał wykonać program. Wiesz na pewno, że program musi wylosować wyraz. Jeżeli nie wiesz, jak losować bez powtórzeń, to zastanów się co trzeba zrobić aby tych powtórzeń uniknąć, przechować gdzieś poprzednie wyrazy. Całą reszta to podstawy. Napisz kod, a kiedy pojawią się problemy to dopiero wtedy pomożemy. :)

    0
  • #4 31 Lip 2017 12:21
    JakubIT
    Poziom 2  

    GrhuGhu napisał:
    Dokładnie tak jak kolega wyżej napisał ;)
    Musisz trochę pomyśleć, na początku przeanalizuj dokładnie jakie czynności będzie musiał wykonać program. Wiesz na pewno, że program musi wylosować wyraz. Jeżeli nie wiesz, jak losować bez powtórzeń, to zastanów się co trzeba zrobić aby tych powtórzeń uniknąć, przechować gdzieś poprzednie wyrazy. Całą reszta to podstawy. Napisz kod, a kiedy pojawią się problemy to dopiero wtedy pomożemy. :)


    Wiem jak zrobić pseudolosowanie ale na przykładzie liczb problem mam jak teraz liczby zamienić na wyrazy ;/

    0
  • Pomocny post
    #5 31 Lip 2017 12:26
    GrhuGhu
    Poziom 6  

    No cóż, wiesz jak zmienna char przechowuje znaki? Raczej nie zapiszesz w pamięci komputera np 'A' albo 'C'. Zmienne typu char przechowują znaki własnie w postaci liczb (Tu poczytaj trochę o ASCII).
    Wiec wniosek jest proty, losujesz liczbę z odpowiedniego przedziału (jesli rzuciłeś okiem na tablice ascii to bedziesz wiedział o co chodzi :) ), zamieniasz ją na znak, a następnie dodajesz do łańcuchu znaków - zmiennej string przechowującej napis. :)

    To wyżej to zdecydowanie prostsze i lepsze rozwiązanie, możesz także po prostu losować liczbe z przedziału 1-32 i odpowiednio za pomocą switcha lub if-ów dodawać do napisu litery.

    Kod: c
    Zaloguj się, aby zobaczyć kod

    0
  • #6 31 Lip 2017 12:32
    JakubIT
    Poziom 2  

    GrhuGhu napisał:
    No cóż, wiesz jak zmienna char przechowuje znaki? Raczej nie zapiszesz w pamięci komputera np 'A' albo 'C'. Zmienne typu char przechowują znaki własnie w postaci liczb (Tu poczytaj trochę o ASCII).
    Wiec wniosek jest proty, losujesz liczbę z odpowiedniego przedziału (jesli rzuciłeś okiem na tablice ascii to bedziesz wiedział o co chodzi :) ), zamieniasz ją na znak, a następnie dodajesz do łańcuchu znaków - zmiennej string przechowującej napis. :)


    O i dziękuję ci bardzo teraz chociaż wiem w jakim kierunku mam pójść i czego się dowiedzieć abym mógł coś takiego zrobić :)

    0