Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- class ArrayList{
- public:
- ArrayList(int p){
- razmer = p;
- mass = new int[razmer];
- obnulit(mass, razmer);
- }
- void obnulit(int mass[], int razmer){
- for(int i = 0; i < razmer; i++){
- mass[i] = 0;
- }
- }
- void set(int position, int value){
- if(position>=count)
- cout<<"Net takogo elementa"<<endl;
- else
- mass[position] = value;
- }
- int get(int position){
- if(position>=count) return 0;
- return mass[position];
- }
- void newSpace(){
- razmer*=2;
- int* k = new int[razmer];
- obnulit(k, razmer);
- for(int i = 0; i < razmer/2 ; i++){
- k[i] = mass[i];
- }
- delete mass;
- mass = k;
- }
- void push(int value){
- if(count==razmer-1){
- newSpace();
- }
- mass[count] = value;
- count++;
- }
- ~ArrayList(){
- delete[] mass;
- }
- int pop(){
- count--;
- int i = mass[count];
- return i;
- }
- int quantity(){
- return count;
- }
- private:
- int count = 0;
- int razmer;
- int* mass;
- };
- int main()
- {
- ArrayList d(1);
- int x = -1;
- int value;
- int position;
- cout << "1 dlya dobavlenia elementa" << endl
- << "2 dlya dlya uborki" << endl
- << "3 dlya polucheniya elementa" << endl
- << "4 dlya izmeneniya elementa" << endl
- << "0 dlya vihoda" << endl;
- while (x !=0){
- cout<<endl<<"Vvedi nomer: ";
- cin>>x;
- switch(x){
- case 1: cout << "vvedi chislo ";
- cin >> value;
- d.push(value); break;
- case 2: cout<<d.pop()<<endl;break;
- case 3:
- cout << "vvedi positsiyu: ";
- cin >> position;
- cout<< d.get(position)<<endl; break;
- case 4: cout << "vvedi positsiyu: ";
- cin >> position;
- cout << "vvedi chislo: ";
- cin >> value;
- d.set(position, value); break;
- }
- cout << "Spisok seychas: ";
- for(int i = 0; i < d.quantity(); i++)
- cout<<d.get(i);
- if(d.quantity() == 0)
- cout<<"pust";
- }
- }
Add Comment
Please, Sign In to add comment