Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
0 / 0 / 1
Регистрация: 03.11.2013
Сообщений: 101
1

Сделать запрос по максимальному проценту

28.12.2013, 14:41. Показов 635. Ответов 16
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Пишу курсовую, помогите с одним участком кода
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
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
#include <iostream>
#include <ctype.h>
#include <conio.h>
#include <fstream>
#include <windows.h>
#include <string.h>
#include <locale.h>
using namespace std;
 
typedef struct {char familia[25];char adres[25];int suma;}klienti;
typedef struct {char nazva_banka[50];int max_procent;}banki;
typedef struct {klienti q;banki w;char strana[20];}BD;
 
void vuhod()
{
    setlocale(LC_ALL,"RUSSIAN");
    cout<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<"            ________________ ДО СВИДАНИЯ ____________"<<endl;
;}
void main();
void menu();
void sozdanie()
{   system ("cls");
ofstream F1("База Данных.txt",ios::binary);
 BD mid;
    cout<<"============================================================================="<<endl;
    cout<<"Введите фамилию клиента "<<endl;
    SetConsoleCP(1251);
    cin>>mid.q.familia;
    SetConsoleCP(866);
    cout<<endl<<" Адрес ";
    SetConsoleCP(1251);
    cin>>mid.q.adres;
    SetConsoleCP(866);
    cout<<endl<<" Сума вложений ";
    cin>>mid.q.suma;
    cout<<endl;
    cout<<endl;
    cin.ignore();
    cout<<"Введите название банка "<<endl;
    SetConsoleCP(1251);
    cin>>mid.w.nazva_banka;
    SetConsoleCP(866);
    cout<<endl<<"Введите максимальный процент ";
    cin.ignore();
    cin>>mid.w.max_procent;
    cout<<endl;
    cout<<"Введите страну "<<endl;
    cin.ignore();
    SetConsoleCP(1251);
    cin.getline(mid.strana,20);
    SetConsoleCP(866);
 
    cout<<endl<<"=============================================================================";
    
    F1.write((char*)&mid,sizeof(mid));
    F1.close();
        cout<<endl<<endl<<"    Для заполнения новой Базы Данных  нажмите 1";
        cout<<endl<<"              Для выхода в меню нажмите       2";
        cout<<endl<<"              Для выхода из программы нажмите 3";
        char n;
        n=getch();
        switch (n)
        {case '1':{system("cls");sozdanie();}
        break;
        case '2':{system("cls");menu();} 
        break;
        case '3':{system ("cls");vuhod();}
        break;
        }
 
 
}
void prosmotr()
{ BD mid;
    ifstream F2("База Данных.txt",ios::app);
F2.read((char*)&mid,sizeof(mid));
do
{cout<<endl<<"                               Клиенты "<<endl<<endl<<"   Фамилии "<<mid.q.familia<<endl<<endl<<"    Адрес "<<mid.q.adres<<endl<<endl<<"    Сума вложений "<<mid.q.suma<<endl<<endl;
cout<<endl<<endl<<"                                Банки "<<endl<<"      Название банка   "<<mid.w.nazva_banka<<endl<<" Максимальный процент   "<<mid.w.max_procent;
cout<<endl<<endl<<"                               Страна "<<mid.strana<<endl;
cout<<endl<<endl<<endl<<"================================================================================";
F2.read((char*)&mid,sizeof(mid));
}
while(!F2.eof());
F2.close();
char n;
 cout<<endl<<"                 для выхода в меню нажмите       1";
 cout<<endl<<endl<<"                 Для выхода из программы нажмите 2";
        n=getch();
        switch (n)
        {
        case '1':{system("cls");menu();} 
        break;
        case '2':{system ("cls");vuhod();}
        break;
        }
}
 
void redactirovanie()
{   system ("cls");
ofstream F1("База Данных.txt",ios::binary|ios::app);
 BD mid;
    cout<<"============================================================================="<<endl;
    cout<<"Введите Фамилию клиента "<<endl;
    cin>>mid.q.familia;
    cout<<endl<<" Адрес ";
    cin>>mid.q.adres;
    cout<<endl<<" Сума вложений ";
    cin>>mid.q.suma;
    cout<<endl;
    cout<<endl;
    cin.ignore();
    cout<<"Введите название банка "<<endl;
    cin>>mid.w.nazva_banka;
    cout<<endl<<"Введите максимальный процент ";
    cin.ignore();
    cin>>mid.w.max_procent;
    cout<<endl;
    cout<<"Введите страна "<<endl;
    cin.ignore();
    cin.getline(mid.strana,20);
    cout<<endl<<"=============================================================================";
    
    F1.write((char*)&mid,sizeof(mid));
    F1.close();
        cout<<endl<<endl<<"    для добаления Базы Данных  нажмите  1";
        cout<<endl<<"              для выхода в меню нажмите       2";
        cout<<endl<<"              Для выхода из программы нажмите 3";
        char n;
        n=getch();
        switch (n)
        {case '1':{system("cls");sozdanie();}
        break;
        case '2':{system("cls");menu();} 
        break;
        case '3':{system ("cls");vuhod();}
        break;
        }
 
}
void poisk()
{system ("cls");
cout<<endl<<"         Введите фамилию человека для поиска"<<endl<<endl<<"               ";
BD mid; 
char x[20]; 
cin.getline(x, 20);
ifstream F3("База Данных.txt",ios::binary);
F3.read((char*)&mid,sizeof(mid));
system ("cls");
do
{if(strcmp(x,mid.q.familia)==0)//
{cout<<endl<<"                               Клиенты "<<endl<<endl<<"   Фамилии "<<mid.q.familia<<endl<<endl<<"    Адрес "<<mid.q.adres<<endl<<endl<<"    Сума вложений "<<mid.q.suma<<endl<<endl;
cout<<endl<<endl<<"                                Банки "<<endl<<"      Название банка   "<<mid.w.nazva_banka<<endl<<" Максимальный процент   "<<mid.w.max_procent;
cout<<endl<<endl<<"                               Страна "<<mid.strana<<endl;
cout<<endl<<endl<<endl<<"================================================================================";
}
F3.read((char*)&mid,sizeof(mid));}
while(!F3.eof());
if(strcmp(x,mid.q.familia)!=0)cout<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<"     <<<Извините но Вами было введено неверно фамилию>>>";
F3.close();
getch();
}
void zapros()
{system("cls");
/*BD mid;
char j[12]={'s','h','a','h','r','a','y','s','t','v','o','\0'}; int j[10], int i[10], n=0, m=0;
ifstream F4("База Данных.txt",ios::binary);
F4.read((char*)&mid,sizeof(mid));
do
{i[m]=mid.w.nazva_banka; m++;
if(strcmp(s,max_procent)==0) {j[n]=mid.w.nazva_banka; n++; cout<<"naydeno\n";}
F4.read((char*)&mid,sizeof(mid));
}
while(!F4.eof());
F4.close();
for(int i=0; i<m; i++)
{for(int j=0; j<n; j++)
{
}
}
*/getch();
}
void menu()
{
setlocale(LC_ALL,"RUSSIAN");
cout<<endl<<endl<<endl<<"                                   МЕНЮ"<<endl<<endl<<endl<<endl;
cout<<endl<<"     для перехода к созданию Базы Данных - нажмите        1";
cout<<endl<<"     для перехода к просмотру Баз Данных - нажмите        2";
cout<<endl<<"     для перехода к редактированию Базы Данных - нажмите  3";
cout<<endl<<"     для перехода к поиску в Базе Данных - нажмите        4";
cout<<endl<<"     для перехода к запросу  в Базе Данных - нажмите      5";
cout<<endl<<"     для перехода на преведущую страницу нажмите          6"<<endl<<endl<<endl;
cout<<endl<<"     для выхода из программы нажмите                      7";
 
cout<<endl<<endl<<endl<<endl<<endl<<"                       введите число   ";
char n;
n=getch();
    switch(n)
    {
    case '1':{system ("cls");sozdanie();}
   break;
    case '2':{system ("cls");prosmotr();}
   break;
    case '3':{system ("cls");redactirovanie();}
   break;
    case '4':{system("cls");poisk();}
   break;
    case '5':{system("cls");zapros();}
   break;
    case '6':{system("cls");main();}
   break;
    case '7':{system("cls");vuhod();}
   break;
    }
}
void titulka()
{
    setlocale(LC_ALL,"RUSSIAN");
cout<<endl<<endl<<"                                     КУРСОВАЯ"<<endl;
cout<<endl<<endl<<endl<<"                                   Подготовил"<<endl;
cout<<endl<<"                              студент группы ИТ-32"<<endl;
cout<<endl<<endl<<"                             Колос Максим Сергеевич     "<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl;
char r;
 
cout<<"      для выхода перехода в меню нажмите 1"<<endl;
cout<<"      для выхода из программы нажмите    2"<<endl;
cout<<endl<<"                                введите чиcло";
    cout<<endl<<"                                      ";
 
r=getch();
switch(r)
{case '1':{system("cls");menu();}
break;
case '2':{system ("cls");vuhod();}
 break;
}
 
 
}
 
void main()
{
    char x;
    setlocale(LC_ALL,"Rus");
    cout<<endl<<endl<<endl<<"                    Добрый день   "<<endl;
    cout<<endl<<endl<<"      для перехода к титульной странице нажмите 1";
    cout<<endl<<endl<<"      для перехода в меню нажмите               2";
    cout<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<"      для выхода из программы нажмите           3";
    cout<<endl<<endl<<endl<<"                                введите чиcло";
    cout<<endl<<"                                      ";x=getch();
    switch(x)
    {
    case '1':{system ("cls");titulka();}
    break;
    case '2':{system("cls");menu();}
    break;
    case '3':{system ("cls");vuhod();}
    break;
    }
system("pause");
}
Нужно сделать запрос по максимальному проценту, должно показать название банка и этот процент, проблемный участок выделен коментарием

Добавлено через 1 час 6 минут
на понедельник здавать
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.12.2013, 14:41
Ответы с готовыми решениями:

все элементы главной диогонали сделать равными максимальному
задана матрица Д(4,4).Если максимальный элемент матрицы стоит на главной диогонали ,то все элементы...

Сделать так, чтобы 0 равнялось не нулю, а максимальному числу в этом массиве
Здравствуйте, дорогие форумчане. Составил программу: #include &lt;iostream&gt; using std::cout;...

Написать программу вычисления величины дохода по проценту
Написать программу вычисления величины дохода по проценту. сумма вклада, процентная ставка, налог...

Две таблицы, мудреный запрос с выборкой по максимальному значению
Помогите, пожалуйста, составить запрос. Промучался разными методами, уже голова кипит. Вроде ничего...

16
60 / 60 / 19
Регистрация: 11.07.2013
Сообщений: 305
28.12.2013, 15:39 2
Лучше вообще весь код переписать, используя классы и конструкторы, тогда будет все намного проще искать и тд. (я уж не говорю про листы и итераторы)
Да и вообще код дико странный и даже проблема толком не понятна. Просто ищешь максимальный процент, а потом, опираясь на номер массива, в котором "Живет" этот процент, выводить банк и тд.

Не по теме:

ЗЫ через пару лет прожешь над своим кодом)) (Ну, когда уже будешь знать, как это все можно изменить)

0
0 / 0 / 1
Регистрация: 03.11.2013
Сообщений: 101
28.12.2013, 19:09  [ТС] 3
Весь код переписывать времени не хватит, хотелось бы узнать как можно реализовать запрос.

Добавлено через 1 час 53 минуты
ап1
0
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
28.12.2013, 19:48 4
Цитата Сообщение от dkii Посмотреть сообщение
Нужно сделать запрос по максимальному проценту,
Расшифруйте.
1
0 / 0 / 1
Регистрация: 03.11.2013
Сообщений: 101
28.12.2013, 19:57  [ТС] 5
Определить банк в котором годовой процент максимальный, и вывести этот банк и процент на екран на екран.
0
0 / 0 / 1
Регистрация: 03.11.2013
Сообщений: 101
28.12.2013, 20:00  [ТС] 6
пример
Вложения
Тип файла: rar KANZ_MAG.rar (14.2 Кб, 2 просмотров)
0
0 / 0 / 1
Регистрация: 03.11.2013
Сообщений: 101
28.12.2013, 20:01  [ТС] 7
3 функция
0
0 / 0 / 0
Регистрация: 28.12.2013
Сообщений: 2
28.12.2013, 20:04 8
тебе нужно применить цикл do while. Ввести перемунную которой ты в этом цикле будешь присваивать максимальное значение годового процента. Дальше ты используешь еще один цикл do while где проверяешь бани у которых годовой процент равен максимальному и выводишь их на экран
0
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
28.12.2013, 20:06 9
Цитата Сообщение от dkii Посмотреть сообщение
Определить банк в котором годовой процент максимальный, и вывести этот банк и процент на екран
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
void zapros()
{
    system("cls");
    BD mid;
    
    ifstream F4("База Данных.txt", ios::binary);
    if (!F4) cout << "Error!" << endl;
    else
    {
        F4.read((char*)&mid, sizeof(mid));
        
        int Max_procent = mid.w.max_procent;
        char Nazva_banka[50];
        strcpy(Nazva_banka, mid.w.nazva_banka);
        
        while(F4.read((char*)&mid, sizeof(mid)));
        {
            if (mid.w.max_procent > Max_procent)
            {
                Max_procent = mid.w.max_procent;
                strcpy(Nazva_banka, mid.w.nazva_banka);
            }
        }
        F4.close();
    
        cout << Nazva_banka << ' ' << Max_procent;
    }
    getch();
}
1
0 / 0 / 1
Регистрация: 03.11.2013
Сообщений: 101
28.12.2013, 21:05  [ТС] 10
Большое спасибо вам за помощь, вы меня реально спасли. Код работает, но я не уверен правильно ли. И так-как по сравнению со мной вы бог програмирования, очень вас прошу, не могли бы вы проверить работу программы, когда вписываешь несколько человек, то выдает последнего, даже если процент не максимальный.Заранее спасибо.

Добавлено через 24 минуты
Код
#include <iostream>
#include <ctype.h>
#include <conio.h>
#include <fstream>
#include <windows.h>
#include <string.h>
#include <locale.h>
using namespace std;

typedef struct {char familia[25];char adres[25];int suma;}klienti;
typedef struct {char nazva_banka[50];int max_procent;}banki;
typedef struct {klienti q;banki w;char strana[20];}BD;

void vuhod()
{
	setlocale(LC_ALL,"RUSSIAN");
	cout<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<"            ________________ ДО СВИДАНИЯ ____________"<<endl;
;}
void main();
void menu();
void sozdanie()
{	system ("cls");
ofstream F1("База Данных.txt",ios::binary);
 BD mid;
	cout<<"============================================================================="<<endl;
	cout<<"Введите фамилию клиента "<<endl;
	SetConsoleCP(1251);
    cin>>mid.q.familia;
	SetConsoleCP(866);
	cout<<endl<<" Адрес ";
	SetConsoleCP(1251);
	cin>>mid.q.adres;
	SetConsoleCP(866);
	cout<<endl<<" Сума вложений ";
	cin>>mid.q.suma;
	cout<<endl;
	cout<<endl;
	cin.ignore();
	cout<<"Введите название банка "<<endl;
	SetConsoleCP(1251);
	cin>>mid.w.nazva_banka;
	SetConsoleCP(866);
	cout<<endl<<"Введите максимальный процент ";
	cin.ignore();
	cin>>mid.w.max_procent;
	cout<<endl;
	cout<<"Введите страну "<<endl;
	cin.ignore();
	SetConsoleCP(1251);
	cin.getline(mid.strana,20);
	SetConsoleCP(866);

	cout<<endl<<"=============================================================================";
	
	F1.write((char*)&mid,sizeof(mid));
	F1.close();
	    cout<<endl<<endl<<"    Для заполнения новой Базы Данных  нажмите 1";
	    cout<<endl<<"              Для выхода в меню нажмите       2";
		cout<<endl<<"              Для выхода из программы нажмите 3";
		char n;
		n=getch();
		switch (n)
		{case '1':{system("cls");sozdanie();}
		break;
		case '2':{system("cls");menu();} 
		break;
		case '3':{system ("cls");vuhod();}
	    break;
		}


}
void prosmotr()
{ BD mid;
	ifstream F2("База Данных.txt",ios::app);
F2.read((char*)&mid,sizeof(mid));
do
{cout<<endl<<"                               Клиенты "<<endl<<endl<<"   Фамилии "<<mid.q.familia<<endl<<endl<<"    Адрес "<<mid.q.adres<<endl<<endl<<"    Сума вложений "<<mid.q.suma<<endl<<endl;
cout<<endl<<endl<<"                                Банки "<<endl<<"      Название банка   "<<mid.w.nazva_banka<<endl<<" Максимальный процент   "<<mid.w.max_procent;
cout<<endl<<endl<<"                               Страна "<<mid.strana<<endl;
cout<<endl<<endl<<endl<<"================================================================================";
F2.read((char*)&mid,sizeof(mid));
}
while(!F2.eof());
F2.close();
char n;
 cout<<endl<<"                 для выхода в меню нажмите       1";
 cout<<endl<<endl<<"                 Для выхода из программы нажмите 2";
		n=getch();
		switch (n)
		{
		case '1':{system("cls");menu();} 
		break;
		case '2':{system ("cls");vuhod();}
	    break;
		}
}

void redactirovanie()
{	system ("cls");
ofstream F1("База Данных.txt",ios::binary|ios::app);
 BD mid;
	cout<<"============================================================================="<<endl;
	cout<<"Введите Фамилию клиента "<<endl;
	SetConsoleCP(1251);
    cin>>mid.q.familia;
	SetConsoleCP(866);
	cout<<endl<<" Адрес ";
	SetConsoleCP(1251);
	cin>>mid.q.adres;
	SetConsoleCP(866);
	cout<<endl<<" Сума вложений ";
	SetConsoleCP(1251);
	cin>>mid.q.suma;
	SetConsoleCP(866);
	cout<<endl;
	cout<<endl;
	cin.ignore();
	cout<<"Введите название банка "<<endl;
	SetConsoleCP(1251);
	cin>>mid.w.nazva_banka;
	SetConsoleCP(866);
	cout<<endl<<"Введите максимальный процент ";
	cin.ignore();
	SetConsoleCP(1251);
	cin>>mid.w.max_procent;
	SetConsoleCP(866);
	cout<<endl;
	cout<<"Введите страна "<<endl;
	cin.ignore();
	cin.getline(mid.strana,20);
	cout<<endl<<"=============================================================================";
	
	F1.write((char*)&mid,sizeof(mid));
	F1.close();
	    cout<<endl<<endl<<"    для добаления Базы Данных  нажмите  1";
	    cout<<endl<<"              для выхода в меню нажмите       2";
		cout<<endl<<"              Для выхода из программы нажмите 3";
		char n;
		n=getch();
		switch (n)
		{case '1':{system("cls");sozdanie();}
		break;
		case '2':{system("cls");menu();} 
		break;
		case '3':{system ("cls");vuhod();}
	    break;
		}
}
void poisk()
{system ("cls");
cout<<endl<<"         Введите фамилию человека для поиска"<<endl<<endl<<"               ";
BD mid; 
char x[20]; 
SetConsoleCP(1251);
cin.getline(x, 20);
SetConsoleCP(866);
ifstream F3("База Данных.txt",ios::binary);
F3.read((char*)&mid,sizeof(mid));
system ("cls");
do
{if(strcmp(x,mid.q.familia)==0)//
{cout<<endl<<"                               Клиенты "<<endl<<endl<<"   Фамилии "<<mid.q.familia<<endl<<endl<<"    Адрес "<<mid.q.adres<<endl<<endl<<"    Сума вложений "<<mid.q.suma<<endl<<endl;
cout<<endl<<endl<<"                                Банки "<<endl<<"      Название банка   "<<mid.w.nazva_banka<<endl<<" Максимальный процент   "<<mid.w.max_procent;
cout<<endl<<endl<<"                               Страна "<<mid.strana<<endl;
cout<<endl<<endl<<endl<<"================================================================================";
}
F3.read((char*)&mid,sizeof(mid));}
while(!F3.eof());
if(strcmp(x,mid.q.familia)!=0)cout<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<"     <<<Извините но Вами было введено неверно фамилию>>>";
F3.close();
getch();
}
void zapros()
{
    system("cls");
    BD mid;
    
    ifstream F4("База Данных.txt", ios::binary);
    if (!F4) cout << "Error!" << endl;
    else
    {
        F4.read((char*)&mid, sizeof(mid));
        
        int Max_procent = mid.w.max_procent;
        char Nazva_banka[50];
        strcpy(Nazva_banka, mid.w.nazva_banka);
        
        while(F4.read((char*)&mid, sizeof(mid)));
        {
            if (mid.w.max_procent > Max_procent)
            {
                Max_procent = mid.w.max_procent;
                strcpy(Nazva_banka, mid.w.nazva_banka);
            }
        }
        F4.close();
    
        cout << Nazva_banka << ' ' << Max_procent;
    }
    getch();
}
void menu()
{
setlocale(LC_ALL,"RUSSIAN");
cout<<endl<<endl<<endl<<"                                   МЕНЮ"<<endl<<endl<<endl<<endl;
cout<<endl<<"     для перехода к созданию Базы Данных - нажмите        1";
cout<<endl<<"     для перехода к просмотру Баз Данных - нажмите        2";
cout<<endl<<"     для перехода к редактированию Базы Данных - нажмите  3";
cout<<endl<<"     для перехода к поиску в Базе Данных - нажмите        4";
cout<<endl<<"     для перехода к запросу  в Базе Данных - нажмите      5";
cout<<endl<<"     для перехода на преведущую страницу нажмите          6"<<endl<<endl<<endl;
cout<<endl<<"     для выхода из программы нажмите                      7";

cout<<endl<<endl<<endl<<endl<<endl<<"                       введите число   ";
char n;
n=getch();
	switch(n)
	{
	case '1':{system ("cls");sozdanie();}
   break;
	case '2':{system ("cls");prosmotr();}
   break;
	case '3':{system ("cls");redactirovanie();}
   break;
	case '4':{system("cls");poisk();}
   break;
	case '5':{system("cls");zapros();}
   break;
	case '6':{system("cls");main();}
   break;
	case '7':{system("cls");vuhod();}
   break;
    }
}
void titulka()
{
	setlocale(LC_ALL,"RUSSIAN");
cout<<endl<<endl<<"                                     КУРСОВАЯ"<<endl;
cout<<endl<<endl<<endl<<"                                   Подготовил"<<endl;
cout<<endl<<"                              студент группы ИТ-32"<<endl;
cout<<endl<<endl<<"                             Колос Максим Сергеевич     "<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl;
char r;

cout<<"      для выхода перехода в меню нажмите 1"<<endl;
cout<<"      для выхода из программы нажмите    2"<<endl;
cout<<endl<<"                                введите чиcло";
	cout<<endl<<"                                      ";

r=getch();
switch(r)
{case '1':{system("cls");menu();}
break;
case '2':{system ("cls");vuhod();}
 break;
}


}

void main()
{
	char x;
	setlocale(LC_ALL,"Rus");
	cout<<endl<<endl<<endl<<"                    Добрый день   "<<endl;
	cout<<endl<<endl<<"      для перехода к титульной странице нажмите 1";
	cout<<endl<<endl<<"      для перехода в меню нажмите               2";
	cout<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<"      для выхода из программы нажмите           3";
	cout<<endl<<endl<<endl<<"                                введите чиcло";
	cout<<endl<<"                                      ";x=getch();
	switch(x)
	{
	case '1':{system ("cls");titulka();}
	break;
	case '2':{system("cls");menu();}
	break;
	case '3':{system ("cls");vuhod();}
    break;
	}
system("pause");
}
Обновил код
0
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
28.12.2013, 21:11 11
Режим откытия файла в sozdanie() (1 пост) неверный (данные каждый раз будут стираться).
Сделайте:
C++
1
2
3
4
 fstream F1("База Данных.txt", ios::in | ios::out |ios::binary | ios::app);
    if (!F1) cout << "Error F1!" << endl;
    else
    {...
Добавлено через 3 минуты
C++
1
2
3
4
5
6
7
void prosmotr()
{ 
    BD mid;
    ifstream F2("База Данных.txt");
    if (!F2) cout << "Error F2!" << endl;
    else
    {...
1
0 / 0 / 1
Регистрация: 03.11.2013
Сообщений: 101
28.12.2013, 21:37  [ТС] 12
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
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
#include <iostream>
#include <ctype.h>
#include <conio.h>
#include <fstream>
#include <windows.h>
#include <string.h>
#include <locale.h>
using namespace std;
 
typedef struct {char familia[25];char adres[25];int suma;}klienti;
typedef struct {char nazva_banka[50];int max_procent;}banki;
typedef struct {klienti q;banki w;char strana[20];}BD;
 
void vuhod()
{
    setlocale(LC_ALL,"RUSSIAN");
    cout<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<"            ________________ ДО СВИДАНИЯ ____________"<<endl;
;}
void main();
void menu();
void sozdanie()
    {BD mid;
  fstream F1("База Данных.txt", ios::in | ios::out |ios::binary | ios::app);
    if (!F1) cout << "Error F1!" << endl;
    else
    {
    cout<<"============================================================================="<<endl;
    cout<<"Введите фамилию клиента "<<endl;
    SetConsoleCP(1251);
    cin>>mid.q.familia;
    SetConsoleCP(866);
    cout<<endl<<" Адрес ";
    SetConsoleCP(1251);
    cin>>mid.q.adres;
    SetConsoleCP(866);
    cout<<endl<<" Сума вложений ";
    cin>>mid.q.suma;
    cout<<endl;
    cout<<endl;
    cin.ignore();
    cout<<"Введите название банка "<<endl;
    SetConsoleCP(1251);
    cin>>mid.w.nazva_banka;
    SetConsoleCP(866);
    cout<<endl<<"Введите максимальный процент ";
    cin.ignore();
    cin>>mid.w.max_procent;
    cout<<endl;
    cout<<"Введите страну "<<endl;
    cin.ignore();
    SetConsoleCP(1251);
    cin.getline(mid.strana,20);
    SetConsoleCP(866);
 
    cout<<endl<<"=============================================================================";
    
    F1.write((char*)&mid,sizeof(mid));
    F1.close();
        cout<<endl<<endl<<"    Для заполнения новой Базы Данных  нажмите 1";
        cout<<endl<<"              Для выхода в меню нажмите       2";
        cout<<endl<<"              Для выхода из программы нажмите 3";
        char n;
        n=getch();
        switch (n)
        {case '1':{system("cls");sozdanie();}
        break;
        case '2':{system("cls");menu();} 
        break;
        case '3':{system ("cls");vuhod();}
        break;
        }
    }
 
}
 
    void prosmotr()
{ 
    BD mid;
    ifstream F2("База Данных.txt");
    if (!F2) cout << "Error F2!" << endl;
    else
{cout<<endl<<"                               Клиенты "<<endl<<endl<<"   Фамилии "<<mid.q.familia<<endl<<endl<<"    Адрес "<<mid.q.adres<<endl<<endl<<"    Сума вложений "<<mid.q.suma<<endl<<endl;
cout<<endl<<endl<<"                                Банки "<<endl<<"      Название банка   "<<mid.w.nazva_banka<<endl<<" Максимальный процент   "<<mid.w.max_procent;
cout<<endl<<endl<<"                               Страна "<<mid.strana<<endl;
cout<<endl<<endl<<endl<<"================================================================================";
F2.read((char*)&mid,sizeof(mid));
}
while(!F2.eof());
F2.close();
char n;
 cout<<endl<<"                 для выхода в меню нажмите       1";
 cout<<endl<<endl<<"                 Для выхода из программы нажмите 2";
        n=getch();
        switch (n)
        {
        case '1':{system("cls");menu();} 
        break;
        case '2':{system ("cls");vuhod();}
        break;
        }
}
 
void redactirovanie()
{   system ("cls");
ofstream F1("База Данных.txt",ios::binary|ios::app);
 BD mid;
    cout<<"============================================================================="<<endl;
    cout<<"Введите Фамилию клиента "<<endl;
    SetConsoleCP(1251);
    cin>>mid.q.familia;
    SetConsoleCP(866);
    cout<<endl<<" Адрес ";
    SetConsoleCP(1251);
    cin>>mid.q.adres;
    SetConsoleCP(866);
    cout<<endl<<" Сума вложений ";
    SetConsoleCP(1251);
    cin>>mid.q.suma;
    SetConsoleCP(866);
    cout<<endl;
    cout<<endl;
    cin.ignore();
    cout<<"Введите название банка "<<endl;
    SetConsoleCP(1251);
    cin>>mid.w.nazva_banka;
    SetConsoleCP(866);
    cout<<endl<<"Введите максимальный процент ";
    cin.ignore();
    SetConsoleCP(1251);
    cin>>mid.w.max_procent;
    SetConsoleCP(866);
    cout<<endl;
    cout<<"Введите страна "<<endl;
    cin.ignore();
    cin.getline(mid.strana,20);
    cout<<endl<<"=============================================================================";
    
    F1.write((char*)&mid,sizeof(mid));
    F1.close();
        cout<<endl<<endl<<"    для добаления Базы Данных  нажмите  1";
        cout<<endl<<"              для выхода в меню нажмите       2";
        cout<<endl<<"              Для выхода из программы нажмите 3";
        char n;
        n=getch();
        switch (n)
        {case '1':{system("cls");sozdanie();}
        break;
        case '2':{system("cls");menu();} 
        break;
        case '3':{system ("cls");vuhod();}
        break;
        }
}
void poisk()
{system ("cls");
cout<<endl<<"         Введите фамилию человека для поиска"<<endl<<endl<<"               ";
BD mid; 
char x[20]; 
SetConsoleCP(1251);
cin.getline(x, 20);
SetConsoleCP(866);
ifstream F3("База Данных.txt",ios::binary);
F3.read((char*)&mid,sizeof(mid));
system ("cls");
do
{if(strcmp(x,mid.q.familia)==0)//
{cout<<endl<<"                               Клиенты "<<endl<<endl<<"   Фамилии "<<mid.q.familia<<endl<<endl<<"    Адрес "<<mid.q.adres<<endl<<endl<<"    Сума вложений "<<mid.q.suma<<endl<<endl;
cout<<endl<<endl<<"                                Банки "<<endl<<"      Название банка   "<<mid.w.nazva_banka<<endl<<" Максимальный процент   "<<mid.w.max_procent;
cout<<endl<<endl<<"                               Страна "<<mid.strana<<endl;
cout<<endl<<endl<<endl<<"================================================================================";
}
F3.read((char*)&mid,sizeof(mid));}
while(!F3.eof());
if(strcmp(x,mid.q.familia)!=0)cout<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<"     <<<Извините но Вами было введено неверно фамилию>>>";
F3.close();
getch();
}
void zapros()
{
    system("cls");
    BD mid;
    
    ifstream F4("База Данных.txt", ios::binary);
    if (!F4) cout << "Error!" << endl;
    else
    {
        F4.read((char*)&mid, sizeof(mid));
        
        int Max_procent = mid.w.max_procent;
        char Nazva_banka[50];
        strcpy(Nazva_banka, mid.w.nazva_banka);
        
        while(F4.read((char*)&mid, sizeof(mid)));
        {
            if (mid.w.max_procent > Max_procent)
            {
                Max_procent = mid.w.max_procent;
                strcpy(Nazva_banka, mid.w.nazva_banka);
            }
        }
        F4.close();
    
        cout << Nazva_banka << ' ' << Max_procent;
    }
    getch();
}
void menu()
{
setlocale(LC_ALL,"RUSSIAN");
cout<<endl<<endl<<endl<<"                                   МЕНЮ"<<endl<<endl<<endl<<endl;
cout<<endl<<"     для перехода к созданию Базы Данных - нажмите        1";
cout<<endl<<"     для перехода к просмотру Баз Данных - нажмите        2";
cout<<endl<<"     для перехода к редактированию Базы Данных - нажмите  3";
cout<<endl<<"     для перехода к поиску в Базе Данных - нажмите        4";
cout<<endl<<"     для перехода к запросу  в Базе Данных - нажмите      5";
cout<<endl<<"     для перехода на преведущую страницу нажмите          6"<<endl<<endl<<endl;
cout<<endl<<"     для выхода из программы нажмите                      7";
 
cout<<endl<<endl<<endl<<endl<<endl<<"                       введите число   ";
char n;
n=getch();
    switch(n)
    {
    case '1':{system ("cls");sozdanie();}
   break;
    case '2':{system ("cls");prosmotr();}
   break;
    case '3':{system ("cls");redactirovanie();}
   break;
    case '4':{system("cls");poisk();}
   break;
    case '5':{system("cls");zapros();}
   break;
    case '6':{system("cls");main();}
   break;
    case '7':{system("cls");vuhod();}
   break;
    }
}
void titulka()
{
    setlocale(LC_ALL,"RUSSIAN");
cout<<endl<<endl<<"                                     КУРСОВАЯ"<<endl;
cout<<endl<<endl<<endl<<"                                   Подготовил"<<endl;
cout<<endl<<"                              студент группы ИТ-32"<<endl;
cout<<endl<<endl<<"                             Колос Максим Сергеевич     "<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl;
char r;
 
cout<<"      для выхода перехода в меню нажмите 1"<<endl;
cout<<"      для выхода из программы нажмите    2"<<endl;
cout<<endl<<"                                введите чиcло";
    cout<<endl<<"                                      ";
 
r=getch();
switch(r)
{case '1':{system("cls");menu();}
break;
case '2':{system ("cls");vuhod();}
 break;
}
 
 
}
 
void main()
{
    char x;
    setlocale(LC_ALL,"Rus");
    cout<<endl<<endl<<endl<<"                    Добрый день   "<<endl;
    cout<<endl<<endl<<"      для перехода к титульной странице нажмите 1";
    cout<<endl<<endl<<"      для перехода в меню нажмите               2";
    cout<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<"      для выхода из программы нажмите           3";
    cout<<endl<<endl<<endl<<"                                введите чиcло";
    cout<<endl<<"                                      ";x=getch();
    switch(x)
    {
    case '1':{system ("cls");titulka();}
    break;
    case '2':{system("cls");menu();}
    break;
    case '3':{system ("cls");vuhod();}
    break;
    }
system("pause");
}
Спасибо еще раз, но во время просмотра (prosmotr) выбивает ошибку

Добавлено через 1 минуту
Run-Time Check Failure #3 - The variable 'mid' is being used without being initialized.
0
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
28.12.2013, 21:42 13
Вы хоть переписывайте правильно (из 1-го поста)... Это откуда взялось?
C++
1
2
3
4
5
6
7
8
BD mid;
    ifstream F2("База Данных.txt");
    if (!F2) cout << "Error F2!" << endl;
    else
{cout<<endl<<"                               Клиенты "<<endl<<endl<<"   Фамилии "<<mid.q.familia<<endl<<endl<<"    Адрес "<<mid.q.adres<<endl<<endl<<"    Сума вложений "<<mid.q.suma<<endl<<endl;
cout<<endl<<endl<<"                                Банки "<<endl<<"      Название банка   "<<mid.w.nazva_banka<<endl<<" Максимальный процент   "<<mid.w.max_procent;
cout<<endl<<endl<<"                               Страна "<<mid.strana<<endl;
cout<<endl<<endl<<endl<<"================================================================================";
Ещё ничего не считали, а уже выводите на консоль.
1
0 / 0 / 1
Регистрация: 03.11.2013
Сообщений: 101
28.12.2013, 21:54  [ТС] 14
спасибо, сам разобрался

Добавлено через 10 минут
В упор не вижу ошибки, скиньте пожалуйста как это должно быть в коде
0
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
28.12.2013, 21:58 15
В коде должно быть так, как в 1 посте, только ios::app нужно убрать (это там не нужно) и сделать проверку на открытие файла (11 пост).
1
0 / 0 / 1
Регистрация: 03.11.2013
Сообщений: 101
28.12.2013, 22:12  [ТС] 16
Напишите пожалуйста сами, весь день над ней сижу, никак не сображу что не так.
0
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
28.12.2013, 22:29 17
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
void prosmotr()
{ 
    BD mid;
    ifstream F2("База Данных.txt");
    if (!F2) cout << "Error F2!" << endl;
    else
    {
        if (!F2.read((char*)&mid,sizeof(mid)))
            cout << "База пуста!" << endl;
        else
        {
            do
            {
                cout<<endl<<"                               Клиенты "<<endl<<endl<<"   Фамилии "<<mid.q.familia<<endl<<endl<<"    Адрес "<<mid.q.adres<<endl<<endl<<"    Сума вложений "<<mid.q.suma<<endl<<endl;
                cout<<endl<<endl<<"                                Банки "<<endl<<"      Название банка   "<<mid.w.nazva_banka<<endl<<" Максимальный процент   "<<mid.w.max_procent;
                cout<<endl<<endl<<"                               Страна "<<mid.strana<<endl;
                cout<<endl<<endl<<endl<<"================================================================================";
                F2.read((char*)&mid,sizeof(mid));
            }
            while(!F2.eof());
        }
        F2.close();
    }
    char n;
    cout<<endl<<"                 для выхода в меню нажмите       1";
    cout<<endl<<endl<<"                 Для выхода из программы нажмите 2";
    n=getch();
    switch (n)
    {
        case '1':{system("cls");menu();} 
        break;
        case '2':{system ("cls");vuhod();}
        break;
    }
}
1
28.12.2013, 22:29
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.12.2013, 22:29
Помогаю со студенческими работами здесь

Все элементы главной диагонали матрицы сделать равными максимальному
Помогите пжл. написать программу:задана матрица 4х4.если максимальный элемент матрицы стоит на...

Как сделать запрос AJAX, подождать результат и сделать новый запрос?
У меня есть массив элементов, и forEach который вызывает AJAX запрос для каждого элемента Как...

Распредилить премию пропарцианально проценту перевыполнения плана СМУ
Данны массивы: s1..s10 -шифры строительно монтажных управлений(названия) R1..R10-объем выполненых...

Как в Delphi сделать запрос на запрос, база mssql, BDE
Добрый день! Кто-нибудь может подсказать, как можно Tquery и использовать как таблицу, при...


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

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru