c++ Tablica Klasa

0

Witam mam napisać Klasę która zawiera składnik tab - wskaźnik na liczbę typu int oraz metody:
Utwoz - parametr typu int tworzy tablicę i elementów
dodajNowy - parametr typu double - dodaje nowy element do tablicy (na końcu)
element - parametr typu int - zwraca element o podanym indeksie
usuń - parametr typu int - usuwa element o podanym indeksie

Mój program wygląda następująco:

class Tablica {  
public:
	int* tab;
	void utworz();
	void dodajNowy();
	int element();
	void usun();
};
void Tablica::utworz(){
	int p;
	cout<< "podaj wielkosc tablicy"<<endl;
	cin>>p;
	tab = new int [p];
}
void Tablica::dodajNowy(){
	double a;
	cout<< "podaj liczbe: "<<endl;
	cin>> a;
	for (int i=0;i<sizeof(tab);i++)
	if (tab[i]=='/0'){	
	tab[i]=a;
	continue;
	}
}
int Tablica::element(){
	int tmp;
cout<<"podaj indeks: "<<endl;
cin>> tmp;
return tab[tmp];	
}
void Tablica::usun(){
	int tmp;
	cout<<"podaj indeks do usuniecia: "<<endl;
	cin>>tmp;
	for(int i = tmp; i < sizeof(tab); i++) tab[i] = tab[i + 1];
  tab[sizeof tab] = 0;

}
int main(){
	Tablica p;
	p.utworz();
	p.dodajNowy();
	p.dodajNowy();
	cout<< p.element();
	
	system("PAUSE");
} 

nie wiem czy zrobiłem dobrze dodawanie elementu ponieważ jeśli chcę wyświetlić element o np 1 indeksie nie wyświetla mi się prawidłowo proszę o pomoc

0
if (tab[i]=='/0'){    
    tab[i]=a;
    continue;
    }

ten fragment kodu nie ma sensu skad wiesz ze tablica bedzie sie tym znakiem konczyc? jezeli nie ma zadnego elementu? Nie wiesz bo sa tam randomowe liczby(tak randomowe)

co musisz zrobic to przechowywac ostatni_index (ktory zainicializujesz zerem) i pozniej go powiekszac. Jezeli dodajesz nowy to po prostu robisz
ostatni_index++;

if(ostatni_index < wielkosc_tablicy) 
{
    tab[ostatni_index] = element;
}

formatuj rowniez kod bo wyglada zle

0

Oki zrobione a jeśli chodzi o "utworz" mam tam

	tab = new int [p]; 

ale to tylko przydziela pamięć a ja chce żeby w tym ustawiać wielkość tablicy jak to zrobić ?

0

przydzielasz tablice o rozmiarze P (rozmiar! [rozmiar]). Wiec Twoje P to rozmiar tablicy. Przydziela pamiec o rozmiarze int * p

1 użytkowników online, w tym zalogowanych: 0, gości: 1