Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

losowanie elementu tablicy

Ostatnio zmodyfikowano 2013-12-07 17:39
Autor Wiadomość
dott94
Temat założony przez niniejszego użytkownika
losowanie elementu tablicy
» 2013-12-07 16:00:22
tak jak w temacie, chcę wylosować element tablicy.
ktoś podpowiedział mi, żeby zrobić to tak:
C/C++
#include<iostream>
#include<fstream>
#include<cstdlib>
#include<iomanip>
using namespace std;


int main()
{
    int tab[ 20 ] = { 25, 275, 400, 325, 100, - 1, 200, 50, 350, - 2, 175, 475, 300, 125, 75, 500, 425, 225, 375, 0 };
    int x;
    x = srand( tab.size() );
    cout << setw( 5 ) << x << endl;
   
}

no i pojawia się błąd:
C:\Users\...\projekt\test.cpp:14:18: error: request for member 'size' in 'tab', which is of non-class type 'int [20]'
co jest nie tak?
P-98579
Monika90
» 2013-12-07 16:06:03
Tablice wbudowane nie mają funkcji składowej size(), użyj std::array<int, 20> - ona ma size(). Poza tym srand nie losuje liczby tylko inicjalizuje generator.
P-98580
dott94
Temat założony przez niniejszego użytkownika
» 2013-12-07 16:28:52
a co zrobić, jeśli w tym programie nie mogę posłużyć się std::array (takie mam wytyczne dotyczące projektu) ?
P-98582
pekfos
» 2013-12-07 16:31:43
Dla takiej tablicy możesz użyć sizeof (zwraca rozmiar w bajtach, a nie elementach).
P-98583
Monika90
» 2013-12-07 16:33:58
Albo zwyczajnie zdefiniuj sobie stałą:
C/C++
const std::size_t rozmiar = 7;
int tab[ rozmiar ] = { 1, 2, 3, 4, 5, 6, 8 };
P-98584
dott94
Temat założony przez niniejszego użytkownika
» 2013-12-07 16:39:49
no ale sizeof mi poda rozmiar tablicy w bajtach... jak to się ma do losowania?
P-98586
dott94
Temat założony przez niniejszego użytkownika
» 2013-12-07 16:43:24
no tak... rozwiązanie ze zmienną rozmiar jest spoko... wtedy tylko losuję normalnie liczbę z przedziału [0, rozmiar] i następnie wypisuję na tab[los]
P-98588
Monika90
» 2013-12-07 16:45:24
Raczej z przedziału [0, rozmiar - 1], no i rozmiar to jest stała, a nie zmienna
P-98590
« 1 » 2
  Strona 1 z 2 Następna strona