[C++] Wörter erstellen

02/11/2010 22:25 1D2O3M4E5N6I7C8#1
Hey,

Ich hatte letze Woche oder so im Internet ein schönes Beispiel in AutoIt gefunden um Wörter zu erzeugen, das ganze brauche ich allerdings in C++.
Ich habe schon vieles versucht, aber diese ganzen random bringen mich da etwas durch einander. Ich hoffe mir kein einer von euch helfen. Das ganze sollte dann mit cout ohne Ende ausgegeben werden, also das man dabei kein Maximum an Wörter setzt.

Hier erstmal das AutoIt Script:
Code:
#include<Array.au3>

$input=InputBox("Anzahl","Anzahl der Wörter , die erzeugt werden sollen")
Dim $worte[$input]

For $i=0 To $input-1
            $randT=""
            For $k=0 To Random(2,9,1)
                $ran=Random(0,2,1)
                If $ran=1 Then
                $randT=$randT&chr(Random(65,90,1))
                ElseIf $ran=2 Then
                $randT=$randT&chr(Random(97,122,1))
                Else
                $randT=$randT&Random(1,99,1)
                EndIf
            Next
$worte[$i]=$randT
Next
_ArrayDisplay($worte)
02/12/2010 15:01 Shadow992#2
Quote:
Originally Posted by 1D2O3M4E5N6I7C8 View Post
Hey,

Ich hatte letze Woche oder so im Internet ein schönes Beispiel in AutoIt gefunden um Wörter zu erzeugen, das ganze brauche ich allerdings in C++.
Ich habe schon vieles versucht, aber diese ganzen random bringen mich da etwas durch einander. Ich hoffe mir kein einer von euch helfen. Das ganze sollte dann mit cout ohne Ende ausgegeben werden, also das man dabei kein Maximum an Wörter setzt.

Hier erstmal das AutoIt Script:
Code:
#include<Array.au3>

$input=InputBox("Anzahl","Anzahl der Wörter , die erzeugt werden sollen")
Dim $worte[$input]

For $i=0 To $input-1
            $randT=""
            For $k=0 To Random(2,9,1)
                $ran=Random(0,2,1)
                If $ran=1 Then
                $randT=$randT&chr(Random(65,90,1))
                ElseIf $ran=2 Then
                $randT=$randT&chr(Random(97,122,1))
                Else
                $randT=$randT&Random(1,99,1)
                EndIf
            Next
$worte[$i]=$randT
Next
_ArrayDisplay($worte)
Diesen Code hast du auf genau dieser Seite bekommen und zwar auch von mir und da ich so nett bin , bekommst du den selben Code auch nochmal für C++ :D
Code:
#include <cstdlib>
#include <iostream>
#include <string>
#include <time.h>

using namespace std;
int ran ;
string randT="" ;
string zahl ;

int main()
{
    srand ((unsigned)time( NULL ));
    while (1==1)
    {
        
        randT="" ;
        for (int i=0;i < rand() % 15 + 2;i++)
        {
            ran = rand() % 3 + 1;
            if (ran<=1)
            {
                 zahl = rand() % 26 + 65  ;
                 randT.append(zahl) ;
            }
            else if (ran<=2)
            {
                 zahl = rand() % 26 + 97  ;
               randT.append(zahl) ;
            }
            else 
            {
                zahl = rand() % 10 + 48  ;
               randT.append(zahl) ;
            }
        }
        cout << randT << "\n" ;
    }

}
02/12/2010 15:46 1D2O3M4E5N6I7C8#3
Auf dieser Site? lol, hatte das irgendwo abgespeichert, wusste nicht mehr das es von hier ist.
Naja das ganze funktioniert auch in C++ super.
Viele Dank!