powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Прошу помощи решении для курсовой
9 сообщений из 9, страница 1 из 1
Прошу помощи решении для курсовой
    #38557894
Лаамер
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ребята обращаюсь с просьбой, учусь в политехническом :) в смысле в колледже, дали задачку написать на сях простейшую базу больницы с обработчиком для поиска и вывода.. ну т.п.
Дали методичку с аналогичной темой, после небольшого шаманства с полным отсутствием знаний по данному языку получилось практически всё, осталась загвоздка - при занесении в базу даты в формате (xx.xx.xxxx) он мне выводит совсем другие данные, пошарив по форумам и прочим местечкам я понял что простым char не обойтись, но всей моей соображалки не хватает чтобы понять как реализовать некий Date в коде, так что прошу помочь, если поможете буду очень признателен, нести уже нужно завтра :(:(

Собственно часть кода с датой:

//Объявление
struct Notes
{
char Name[60]; // Фамилия, имя, отчество
char Phone[16]; // Телефон
char Date[20]; // Собственно дата

};

void __fastcall TForm1::Button1Click(TObject *Sender)
{
Notes Note1;
// Получение значений с полей ввода
strcpy(Note1.Name,Edit1->Text.c_str());
strcpy(Note1.Phone,ComboBox1->Text.c_str());
strcpy(Note1.Date,Edit3->Text.c_str());

// Поиск по дате
if (poisk==3)
{
char bukm[2];
strcpy(bukm,Edit6->Text.c_str());
while (!file.read((char*)&Note1, sizeof(Notes)).eof())
{
if (Note1.Date[0]==bukm[0])
{
sprintf(str,"%s\Телефон: %s\Дата: %d", Note1.Name, Note1.Phone, Note1.Date);
Memo1->Lines->Add(str);
...
Рейтинг: 0 / 0
Прошу помощи решении для курсовой
    #38557911
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лаамерchar Date[20]; // Собственно дата
"Собственно дата" это обычно TDateTime или time_t, но уж никак не char[20].
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Прошу помощи решении для курсовой
    #38557918
Лаамер
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov,

Рад что вы откликнулись на мою беду )
Я хочу подчеркнуть что я полный профан в этом деле, я уже видел TDateTime где то на форумах, но не смог его прикрутить в связи с полным отсутствием знаний... как оно всегда бывает при обучении на заочке :)
Если не сложно, пожалуйста помогите полностью прописать этот тип данных, просто если я его так описываю он соответственно ругается на дальнейшую конвертацию данных в обработчике
"[C++ Error] Unit1.cpp(40): E2034 Cannot convert 'TDateTime *' to 'char *'"
"[C++ Error] Unit1.cpp(40): E2342 Type mismatch in parameter '__dest' (wanted 'char *', got 'TDateTime *')"
Самостоятельно к великому сожалению решить эту проблему не могу
...
Рейтинг: 0 / 0
Прошу помощи решении для курсовой
    #38557920
Лаамер
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я уверен что понятно и без моих пояснений, но на всякий случай напишу ---

Это кнопка загрузки инфы из полей ввода в базу

void __fastcall TForm1::Button1Click(TObject *Sender)
{
Notes Note1;
// Получение значений с полей ввода
strcpy(Note1.Name,Edit1->Text.c_str());
strcpy(Note1.Phone,ComboBox1->Text.c_str());
strcpy(Note1.Date,Edit3->Text.c_str());

Это кнопка вызова поиска из базы по ключевому элементу и вывода в поле Tmemo

// Поиск по дате
if (poisk==3)
{
char bukm[2];
strcpy(bukm,Edit6->Text.c_str());
while (!file.read((char*)&Note1, sizeof(Notes)).eof())
{
if (Note1.Date[0]==bukm[0])
{
sprintf(str,"%s\Телефон: %s\Дата: %d", Note1.Name, Note1.Phone, Note1.Date);
Memo1->Lines->Add(str);
...
Рейтинг: 0 / 0
Прошу помощи решении для курсовой
    #38557927
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЛаамерСамостоятельно к великому сожалению решить эту проблему не могу
Именно для этого существует клавиша F1, которая открывает справку в которой есть раздел
"Date time routines", включающий в себя (помимо прочего) описание функции DateToStr().
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Прошу помощи решении для курсовой
    #38557939
Лаамер
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov,

К сожалению хелп на винде 8.1 не работает :(
воспользовался волшебным гуглом который меня навёл на следующую мысль AnsiString Note1.Age=DateToStr(Edit3->Date);
Правда вылазит ошибка [C++ Error] Unit1.cpp(93): E2015 Ambiguity between '_fastcall TDateTime::operator double() const' and '_fastcall TDateTime::operator int() const'
сижу думаю :)
...
Рейтинг: 0 / 0
Прошу помощи решении для курсовой
    #38557942
Лаамер
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Не обращайте внимания на Age, это и есть та дата, она описана как ... вот на этом моменте обнаружил ошибку TDateTime Age[20]; исправил на TDateTime Age;
теперь ошибка другого типа [C++ Error] Unit1.cpp(93): E2093 'operator*' not implemented in type 'TDateTime' for arguments of the same type
...
Рейтинг: 0 / 0
Прошу помощи решении для курсовой
    #38557951
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лаамер, здравствуйте.

Лаамер дали задачку написать на сях простейшую базу больницы


Используя C/C++ вы вероятно проектируете интерфейс для общения с бд, а "написание", а правильней проектирование бд, происходит на SQL(вероятнее всего), вы должны описать сущности бд и связи между ними, хранимые процедуры, триггеры и т.п. Далее после проектирования(а лучше параллельно) вы должны выбрать СУБД, и написать для неё запросы для хранения таблиц и программируемой логики БД.
И уже только потом(а может и параллельно) вы будете делать дружелюбный интерфейс используя С/С++ для CRUD операций с бд. Максимизируйте нагрузку на СУБД. Если вам например нужно выгружать только день месяц год, а не информацию до миллисекунд, то не нужно делать обрезание в СИ после выгрузки, сделайте это в запросе, либо создайте ряд хранимых процедур для выгрузки данных.
В общем главный посыл:
1) различайте проектирование бд и проектирование интерфейса под бд
2) Максимизируйте нагрузку на СУБД
...
Рейтинг: 0 / 0
Прошу помощи решении для курсовой
    #38558080
warIord
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
зачем тут промышланные субд , человеку проще свой прототип на файлах сделать, добавление записи (файла), поиск и удаление (файлов),

не забываем в конце концов, что любая субд живёт на файлах, на которые навешаны журналирование и оптимизатор
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Прошу помощи решении для курсовой
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]