Форум программистов, компьютерный форум, киберфорум
Visual C++: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
1 / 1 / 3
Регистрация: 17.12.2015
Сообщений: 62

Простейшая база данных на С++

20.05.2016, 18:31. Показов 1661. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Мне надо написать базу данных, структура изображена на картинке.
Я ее написал , но в добавку мне нужно написать одну дополнительную функцию. Дополнительная функция должна найти и вывести на экран фирму, которая чаще всего была истцом.
Помогите ее написать.
Структура:



Код:

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
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
#include <iostream>
#include <stdlib.h>
#include <fstream>
#include <cstdio>
#include <string.h>
#include <stdio.h>
#include <cstdlib>
#include <cstring>
 
using namespace std;
 
struct DATA{
 int day;
 int month;
 int year;
};
 
struct vidp {
 int telefon;
 char nazvFirm[15];
 };
 
struct sprava{
 DATA data;
 char predmet[20];
 vidp v;
 vidp obv;
};
 
sprava* array_of_sprava=new sprava[50];
FILE* Fs;
int nzap=0;
 
int i=0,h=0,g=0;
 
 
int reading()//чтение;
{
if ((Fs=fopen("my.dat","rb"))==NULL)
    {
          cout<<("Не можу відкрити файл\n");
          return 0; }
   do
       {
         fread(&array_of_sprava[nzap],sizeof(sprava),1,Fs);
         nzap++;
         if (feof(Fs)) break;
 
       } while(1);
 
    nzap--;
 
    cout<<"Зчитування закінчено\n";
    fclose(Fs); // Закрываем файл
    system("pause");
    return 0;
}
 
int outp_to_file(){ // Вывод в файл
FILE* Fs;
   if ((Fs=fopen("my.dat","wb"))==NULL)
    {
     cout<<("Файл не створений!\n");
     return 0;
    }
   for (int i=0;i<nzap;i++)
     fwrite(&array_of_sprava[i],sizeof(sprava),1,Fs);
   cout<<("Файл створений!");
    fclose(Fs);
    system("pause");
}
 
 
 
int input_in_array(){//ввод в масив;
int q=1;
while (q!=0)
{
cout<<"\nВведіть день справи: ";
cin>>array_of_sprava[nzap].data.day;
cout<<"\nВведіть місяц справи: ";
cin>>array_of_sprava[nzap].data.month;
cout<<"\nВведіть рік справи: ";
cin>>array_of_sprava[nzap].data.year;
cout<<"\nВведіть придмет справи: ";
cin>>array_of_sprava[nzap].predmet;
cout<<"\nВведіть телефон позивача: ";
cin>>array_of_sprava[nzap].v.telefon;
cout<<"\nВведіть фірму позивача: ";
cin>>array_of_sprava[nzap].v.nazvFirm;
cout<<"\nВведіть телефон обвинувачуваного: ";
cin>>array_of_sprava[nzap].obv.telefon;
cout<<"\nВведіть фірму обвинувачуваного: ";
cin>>array_of_sprava[nzap].obv.nazvFirm;
nzap++;
cout<<"\nВведіть 0 для закінчення запису або будь-яке число для продовження: ";
cin>>q;
cout<<"\n";
 
}
}
 
int VivEkran()// Вывод на экран
{system("cls");
    for(int i=0;i<nzap;i++)
    {
      cout<<"Запис №"<<i+1<<"\n";
      cout<<"\ День справи: "<<array_of_sprava[i].data.day<<"\n";
      cout<<"\ Місяць справи: "<<array_of_sprava[i].data.month<<"\n";
      cout<<"\ Рік справи: "<<array_of_sprava[i].data.year<<"\n";
      cout<<"\ Предмет справи: "<<array_of_sprava[i].predmet<<"\n";
      cout<<"\ Телевон позивача: "<<array_of_sprava[i].v.telefon<<"\n";
      cout<<"\ Фірма позивача: "<<array_of_sprava[i].v.nazvFirm<<"\n";
      cout<<"\ Телефон обвинувачуваного: "<<array_of_sprava[i].obv.telefon<<"\n";
      cout<<"\ Фірма обвинувачуваного: "<<array_of_sprava[i].obv.nazvFirm<<"\n";
    }
system("pause");
return 0;
}
 
    int newbase()// создать новую базу данных
{ system("cls");
    cout<<"Гайдук Артур РПЗ-14. Варіант №2\n";
    string v;
    cout<<"Введіть назву нової бази даних\n";
    cin>>v;
    FILE* Fs;
 
   if ((Fs=fopen(v.c_str(),"wb"))==NULL)
    {
     cout<<("Файл не створений\n");
 
     system("pause");return 0;
    }
   for (int i=0;i<nzap;i++)
     fwrite(&array_of_sprava[nzap],sizeof(sprava),1,Fs);
   cout<<("Файл створений\n");
    system("pause");
    fclose(Fs);
    return 0;
}
 
 
 
  void poisk(){ // поиск
    cout<<"Vvedite god dela: ";
    int y;
    cin >> y;
    bool not_found = true;
    for (int i=0;i<nzap;i++) {
        if (array_of_sprava[i].data.year==y) {
      cout<<"Запис №"<<i+1<<"\n";
      cout<<"\ День справи: "<<array_of_sprava[i].data.day<<"\n";
      cout<<"\ Місяць справи: "<<array_of_sprava[i].data.month<<"\n";
      cout<<"\ Рік справи: "<<array_of_sprava[i].data.year<<"\n";
      cout<<"\ Предмет справи: "<<array_of_sprava[i].predmet<<"\n";
      cout<<"\ Телевон позивача: "<<array_of_sprava[i].v.telefon<<"\n";
      cout<<"\ Фірма позивача: "<<array_of_sprava[i].v.nazvFirm<<"\n";
      cout<<"\ Телефон обвинувачуваного: "<<array_of_sprava[i].obv.telefon<<"\n";
      cout<<"\ Фірма обвинувачуваного: "<<array_of_sprava[i].obv.nazvFirm<<"\n";
 system("pause");
             not_found = false;
        }
    }
    if (not_found) {
        cout<<"Дані за цей рік не знайдені\n";
         system("pause");
    }
}
 
 
 
int main()// меню
{setlocale(LC_CTYPE, "Ukr");
 system("chcp 1251");
    int rez=1;
    while(rez!=0)
{
   system("cls");
   cout<<"Гайдук Артур РПЗ-14 Варіант №2\n";
   cout<<"Menu\n";
   cout<<"1 - Додати дані ;\n";
   cout<<"2 - Введення даних в файл;\n";
   cout<<"3 - Зчитати дані з файлу;\n";
   cout<<"4 - Вивести всі дані на екран;\n";
   cout<<"5 - Пошук по року;\n";
   cout<<"6 - Фірма яка найчастіше була позивачем;\n";
   cout<<"7 - Створеня нової бази даних;\n";
   cout<<"0 - Вихід;\n";
   cout<<nzap<<":";
   cin>>rez;
switch(rez)
{
 case 1:input_in_array();break;
 case 2:outp_to_file();break;
 case 3:reading();break;
 case 4:VivEkran();break;
 case 5:poisk();break;
 // case 6:фирма которая чаще была истцом();break;
 case 7:newbase();break;
 case 0: outp_to_file();exit(0);break;
 default :break;
}}
}
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
20.05.2016, 18:31
Ответы с готовыми решениями:

База данных, основанная на службах vs База данных SQL Server
Доброго времени суток. Делал я, значит, Data Access Layer для ASP.NET MVC проекта. Создал обычную библиотеку классов, моделей туда...

Простейшая задача вывода столбца данных!
Доброго времени суток! Есть код страницы личного кабинета: &lt;?php session_start(); include_once 'dbconnect.php'; ...

Простейшая обработка символьных данных в двух потоках
Добрый день! Неделю назад знакомая девушка попросила задание сделать на C#. Сам то я его не знаю, пишу на С/С++, но отказывать...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
20.05.2016, 18:31
Помогаю со студенческими работами здесь

Оптовая база: База данных!
Для оптовой базы требуется разработать информационную систему, позво- ляющую обрабатывать данные о товарах на складе. Информация ...

База данных, которая не база данных
Доброго времени суток. С базой данных никогда не работал, а начать не могу, выглядит сложно для короткого времени срока. В общем суть...

Как подключиться к базе данных на Wpf. База данных Sql Server
Раньше работал с Windows Worms, и то не долго. Щас хочу перейти на WPF. Я в этом деле еще новичок. Не могли бы вы объяснить как...

Не открывается база данных Access , пишет неразпознаваемый формат базы данных
Не открывается база данных Access , пишет неразпознаваемый формат базы данных,что делать

База данных по учету ремонтов компьютерного оборудования: схема данных
Здравствуйте, форумчане! Составил схему данных. Вроде бы на данный этап учел всё необходимое. Вопрос, можно ли так делать:...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru