Kezdőoldal » Számítástechnika » Programozás » Mi ebben a C++ programrészletb...

Mi ebben a C++ programrészletben a hiba?

Figyelt kérdés

Futtatáskor memóriaszemét jelenik meg. Hogyan kellene átírnom, hogy kiírja a véletlen számokat ?


#include<iostream>

#include<ctime>

#include<cstdlib>

using namespace std;


int main ()


{

srand(time(0));

int szam[100];

for (int i=0;i<99; i=1+1)

{

szam[i]=rand()%(1000-100+1)+100;

cout<<szam<<endl;

}


return 0;

}



2017. márc. 13. 23:11
1 2
 1/12 tabaki ***** válasza:
100%
Miért nem szam[i]-t íratod ki?
2017. márc. 13. 23:40
Hasznos számodra ez a válasz?
 2/12 tabaki ***** válasza:

Ha jól rémlik, a tömbnév index nélkül egyszerűen a tömb első elemének memóriacímét jelenti. Érdekes, nálam nem is memóriaszemét jelenik meg, hanem egy olyasféle szám.

Amúgy hogyan képzeled a for-ciklus leállását, ha i értékét mindig kettőre állítod?

Az 1000-100+1 kifejezés is rejtélyes, miért nem egyszerűen 901?

2017. márc. 13. 23:50
Hasznos számodra ez a válasz?
 3/12 A kérdező kommentje:
100 és 1000 közötti 100 db véletlen számot szeretnék,azért írtam azt
2017. márc. 14. 00:01
 4/12 tabaki ***** válasza:

Ööö... és ez valami magyarázat?

Miben különbözik szerinted a rand()%(1000-100+1) kifejezés mondjuk a rand()%(399+2+500)-tól, vagy a rand()%(1231-330)-tól?

És miért csak 99 számot kérsz, ha százat akarsz?

2017. márc. 14. 00:13
Hasznos számodra ez a válasz?
 5/12 anonim ***** válasza:
iostream hol van? Régen ő szokott az első lenni ha jön egy c++ os kérdés.
2017. márc. 14. 00:29
Hasznos számodra ez a válasz?
 6/12 tabaki ***** válasza:
Nekem is hiányzik, már idejét sem tudom, mikor láttam tőle választ. Remélem, nem történt baja, csak elunta.
2017. márc. 14. 00:47
Hasznos számodra ez a válasz?
 7/12 tabaki ***** válasza:

Úgy tűnik, Kérdező, hiába várok rád. Gondolom, aludni tértél, én mindenesetre így teszek. Szép álmokat!


#include<iostream>

#include<ctime>

#include<cstdlib>

using namespace std;


int main ()

{

srand(time(NULL));

int szam[100];

for (int i = 0; i < 100; i++)

      {

      szam[i] = rand() % (901) + 100;

      cout << szam[i] << endl;

      }

return 0;

}

2017. márc. 14. 00:58
Hasznos számodra ez a válasz?
 8/12 anonim ***** válasza:
Egy rakat hiba van benne.
2017. márc. 14. 07:21
Hasznos számodra ez a válasz?
 9/12 anonim ***** válasza:

i=1+1

Ettől rosszat fogok álmodni! :P

2017. márc. 14. 08:34
Hasznos számodra ez a válasz?
 10/12 A kérdező kommentje:

Elgépelési hiba volt az i=1+1, helyesen i=i+1 és így már működik.

----

Én így tanultam:

#include <iostream>

#include <ctime>

#include <cstdlib>


using namespace std;


int main()

{

srand(time(0));

int szam;


for(int i=0; i<100; i=i+1)

{


szam = rand()%(100-10+1)+10;

cout << szam << endl;

}

return 0;

}

2017. márc. 14. 10:43
1 2

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!