Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

2 семестр ИКТ / Lab_rab_6

.docx
Скачиваний:
0
Добавлен:
21.02.2024
Размер:
16.93 Кб
Скачать

#define _CRT_SECURE_NO_WARNINGS

#include <iostream>

#include <algorithm>

#include <string>

using namespace std;

struct car {

char* mark;

char* surname;

char* name;

int power;

int milage;

};

void input(car* cars, int n);

car* addCar(car* cars, int* n);

void printTable(car* cars, int n);

int main() {

setlocale(LC_ALL, "");

cout << " База данных машин" << endl;

int n;

cout << "Введите кол-во машин: ";

cin >> n;

car* cars = new car[n];

cout << "Заполните базу данных\n";

input(cars, n);

cout << "----------------------------------------------------------------------------------------------------------------------------------------------------" << endl;

cout << "Добавить новую машину в базу..................1" << endl;

cout << "Распечатать базу машин........................2" << endl;

cout << "Поиск машин по марке..........................3" << endl;

cout << "Найти машины с пробегом больше заданного......4" << endl;

cout << "Выйти из программы............................5" << endl;

cout << "Введите номер функции: ";

int c;

cin >> c;

switch (c) {

case 1:

cars = addCar(cars, &n);

break;

case 2:

printTable(cars, n);

break;

/*case 3:

cout << "Введите марку для поиска: ";

cin >> ;*/

}

system("pause");

return 0;

}

void input(car* cars, int n) {

char* buff = new char[100];

for (int i = 0; i < n; i++) {

cout << "Машина " << i + 1 << endl;

cout << "\tМарка машины: ";

cin >> buff;

cars[i].mark = new char[strlen(buff) + 1];

strcpy(cars[i].mark, buff);

cout << "\tФамилия владельца: ";

cin >> buff;

cars[n].surname = new char[strlen(buff) + 1];

strcpy(cars[n].surname, buff);

cout << "\tИмя владельца: ";

cin >> buff;

cars[n].name = new char[strlen(buff) + 1];

strcpy(cars[n].name, buff);

cout << "\tМощность двигателя: ";

cin >> cars[i].power;

cout << "\tПробег: ";

cin >> cars[i].milage;

}

delete[] buff;

buff = NULL;

}

car* addCar(car* cars, int* n) {

car* cars1 = new car[*n + 1];

for (int i = 0; i < *n; i++) {

cars1[i] = cars[i];

}

*n = *n + 1;

//...

delete[] cars;

return cars1;

}

void printTable(car* cars, int n) {

cout << "Марка машины\t" << "Фамилия владельца\t" << "Имя владельца\t" << "Мощность двигателя\t" << "Пробег\t" << endl;

cout << "--------------------------------------------------------------------------------------------------------------------------------------------------" << endl;

for (int i = 0; i < n; i++) {

cout << cars[i].mark << "\t" << cars[i].surname << "\t" << cars[i].name << "\t" << cars[i].power << "\t" << cars[i].milage << endl;

}

}

void findOwner(car* cars) {

}

void exit(car* cars) {

}

void input(car* cars) {

}

Соседние файлы в папке 2 семестр ИКТ