Problem z generowaniem liczb losowych w danym przedziale.
Ostatnio zmodyfikowano 2012-11-05 17:38
maze Temat założony przez niniejszego użytkownika |
Problem z generowaniem liczb losowych w danym przedziale. » 2012-11-05 15:50:11 Witam, cwicze generowanie liczb losowych i tworzenie tablic. Mam problem przy okreslaniu przedzialu liczb losowanych, kiedy jedynie chce wyswietlic losowa liczbe za pomoca kodu: to wyswietla tylko liczby nie wieksze niz 6, natomiast kiedy w ten sam sposob chce zapisac wartosci do poszczegolnych elementow tabliczy liczby[], to "%6" wogole nie jest brane pod uwage: for( int a = 0; a < i; a++ ) { liczby[ i ] =(( rand() % 6 ) + 4 ); }
mianowicie zapisywane sa dowolne losowe liczby, czyli duuze. tutaj caly kod programu: #include <iostream> #include <cstdlib> #include <ctime> using namespace std;
int main() { srand( time( NULL ) ); int i; cout << "Podaj zadana wielkosc tablicy"; cin >> i; int liczby[ i ]; for( int a = 0; a < i; a++ ) { liczby[ i ] =(( rand() % 6 ) + 4 ); } cout << "Elementy losowo zapisanej tablicy:"; for( int a = 0; a < i; a++ ) { cout << endl << liczby[ a ] << endl; } return 0; }
Pozdrawiam i dziekuje za pomoc |
|
ison |
» 2012-11-05 17:09:23 liczby[ i ] =(( rand() % 6 ) + 4 );
tu raczej chciałeś napisać [a] a nie [i] ;) nie możesz deklarować tablicy ze zmiennym rozmiarem w ten sposób |
|
crash |
» 2012-11-05 17:34:49 Gościu... cin >> i; int liczby[ i ];
Tablicom statycznym deklaruje się stały rozmiar w trakcie pisania programu. Żeby program mógł sobie dopasować rozmiar do jego potrzeb, należy używać tablic dynamicznych: Dynamiczne zarządzanie pamięcią new i delete |
|
maze Temat założony przez niniejszego użytkownika |
» 2012-11-05 17:36:54 acha czyli tu byl problem, rozumiem dzieki za pomoc!
pozdrawiam
|
|
m4tx |
» 2012-11-05 17:38:50 Hmm a w jaki sposob mozna stworzyc tablice o podanym przez uzytkownika rozmiarze?? Jakis sposob pewnie jest? |
Napisał Ci crash przecież :) EDIT: Widzę, że maze już usunął to, co cytowałem, więc mój post chyba jest niepotrzebny. |
|
« 1 » |