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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
mcbeat
0 / 0 / 0
Регистрация: 07.02.2011
Сообщений: 30
#1

Структуры: Организовать базу данных для спортивного клуба - C++

13.09.2011, 16:06. Просмотров 687. Ответов 7
Метки нет (Все метки)

Организовать базу данных для спортивного клуба со следующей информацией про штангистов:
– ФИО;
– дата рождения (дд:мм:рррр);
– вес.
Вывести на экран список спортсменов, отсортированный по весовым категориям (I – до 50кг; II – 51–60кг; III – 61–70кг; IV – 71–80кг; V – свыше 80кг).

Вот, что у меня есть, дальше ничего не могу сделать(((
Помогите пожалуйста, и если можно, с комментариями)

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
#include <cstdlib>
#include <iostream>
#include <iomanip>
 
using namespace std;
struct shtanga
{ string name;
  string birthday;
  float weight;
  int id;       
       };
 
int main()
{ 
    int i,n=0;
    std::string command;
    shtanga s[100];
    cout << ">>> ";
    cin >> command;
        if (command == "add") {
        cout<<"Kol-vo sport   " ;
        cin>>n;      
                     for(i=0;i<n;i++)
                                     {cout << " Name: ";
                                     cin >> s[i].name;
                                     cout << " Birthday: ";
                                     cin >> s[i].birthday;
                                     cout<<" Weight: ";
                                     cin>>s[i].weight;
                                     cout << "New entire has been created (ID = " << i+1 << ")" << endl;
                                     s[i].id=i+1;
                                      }
    
            cout << "------------------------------------------------------" << endl;
            cout << "| ID | Name                    | Birthday   | Weight |" << endl;
            cout << "------------------------------------------------------" << endl;
                    for (i=0;i<n;i++){cout << "| " 
                         << s[i].id            << "  | " <<setw(23)
                         << s[i].name          << " | " <<setw(10)  
                         << s[i].birthday      << " | " <<setw(6)
                         << s[i].weight        << " | " <<endl;}
            cout << "------------------------------------------------------" << endl;
}else if (command=="sort"){
            cout << "-------------------------1 CATEGORY--------------------" <<endl;
            cout << "| ID | Name                     | Birthday   | Weight |" << endl;
            cout << "-------------------------------------------------------" << endl;
      for (i=0;i<n;i++)
          {if (s[i].weight>0){
                         cout << "| " 
                         << s[i].id            << "  | " <<setw(23)
                         << s[i].name          << " | " <<setw(10)  
                         << s[i].birthday      << " | " <<setw(6)
                         << s[i].weight        << " | " <<endl;
                         }
          }
          cout << "-------------------------------------------------------" << endl; }                
    system("PAUSE");
    return EXIT_SUCCESS;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.09.2011, 16:06     Структуры: Организовать базу данных для спортивного клуба
Посмотрите здесь:

Реализовать простейшую базу данных, используя пользовательские типы (структуры) C++
C++ Описать класс для структуры данных
Создать базу данных (массив структур) в соответствии с заданной структуры C++
Вывод на экран фамилий и номеров групп для всех студентов, включенных в базу данных C++
Структуры данных для хранения и работы с матрицами C++
C++ Организовать двунаправленный список для хранения элементов структуры, содержащей сведения о фамилии, дате рождения
C++ Структуры данных для С++. Перестановки
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Чистый
Автор FAQ
2639 / 1387 / 71
Регистрация: 08.09.2011
Сообщений: 3,714
Записей в блоге: 1
13.09.2011, 16:55     Структуры: Организовать базу данных для спортивного клуба #2
вывести данные спортсменов можно приблизительно так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
for(int k=0; k<6; k++)
{
    cout << "Спортсмены " << k << " категории:" << endl;
    for (int j=0; j<100; j++)
    {
        if (st[j].weight <= mas_w[k])
        {
            cout << "| " 
                         << st[i].id            << " | " <<setw(23)
                         << st[i].name          << " | " <<setw(10)  
                         << st[i].birthday      << " | " <<setw(6)
                         << st[i].weight        << " | " <<endl;
        }
    }
}
где mas_w это:
C++
1
int mas_w[5]= {50, 60, 70, 80, 1000};
будут вопросы задавай но тут нет ничего сложного....
Сыроежка
Заблокирован
13.09.2011, 18:25     Структуры: Организовать базу данных для спортивного клуба #3
Цитата Сообщение от Чистый Посмотреть сообщение
вывести данные спортсменов можно приблизительно так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
for(int k=0; k<6; k++)
{
    cout << "Спортсмены " << k << " категории:" << endl;
    for (int j=0; j<100; j++)
    {
        if (st[j].weight <= mas_w[k])
        {
            cout << "| " 
                         << st[i].id            << " | " <<setw(23)
                         << st[i].name          << " | " <<setw(10)  
                         << st[i].birthday      << " | " <<setw(6)
                         << st[i].weight        << " | " <<endl;
        }
    }
}
где mas_w это:
C++
1
int mas_w[5]= {50, 60, 70, 80, 1000};
будут вопросы задавай но тут нет ничего сложного....
В вашем код содержится ошибка. Вы объявляете массив int mas_w[5] размерностью 5, а цикл у вас рассчитан на 6 элементов массива!

for(int k=0; k<6; k++)
Чистый
Автор FAQ
2639 / 1387 / 71
Регистрация: 08.09.2011
Сообщений: 3,714
Записей в блоге: 1
13.09.2011, 18:29     Структуры: Организовать базу данных для спортивного клуба #4
да согласен....
mcbeat
0 / 0 / 0
Регистрация: 07.02.2011
Сообщений: 30
13.09.2011, 21:00  [ТС]     Структуры: Организовать базу данных для спортивного клуба #5
Всем спасибо!!!!
Я немного переделал))) Так как бы лучше))

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
#include <cstdlib>
#include <iostream>
#include <iomanip>
 
using namespace std;
struct athlete
{ string name;
  string birthday;
  float weight;
  int id;       
       };
int setSportInfo(athlete &s)
{
    cout << " Name: ";
    cin >> s.name;
    cout << " Birthday: ";
    cin >> s.birthday;
    cout<<" Weight: ";
    cin>>s.weight;
    return 0;
}
int main()
{ 
    int i,n=0;
    std::string command;
    athlete s[100];
    int mas_w[6]= {0,50, 60, 70, 80, 1000};
do 
{
    cout<<"|------------List of commands-----------|"<<endl;
    cout<<"|                                       |"<<endl;
    cout<<"|1. add  (Create a new athlete)         |"<<endl;
    cout<<"|2. view (To view the list of athletes) |"<<endl;
    cout<<"|3. sort (Sorting by categories)        |"<<endl;
    cout<<"|4. exit (the output from the program)  |"<<endl;
    cout<<"|_______________________________________|"<<endl<<endl;
    cout << "Enter the command >>> ";
    cin >> command;
        if (command == "add") {
               cout << endl;
               s[n].id = n;
               setSportInfo(s[n]);
                cout << endl;
               cout << "New entire has been created (ID = " << n+1 << ")" << endl<<endl;
               n++;
               }
        else if(command=="view"){ 
             if (n == 0) {
                cout << "No records found. Use 'add' command for creating new entries" << endl<<endl;
                continue;
            } 
            cout << endl;
            cout << "                      -*-LIST-*-                      " << endl;  
            cout << "------------------------------------------------------" << endl;
            cout << "| ID | Name                    | Birthday   | Weight |" << endl;
            cout << "------------------------------------------------------" << endl;
                    for (i=0;i<n;i++){cout << "| " 
                         << s[i].id            << "  | " <<setw(23)
                         << s[i].name          << " | " <<setw(10)  
                         << s[i].birthday      << " | " <<setw(6)
                         << s[i].weight        << " | " <<endl;}
            cout << "------------------------------------------------------" << endl<<endl;
}
else if (command=="sort")
{
            
      for(int k=1; k<6; k++)
{           
             cout << endl;
             cout << "-------------------------"<<k<<" CATEGORY--------------------" <<endl;
             cout << "| ID | Name                     | Birthday   | Weight |" << endl;
             cout << "-------------------------------------------------------" << endl;
           for ( i=0; i<n; i++)
        {
                if (s[i].weight >= mas_w[k-1])
               {if(s[i].weight<=mas_w[k])
                {
                        cout << "| " 
                         << s[i].id            << "  | " <<setw(23)
                         << s[i].name          << "  | " <<setw(10)  
                         << s[i].birthday      << " | " <<setw(6)
                         << s[i].weight        << " | " <<endl;
                }
                }
        }cout << "-------------------------------------------------------" << endl<<endl<<endl;
}
} 
}while (command != "exit");
return 0; 
}
Может кому понадобится))))
Еще хочется убрать не нужные категории! В которые ни кто не попал! Если можете исправте ПЛЗ)
Чистый
Автор FAQ
2639 / 1387 / 71
Регистрация: 08.09.2011
Сообщений: 3,714
Записей в блоге: 1
13.09.2011, 21:40     Структуры: Организовать базу данных для спортивного клуба #6
наша задача показать как, а уж оформление это твое личное дело ....
mcbeat
0 / 0 / 0
Регистрация: 07.02.2011
Сообщений: 30
13.09.2011, 23:55  [ТС]     Структуры: Организовать базу данных для спортивного клуба #7
Еще хочется убрать не нужные категории! В которые ни кто не попал! Если можете исправте ПЛЗ)

Помогите ПЛЗ!! Очень нужно)))
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.09.2011, 10:11     Структуры: Организовать базу данных для спортивного клуба
Еще ссылки по теме:

C++ Как организовать массив для хранения данных?
Организовать базу данных для налоговой администрации C++
C++ Организовать динамическое выделение памяти в конструкторе класса для соответствующих данных-членов
Итератор для структуры данных. Ошибки passing as 'this' argument of discards qualifiers C++
Выбор структуры данных для вставки, удаления и поиска минимума за log(n) C++

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

Или воспользуйтесь поиском по форуму:
Чистый
Автор FAQ
2639 / 1387 / 71
Регистрация: 08.09.2011
Сообщений: 3,714
Записей в блоге: 1
14.09.2011, 10:11     Структуры: Организовать базу данных для спортивного клуба #8
получился вот такой кастыль
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
   int prt =0;
for(int k=1; k<6; k++)
{       
     
           for ( i=0; i<n; i++)
           {
 
                if (s[i].weight >= mas_w[k-1] && s[i].weight<=mas_w[k])
                {
                 if (prt==0)
                  { 
                 cout << endl;
                 cout << "-------------------------"<<k<<" CATEGORY--------------------" <<endl;
                 cout << "| ID | Name                     | Birthday   | Weight |" << endl;
                 cout << "-------------------------------------------------------" << endl;
                    }   
                        cout << "| " 
                         << s[i].id              << "  | " <<setw(23)
                         << s[i].name         << "  | " <<setw(10)  
                         << s[i].birthday      << " | " <<setw(6)
                         << s[i].weight        << " | " <<endl;
                      prt++;
                }
          }cout << "-------------------------------------------------------" << endl<<endl<<endl;
prt=0;
}
Yandex
Объявления
14.09.2011, 10:11     Структуры: Организовать базу данных для спортивного клуба
Ответ Создать тему
Опции темы

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