5 / 5 / 1
Регистрация: 10.01.2014
Сообщений: 34
1

Программа с массивом и классом

22.06.2014, 20:29. Показов 1170. Ответов 4
Метки нет (Все метки)

Добрый день. Нужно написать программу. Если пользователь вводит 1 - даем ему записать марку машины. Если пользователь вводит 2 - пишет марку машины которые нужно убрать со стоянки. Короче говоря ведется учет всех автомобилей на стоянке, автомобили можно добовлять и убирать из списка. Сделать при помощи класса и динамического массива.
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.06.2014, 20:29
Ответы с готовыми решениями:

программа с массивом и классом.....
Написал часть программы для составления некой базы 15 книг, где будет записано название книги и...

Проблема с классом и массивом char-ов
Есть класс, содержащий одномерный массив из char-ов и методы для работы с ним. Проблема возникла в...

программа с классом
Помогите пожалуйста с программой, в которой класс sphere представляет шары. Конструктор с...

Программа с классом Point
Разработать класс Point для работы с объектами типа точка на плоскости. Определить в этом классе...

4
31 / 31 / 32
Регистрация: 21.06.2014
Сообщений: 81
22.06.2014, 20:37 2
Динамический массив должен быть в классе? Или динамический массив из объектов класса в главной программе ?
0
5 / 5 / 1
Регистрация: 10.01.2014
Сообщений: 34
22.06.2014, 20:45  [ТС] 3
Из обьектов класса. Вот код который написал, может больше прояснит мысль, но код никудышний((
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#include <iostream>
using namespace std;
 
class Autos{
    char *name;
public:
    Autos(){}
    Autos(char *Name){name=Name;}
    void Action()
    {
        cout << "На стоянке находится: " << name <<" автомобилей" << endl;
    }
};
 
int main()
{
    setlocale(0, "");
    int res;     
    cout << "1 или 2 ?\n";
    cin >> res;
    if(res==1)
    {   
        cout << "Enter your car marka: ";
        cin >> res;
        int *p = new int[res];
        cout << "Your car mark: " << p[res] << endl;
    }
    //delete [] p;
 
    //*p[res].Action();
    system("pause");
    return 0;
}
0
31 / 31 / 32
Регистрация: 21.06.2014
Сообщений: 81
22.06.2014, 22:25 4
Лучший ответ Сообщение было отмечено Andyshon как решение

Решение

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
#include <iostream>
#include <conio.h>
using namespace std;
 
class Autos{
    char *name;
public:
    Autos(){}
    Autos(char *Name)
    {
        int len;
        len=strlen(Name);
        name=new char[len+1];
        strcpy(name,Name);
    }
    char* getname()
    {
        return name;
    }
    ~Autos()
    {
        
        delete[] name;
    }
};
 
int main()
{
    setlocale(LC_ALL, "Russian");
    int res=0;
    int i;
    char autoName[80];
    int arraySize=0;
    int arrayCapacity=5;
    Autos** dynamicArray=new Autos*[5];
    Autos** oldArray;
    while(res!='3')
    {
        system("cls");
        cout<<"Машины на парковке:"<<endl;
        for(int i=0;i<arraySize;i++)
        {
            cout<< (*dynamicArray[i]).getname() << endl;
            
        }
    cout << "1-Добавление авто; 2-Удаление авто; 3-Выход;\n";
    res=getch();
    if(res=='1')
    {   
        cout << "Введите марку машины: ";
        cin >> autoName;
        if(arraySize+1>arrayCapacity)
        {
            oldArray=dynamicArray;
            dynamicArray=new Autos*[arrayCapacity+1];
            for(int i=0;i<arraySize;i++)
            {
                dynamicArray[i]=oldArray[i];
            }
            dynamicArray[arraySize]=new Autos(autoName);
            arraySize++;
            arrayCapacity++;
            delete[] oldArray;
        }
        else
        {
            dynamicArray[arraySize]=new Autos(autoName);
            arraySize++;
        }
        
    }
    if(res=='2')
    {
        cout << "Введите марку удаляемой машины: ";
        cin >> autoName;
        for(i=0;i<arraySize;i++)
        {
            if(!strcmp((*dynamicArray[i]).getname(),autoName))
            {
                delete dynamicArray[i];
                for (int j=i;j<(arraySize-1);j++)
                {
                    dynamicArray[j]=dynamicArray[j+1];
                }
                arraySize--;
                break;
            }
        }
        if(i==arraySize)
        {
            cout<<endl<<"Такой машины нет.";
            getch();
        }
    }
    
    
    }//end while
    return 0;
    
}
0
5 / 5 / 1
Регистрация: 10.01.2014
Сообщений: 34
22.06.2014, 23:48  [ТС] 5
Спасибо огромное за помощь!
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.06.2014, 23:48
Помогаю со студенческими работами здесь

Программа с классом треугольник
Дали задачу написать программу с классом треугольника. А именно нужно: задать стороны треугольника,...

Программа с классом и объектами.
Дана символьная матрица размера 4 х 5. Из последовательности её строк сформировать новую строку и...

Программа с классом и объектами!!!)))
Всем привет)Помогите пожалуйста исправить программку так,что бы она была с классом и...

Программа с классом, определяющая название дня недели
Захотелось написать программу с классом, пользователь вводит номер дня (1-7), а программа название...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru