2016-07-03 1 views
-5

Ich versuche, Zufallszahlen [1; 100] in dieses Array von 5 Elementen einzufügen, aber bisher habe ich nur cin >> zum Einfügen verwendet, wenn der Benutzer etwas einfügen musste. In diesem Fall hätte ich gerne die Zufallsfunktion zum Einfügen von Zahlen, kein Benutzer beteiligt.Was ist der fehlende Schritt hier, um Zufallszahlen in das Array (C++) einzufügen?

Ich zeige den Code unten, weil ich ein Anfänger bin und die enthaltenen Codeteile sind größtenteils, was ich verwenden und verstehen kann, aber auf der anderen Seite ist der ganze Code nutzlos, weil ich nicht weiß, was mit was zu verbinden ist . Wo ist rand()% 100 + 1 zu setzen?

#include<iostream> 
#include<cstdlib> 
#include<ctime> 
using namespace std; 
int main() 
{ 
    srand(time(0)); 
    int a[5]; 
    int r=rand()%100+1; 

    for(int i=0; i<5; i++) 
    { 
     cout<<a[i]<<endl; 
    } 

    for(int i=0; i<5; i++) 
    { 
     cout<<a[i]<<endl; 
    } 

    return 0; 
} 
+0

Sie erstellen nur eine Zufallszahl, und Sie sind nicht in ein Array setzen –

+2

Sie wahrscheinlich den 'rand()' Anweisung in die erste Schleife setzen sollte. –

+1

Unrelated, [gebe '' einen Wirbel] (http://ideone.com/Lq0chX). es sind die Barthaare der Katze. – WhozCraig

Antwort

1

In Ihrem Programm haben Sie 2 Schleifen, die beide Ergebnis ausdrucken. Ich nehme an vorher Sie eine Schleife hatte, die cin verwendet Werte einfügen, wie folgt aus:

for(int i=0; i<5; i++) 
{ 
    cin<<a[i]<<endl; 
} 

Sie wollen also mit ci ändern, um das Einfügen Zufallszahl von Einfügen:

for(int i=0; i<5; i++) 
{ 
    a[i] = rand()%100+1 
} 
+0

Du hast mir sehr geholfen! Vielen Dank! – user1030

1

In Ihrem Code Sie sind Die Werte der Array-Elemente werden nicht mit der Funktion rand() initialisiert.

Ihre Rand-Funktion sollte in die erste "for" -Schleife gehen. Etwas wie das Folgende wird den Trick machen.

for (int i = 0; i < 5; i++) { 
    a[i] = rand()%100+1; 
} 
+0

Vielen Dank! – user1030

Verwandte Themen