Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > C/C++ Базы данных
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.10.2017, 11:51   #1
Ruslan77777
 
Регистрация: 04.10.2017
Сообщений: 4
По умолчанию Простая база данных на с++(помощ студенту)

Собственно задание:
Разработать информационно справочную систему для работы с базой данных. Входные данные:
1) База данных состоит из записей. (Название автомобиля,год выпуска,пробег)
2) Работа с несколькими програмными единицами является необходимой.
Обеспечить:
– введение даных в оперативную память в двунаправленый список:
а) из текстового файла;
б) с клавиатуры;
– просмотр содержимого базы данных;
– редактирование базы данных:
а) удаление записи;
б) добавление записи;
– выведение данных:
а) в текстовый файл;
б) на экран;
– поиск данных по пробегу;
– сортировка данных по году выпуска;
– получение справочной информации про разработчика;

Подскажите хотябы с чего начинать и алгоритм действий!Заранее спасибо!
Ruslan77777 вне форума Ответить с цитированием
Старый 04.10.2017, 12:30   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,770
По умолчанию

По порядку.
Объявить тип для записи.
Реализовать двунаправленный список.
Придумать формат хранения данных в текстовом файле. Сделать из него ввод.
и т.д. ровно как написано в задании
p51x вне форума Ответить с цитированием
Старый 04.10.2017, 20:53   #3
alexzk
Форумчанин
 
Регистрация: 12.04.2017
Сообщений: 889
По умолчанию

...а начать можно так:

Код:
#include <iostream>

int main(int argc, const char **argv)
{
   return 0;
}
А дальше все строго по заданию
alexzk вне форума Ответить с цитированием
Старый 04.10.2017, 21:26   #4
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,770
По умолчанию

Не, ну ретурн 0 явно лишний - компилятор итак подставит.
p51x вне форума Ответить с цитированием
Старый 05.10.2017, 03:05   #5
Alexander Gamza
Пользователь
 
Регистрация: 14.06.2017
Сообщений: 31
По умолчанию

По порядку
1. На чем писать? Чтоб не заморачиваться с интерфейсом берем бесплатный Embarcadero Builder 10.2 Starter. Имеем нормальный визуальный проектировщик интерфейса - накидал на форму менюшки, кнопочки, гриды и т.д., прописал обработчики и вуаля... Также имеем кучу классов для работы со строками, списками (AnsiString, UnicodeString, StringList, RegEx)
2. База данных - выбор велик, но учитывая, что у Стартера отсутствуют компоненты для работы с ADO (искать аналоги можно до ослиной пасхи), берем SQLite. Движок БД хорошо документирован и масса информации на форумах. Разобраться можно дня за два +мультипользовательский режим.
3. Стандарт входного-выходного файла.
4. В Вашем задании алгоритм программы уже прописан
Alexander Gamza вне форума Ответить с цитированием
Старый 05.10.2017, 07:01   #6
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,770
По умолчанию

1. Формошлепство ТС не нужно, а уж тем более привыкать к не стандартным классам.
2. БД ТС надо реализовать самому как текстовой файл и самому написать работу с ним.
p51x вне форума Ответить с цитированием
Старый 05.10.2017, 09:10   #7
ura_111
Участник клуба
 
Регистрация: 14.05.2016
Сообщений: 1,793
По умолчанию

На этом форуме поищи - там таких задач целая тьма.
Ну вот, например (только часть):

Новый точечный рисунок.jpg

p.s.: но ты ищи не только "двунаправленный", а и "однонаправленный", "кольцевой список".... короче всё, что связано со списками. Вполне возможно, что ты найдёшь "однонаправленный" (самые популярные, которые мне встречались) и его надо будет тебе чуть-чуть переделать.

Самое главное: ты теорию списков знаешь? Представляешь как они работают?
ura_111 вне форума Ответить с цитированием
Старый 05.10.2017, 14:42   #8
ura_111
Участник клуба
 
Регистрация: 14.05.2016
Сообщений: 1,793
По умолчанию

Сейчас набросаю тебе план работы, но сначала определись:
1) у тебя просто С++ или Visual C++? Консоль или программа с интерфейсом?
2) узнай у преподавателя, что такое “несколькими програмными единицами”.
___________________________________ _________

Предположим, что у тебя чистый С++, т.е. консоль, работа с чёрным экраном.

Обычно такое задание делается на основе меню, выбирая пункты которого пользователь демонстрирует выполнения задания: добавление/удаления записи в списке, запись/чтения в файл, редактирование данных…
У себя нашёл шаблон меню:
Код:
#include <iostream>
using namespace std;

struct automobil
{
	char imya[10];
	int god;
	int probeg;
	automobil *next;
	automobil *prev;
};

automobil *head = NULL;

int main()
{
	int meniu = 8;
	setlocale(LC_ALL, "rus");
	while (1)
	{
		if ((1 <= meniu && meniu <= 9) || (meniu == 11) || (meniu == 12) || (meniu == 31) || (meniu == 32) || (meniu == 33) || (meniu == 41) || (meniu == 42))
		{
			if (meniu == 1)
			{
				;
			}
			if (meniu == 11)
			{
				;
			}
			if (meniu == 12)
			{
				;
			}
			if (meniu == 2)
			{
				;	
			}
			if (meniu == 31)
			{
				;
			}
			if (meniu == 32)
			{
				;
			}
			if (meniu == 33)
			{
				;
			}
			if (meniu == 41)
			{
				;
			}
			if (meniu == 42)
			{
				;
			}
			if (meniu == 5)
			{
				;
			}
			if (meniu == 6)
			{
				;
			}
			if (meniu == 7)
			{
				;
			}
			if (meniu == 8)
			{
				system("cls");
				cout << " МЕНЮ:\n";
				cout << "  1.Ввод БД:\n";
				cout << "    11.из файла\n";
				cout << "    12.с клавиатуры\n";
				cout << "  2.Просмотр всей БД\n";
				cout << "  3.Редактирование данных:\n";
				cout << "    31.очистить БД\n";
				cout << "    32.добавить запись\n";
				cout << "    33.удалить запись\n";
				cout << "  4.Вывод БД:\n";
				cout << "    41.в файл\n";
				cout << "    42.на экран\n";
				cout << "  5.Поиск данных по пробегу\n";
				cout << "  6.Сортировка по году выпуска\n";
				cout << "  7.О разработчике\n";
				cout << "  8.Очистить экран\n";
				cout << "  9.Выход\n\n";
			}
			if (meniu == 9)
			{
				break;
			}
		}
		else
		{
			cout << "ERROR! \n\n";
		}
		cout << "меню ";
		cin >> meniu;
	}
	system("pause");
	return 0;
}
В конечном счёте, когда сделаешь все пункты меню, должно получиться что-то вроде такого (на примере другой задачи. Пользователь выбирает пункт меню и "выполняется часть задания"):

12.jpg

12 (1).jpg

Вот тебе и весь план - надо заполнить пункты меню.

___________________________________ __________________

p.s.: и ещё одно, я размышляю со своей колокольни (и не знаю местных условий по твоей задаче), поэтому могу ошибаться в своих рассуждениях. Критически относить к моим словам. Перепряверяй информацию в других местах, например (лучше всего) к преподавателю на консультацию сходи со словами типа: "а вот я начал работу - посмотрите... я правильно понимаю свою задачу...".

Последний раз редактировалось ura_111; 05.10.2017 в 14:46.
ura_111 вне форума Ответить с цитированием
Старый 05.10.2017, 15:13   #9
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Цитата:
Сообщение от ura_111 Посмотреть сообщение
1) у тебя просто С++ или Visual C++? Консоль или программа с интерфейсом?
Внезапно "Visual C++" не подразумевает программу с GUI, несмотря на название.
Это не Дельфи, а просто один из компиляторов С++. Для GUI надо подключать библиотеки типа Qt, wxWidgets, MFC, ... (последний есть в студиях выше Express по умолчанию, но по сути является довольно тонкой оберткой над WinAPI, так что я б не рекомендовал брать его если на это нет особых причин)
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 05.10.2017, 15:23   #10
Ruslan77777
 
Регистрация: 04.10.2017
Сообщений: 4
По умолчанию

Всем огромное спасибо,вроде понял в каком направлении идти!)
Ruslan77777 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Простая база данных GarryMoR C# (си шарп) 1 15.03.2015 12:56
Небольшая база в Open Office База данных. sashaman Фриланс 3 11.04.2010 20:13
Простая автономная база данных ЛомиК БД в Delphi 12 11.07.2008 11:54
База данных (помощь студенту)!!! dizel003 C/C++ Базы данных 8 16.12.2007 16:51