Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[C++]Generowanie Nicków a nie bezmyślnych wyrazów

Ostatnio zmodyfikowano 2015-02-22 22:15
Autor Wiadomość
Gravity
Temat założony przez niniejszego użytkownika
[C++]Generowanie Nicków a nie bezmyślnych wyrazów
» 2015-02-22 21:19:02
Witam,
mam takie pytanie . W jaki sposób można wygenerować nick ale aby był on jakiś sensowny ? Chodzi mi o to , żeby nie było to jakieś agdafh tylko np . yamato , sopelek itp ?
Mój obecny kod :
C/C++
#include <iostream>
#include <cstdlib>
#include <ctime>
#include <windows.h>
#include <string>
using namespace std;

struct LICZBY
{
    int liczba;
};

void wypisz( LICZBY * pp, int ile )
{
    string wyraz;
   
    for( int i = 0; i < ile; i++ )
    {
        pp[ i ].liczba =(( rand() % 25 ) + 97 );
        pp[ i ].liczba = static_cast < char >( pp[ i ].liczba );
        wyraz += pp[ i ].liczba;
    }
   
    cout << wyraz << endl;
   
}
int main()
{
    SetConsoleTitle( "Generator Nickow v1.0" );
    srand( time( 0 ) );
   
    int ile;
   
    do
    {
        cout << "Podaj ile literek ma miec wyraz lub wpisz 0 aby wyjsc : ";
        while( !( cin >> ile ) )
        {
            cin.clear();
            while( cin.get() != '\n' )
                 continue;
           
            cout << "Wpisz liczbe ... : ";
        }
       
        LICZBY * pp = new LICZBY[ ile ];
       
        wypisz( pp, ile );
       
        delete[] pp;
       
       
    } while( ile != 0 );
   
   
   
    return 0;
}

Właśnie on generuje takie bezmyślne wyrazy ale chciałbym go przerobić na taki zwykły generator nicków .
P-127170
Fireho
» 2015-02-22 21:34:46
Albo składanie nicków z określonych fragmentów, albo coś bardziej skomplikowanego, co by myślało o tym ile jest samogłosek, spółgłosek, jak są ułożone itp..
P-127171
pekfos
» 2015-02-22 21:47:21
Łańcuch Markowa.
P-127173
Brunon3
» 2015-02-22 21:51:41
Wdług mnie najlepiej i najprościej tak:

C/C++
string los[ 6 ]; // "Jednoznakowe" string'i ;) ( nie wiem czy można zastąpić to char'ami )
string nick;

//tutaj jakieś losowanie znaków ( 0 = spółgłoska, 1 = samogłoska 2 = spółgłoska itd.)

for( int i = 0; i < 6; i++ ) {
    nick[ i ] = los[ i ]; // Przypisywanie
}
 
Oczywiście to taki kod klepnięty w 25s, nie ma się czego spodziewać. ;)
P-127175
pekfos
» 2015-02-22 21:58:34
Oczywiście to taki kod klepnięty w 25s, nie ma się czego spodziewać. ;)
A cały algorytm, o który tu chodzi, zapisałeś jako komentarz "tu jakieś losowanie"..
P-127176
Dragonit
» 2015-02-22 22:01:03
żeby nie było to jakieś agdafh
Ja bym sie tym nie martwił, widziałem głupsze nicki :)
P-127178
Brunon3
» 2015-02-22 22:01:19
A cały algorytm, o który tu chodzi, zapisałeś jako komentarz "tu jakieś losowanie"..

No więc można to zrobić losując ANSI. ;) ( Choć nad tym musiałbym się głębiej zastanowić... )

Edit:

żeby nie było to jakieś agdafh

Ja bym sie tym nie martwił, widziałem głupsze nicki :)

Taak, na przykład gdzieś w internecie znalazłem jakieś "pekfos". Widział ktoś gorszy nick?!
To taki słaby żarcik oczywiście. ;)
P-127179
pekfos
» 2015-02-22 22:05:42
No więc można to zrobić losując ANSI. ;) ( Choć nad tym musiałbym się głębiej zastanowić... )
Lepiej się głębiej zastanów przed pisaniem odpowiedzi. Cały problem polega na tym, że nie można zrobić zwykłego losowania, bo daje niezadowalające rezultaty. Za pisanie bezsensownych odpowiedzi bany już się zdarzały, jak mnie pamięć nie myli..
P-127180
« 1 » 2
  Strona 1 z 2 Następna strona