Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Zufallszahlen

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 < [ 2 ]
000
02.08.2004, 11:24 Uhr
Zero



Hi Leute ,hat jemand ne Idee wie ich 15 Zufallszahlen zwischen 1 und 80 generieren kann, sie nach grösse sortiere und überprüfe das jede Zahl nur einmal vorkommt, falls eine Zahl doppel vorkommt soll sie erneut generiert werden solange bis alle Zahlen ungleich sind.

1000 Dank im vorraus !!!


Mein Code bis jetzt:


C++:
int a[14],i = 0;
String v = "";

int w,x,y,z = 13;


//---------------------------------------------  Zufallszahlengenerator

for (i = 0; i <= 14; i++)
{
a[i] = random(79) +1      //Zufallszahlen zwischen 1 und 80
}


//---------------------------------------------  Array sortieren


for (w = 0 ;  w <= 14; w++)
{
     for (x = 0; x <= z; x++)
   {
     if (a[x] > a[x + 1])
     {
       y = a[x];
       a[x] = a[x + 1];
       a[x + 1] = y;
     }
   }
  z--;
}




 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
02.08.2004, 11:34 Uhr
virtual
Sexiest Bit alive
(Operator)


Na, ich würde es mit einem set machen:

C++:
// 15 Verschiedene Zahlen ziehen, automatisch sortieren
std::set<int> zahlen;
while(zahlen.size()<15)
{
    zahlen.insert(rand()%80 + 1);
}
// ggf. in Vector umwandeln:
std::vector<int> zahlen_vector(zahlen.begin(), zahlen.end());


--
Gruß, virtual
Quote of the Month
Ich eß' nur was ein Gesicht hat (Creme 21)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
02.08.2004, 12:05 Uhr
Zero




Zitat von virtual:
Na, ich würde es mit einem set machen:

C++:
// 15 Verschiedene Zahlen ziehen, automatisch sortieren
std::set<int> zahlen;
while(zahlen.size()<15)
{
    zahlen.insert(rand()%80 + 1);
}
// ggf. in Vector umwandeln:
std::vector<int> zahlen_vector(zahlen.begin(), zahlen.end());






kann es sein das die std::...... nur in Konsolenanwendungen funktioniert ?

Benutze den CBuilder 5
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
02.08.2004, 12:28 Uhr
virtual
Sexiest Bit alive
(Operator)


std:: Funktioniert für jeden Standardkonformen Compiler.
--
Gruß, virtual
Quote of the Month
Ich eß' nur was ein Gesicht hat (Creme 21)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
02.08.2004, 12:29 Uhr
(un)wissender
Niveauwart


@Zero
Nee !
Aber ich glaube, virtual hat da ein wenig vorgegriffen.
Mit #include <set> und #include <vector> sollte sein Beispiel aber funktionieren.
--
Wer früher stirbt ist länger tot.

Dieser Post wurde am 02.08.2004 um 12:30 Uhr von (un)wissender editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
02.08.2004, 12:31 Uhr
0xdeadbeef
Gott
(Operator)


Sowas in der Art?

C++:
#include <algorithm>
#include <cstdlib>
#include <ctime>
#include <iostream>
#include <iterator>
#include <set>

int main() {
  std::srand(std::time(0));
  std::set<int> zahlen;

  while(zahlen.size() < 15)
    zahlen.insert(std::rand() % 80 + 1);

  std::copy(zahlen.begin(), zahlen.end(),
            std::ostream_iterator<int>(std::cout, " "));
  std::cout << std::endl;

  return 0;
}


--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
02.08.2004, 12:36 Uhr
(un)wissender
Niveauwart


So ein bisschen gemein ist das schon, ich glaube nicht, dass er davon viel versteht...
--
Wer früher stirbt ist länger tot.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
02.08.2004, 13:55 Uhr
Zero




Zitat von (un)wissender:
So ein bisschen gemein ist das schon, ich glaube nicht, dass er davon viel versteht...



was soll daran gemein sein, ich verstehe jede Zeile weil ich Informations Technischer Assistent gelernt habe und C++ ein Hauptfach war, hätte er mir des Include genannt wäre es einfacher gewesen

Übrigens, habe das Problem schon seit einer Stunde gelöst, danke Leute !
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
02.08.2004, 14:25 Uhr
0xdeadbeef
Gott
(Operator)


C++ als Hauptfach und findet einfache STL-Container nicht? Ts, ts...

Ich würde mir an deiner Stelle das hier mal durchlesen - das ist auch als Referenz ziemlich gut zu gebrauchen: www.sgi.com/tech/stl/
--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
02.08.2004, 16:23 Uhr
Zero




Zitat von 0xdeadbeef:
C++ als Hauptfach und findet einfache STL-Container nicht? Ts, ts...

Ich würde mir an deiner Stelle das hier mal durchlesen - das ist auch als Referenz ziemlich gut zu gebrauchen: www.sgi.com/tech/stl/





apropo, in welcher Reihenfolge bindet man Header Dateien eigentlich ein ? Die Reihenfolge kann nicht egal sein da es beim umstellen immer wieder einen anderen Fehler gibt (bei nem anderen Projekt -sobald ich alle Packages über "Project ->Options einbinde läuft alles supi




P.S. "C++ als Hauptfach und findet einfache STL-Container nicht" - Wir haben während der Ausbildung kein einzigstes male über STL-Container gesprochen da anscheinend die Verwendung von Refferenzen, Pointer und die daraus resultierenden Verketteten Listen wesentlich wichtiger für die Tutoren war. Tut mir ja schrecklich leid aber mehr als Nachfragen und lernen bleibt mir nicht, weil ich sehr ambitioniert bin und einfach mein Wissen ausbauen möchte, auch wenn manche Frage für euch Natur Ultras dumm wirkt.
Ist doch klar das man bei solch einer Komplexen tätigkeit nicht als 20 Jähriger alles wissen kann.
Sorry

Dieser Post wurde am 02.08.2004 um 22:22 Uhr von FloSoft editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 < [ 2 ]     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: