Форум программистов, компьютерный форум CyberForum.ru

База данных - C++

Восстановить пароль Регистрация
 
евгеха
1 / 1 / 0
Регистрация: 31.10.2010
Сообщений: 52
21.02.2011, 21:42     База данных #1
Народ, помогите найти ошибку, плиз.
База данных компьютерных игр (пример – www.ag.ru), в которой каждая игра характеризуется названием, годом выхода, ограничением по возрасту и жанром. там вроде что-то с функцией menu.
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
#include "stdafx.h"
#include <iostream>
using namespace std;
 
const int maxCol=50;
const int nameSimv=20;
 
 
struct Igra
{
    int nomer;
    char name[nameSimv];
    char ganr;
    int godIzd;
    int vozrast;
};
 
 
Igra igratVvod(Igra ar[maxCol], int i)
{
    Igra ig;
    ig.nomer = i;
    cout << " Игра";
    cin.get();
    cin.get(ig.name, sizeof (ig.name));
    cout<<" введите название игры ";
    cin>> ig.name;
    cout << " Жанр - ";
    cin >> ig.ganr;
    cout << " Год издания - ";
    cin >> ig.godIzd;
    cout << "Разрешенна с - ";
    cin >> ig.vozrast;
    
    ar[i]=ig;
    return ig;
}
 
 
void igrSort(Igra ar[maxCol], int n)
{
    int j;
    Igra ig;
    for (int i=1; i<n; i++)
    {
        ig=ar[i];
        j=i-1;
        while ((ig.godIzd<ar[j].godIzd) && (j>=0))
        {
            ar[j+1]=ar[j];
            j--;
        }
        ar[j+1]=ig;
    }
}
 
 
void IgraVivod(Igra ar[maxCol], int n)
{
    for (int i=0; i<n; i++)
    {
        cout << "Номер игры "<< ar[i].nomer << ": " << ar[i].name << ", Жанр " << ar[i].ganr << " Год издания " << ar[i].godIzd << " Возрастные ограниченя до "<< ar[i].vozrast << endl;
        
    }
}
 
 
int igraVozrast(Igra ar[maxCol], int n, int vozrast)
{
    int num=0;
    for (int i=0; i<n; i++)
    {
        
        if (ar[i].vozrast==vozrast)
        {
            cout << "Номер игры "<< ar[i].nomer << ": " << ar[i].name << ", Жанр " << ar[i].ganr << " Год издания " << ar[i].godIzd << " Возрастные ограниченя до "<< ar[i].vozrast << endl;
            num++;
        }
    }
    cout << num << "  игр с таким возрастным ограничением" << endl;
    return num;
}
 
 
void igraDelete(Igra ar[maxCol], int &n, int delvoz)
{
    int i=0;
    
    while (i<n)
    {
        
        if (ar[i].vozrast==delvoz)
        {
            for (int j=i; j<n-1; j++)
            {
                ar[j]=ar[j+1];
            }
            n--;
        }
        else
        {
            i++;
        }
    }
}
 
void  menu( int c)
    {
        cout << " Выбирите действие"<< endl;
        cout << "1 - добавить игру"<< endl;
        cout << "2 - отсортировать игры по дате выхода"<< endl;
        cout << "3 - вывести список игр"<< endl;
        cout << "4 - поиск игр с возрастным ограничением"<< endl;
        cout << "5 - удаление игры с определённым ограничением возраста"<< endl;
        cin >> c;
    };
int main()
{
    setlocale( LC_ALL,"Russian" );
    int n, delvoz,c, g;
    Igra ar[maxCol];
    menu (c);
    switch (c)
    {
        case 1:
             cout<<"введите номер под которым добавите игру";
             cin>>g;
             igratVvod(ar,g);
             menu (c);
             break;
        case 2:
            igrSort( ar, n);
            menu (c);
            break;
        case 3:
            IgraVivod(ar, n);
            menu (c);
            break;
        case 4:
            cout << "Введите игру с возрастным огранчением = ";
            cin >> delvoz;
            igraVozrast(ar, n, delvoz);
            menu (c);
            break;
        case 5:
            cout << "Введите игру с возрастным огранчением = ";
            cin >> delvoz;
            if (igraVozrast(ar, n, delvoz))
            {
                igraDelete(ar, n, delvoz);
            };
            menu (c);
            break;
        default:
            cout << "Error!!!" << endl; 
    }
 
 
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.02.2011, 21:42     База данных
Посмотрите здесь:

База данных в С++. C++
база данных C++
база данных C++
C++ База данных
C++ Использование псевдопеременных: bd (3,5) = s, где bd - база данных, s - элемент базы данных, тогда с 3 по 5 элементы базы данных заменить на элемент s.
C++ Удалённая база данных - запрос и вывод данных
C++ База данных
база данных C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
accept
4838 / 3237 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
22.02.2011, 04:49     База данных #2
вероятно, самое малейшее изменение, которое приведёт к процессу
C++
1
void menu(int &c)
Yandex
Объявления
22.02.2011, 04:49     База данных
Ответ Создать тему
Опции темы

Текущее время: 02:30. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru