Witam,
wydaje mi się że lepszym kontenerem od listy jest vector. W vector możesz odwołać się do zmiennej za pomocą operatoru [] lub metodą at().
np.
vector<int> tablica(2);
tablica.push_back(1);
tablica.push_back(2);
cout << tablica[0] << " " << tablica.at(1) << endl; // wyświetli dwa razy 1
Tutaj na szybko stworzyłem kod. Może Ci to pomoże.
#include <list>
#include <iostream>
using namespace std;
int main()
{
//zbierze dla mnie bliżej nieokreśloną ilość liczb spełniającą pewne warunki(tutaj dałem jekies przykładowe od 1 - 10
list<int> lista;
lista.push_back(1);
lista.push_back(2);
lista.push_back(3);
lista.push_back(4);
lista.push_back(5);
lista.push_back(6);
lista.push_back(7);
lista.push_back(8);
lista.push_back(9);
lista.push_back(10);
//szukanie n-tego, na przykład indeks 6 bo liczy się od 0
int nElement = 5;
list<int>::iterator iter;
int index, value = 0;
for(iter = lista.begin() , index = 0; iter != lista.end() ; ++index , ++iter)
{
// sposób na odszukanie n-tego elementu listy nie
if(index == nElement){
value = *iter;
break;
}
}
cout << "Wartosc n-tego elementu " << value << endl;
system("pause");
return 0;
}