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

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

Войти
Регистрация
Восстановить пароль
 
yuliyayuliya28
4 / 4 / 0
Регистрация: 06.03.2011
Сообщений: 319
#1

Программа обработки итоговой таблицы - C++

26.04.2011, 21:37. Просмотров 611. Ответов 2
Метки нет (Все метки)

Составить программу обработки итоговой таблицы чемпионата по футболу. Игры проходили в один круг, каждая команда играла с другой один раз. В программе предусмотреть ввод исходный данных в файл. Обработка должна включать в себя-построение итоговой таблицы чемпионата с распределением команд согласно занятым местам с подсчетом очков,набранных каждой командой (победа-2 очка,ничья-1, поражение 0)определение и вывод названия команды(команд):одержавших наибольшее количество побед,забивших в чемпионате наибольшее количество мячей,имующую лучшую разность забитых и пропущеннных мячей.

ПРОШУ О ПОМОЩИ!!!!!НЕ ЗНАЮ ДАЖЕ С ЧЕГО НАЧАТЬ!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.04.2011, 21:37
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Программа обработки итоговой таблицы (C++):

Обработка итоговой таблицы шахматного турнира - C++
Составить программу обработки итоговой таблицы шахматного турнира. В программе предусмотреть ввод исходных данных турнира (фамилии...

Программа обработки матриц - C++
Всем здравствуйте. Было задание: Разработать программу для обработки матриц. Программа должна выполнять следующие действия: суммы,...

Программа обработки структур - C++
Найдите пожалуйста ошибку. На 33 строке выдаёт error: too few arguments to function 'complex mul (complex, complex)' #include...

Программа обработки массива - C++
с помощью указателей. Ввести с клавиатуры одномерный массив из 5 чисел , подсчитать сумму элементов массива.

программа обработки сведений - C++
Помогите составить программу обработки сведений о студентах.сведения представляются в виде таблицы. Нужно ввести ФИО, пол и размер...

Программа обработки текстового файла - C++
Помогите написать программу на Си! Дано: Текстовый файл inString.txt содержит список (столбец) слов русского языка - имён...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
yuliyayuliya28
4 / 4 / 0
Регистрация: 06.03.2011
Сообщений: 319
06.05.2011, 21:02  [ТС] #2
Создала структуры помогите вывести её и как разбить ещё чтобы работать с ней?
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
#include "stdafx.h"
#include "iostream"
#include <conio.h>
#include <fstream>
 
struct tab 
{
    char name[1024];
    char pob[1024];
    char por[1024];
    char nich[1024];
    char zab[1024];
    char prop[1024];
}
 
void main()
 
{
    setlocale(LC_ALL,"Russian");
    FILE*str;
    str=fopen("m.txt","r");
    
    fclose(str);
getch();
 
}
yuliyayuliya28
4 / 4 / 0
Регистрация: 06.03.2011
Сообщений: 319
13.05.2011, 13:33  [ТС] #3
Помогите сделать правильно функцию нахождения команд одержавший большее количество побед
C
1
2
3
4
5
6
7
8
9
void max (int ln,int max1)
{ max1=team[0].victory;
   for(int i = 0; i < ln-1; i++)
   {
       if(team[i].victory>max1)
           max1=team[i].victory;
   }
   cout<<"Максимальное кличество побед"<<max1<<endl;
}
C
1
max(number);
Вот код откуда берутся данные


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
#include "stdafx.h"
#include "iostream"
#include <conio.h>
#include <string>
#include <iomanip>
#include <fstream>
using namespace std;
struct t
{
    string name;
    int victory;
    int draw;
    int lose;
    int goals;
    int missed;
    int points;
}*team,srt,max1;
 
 
void out(int ln)
{
    system("CLS");
    for(int i = 0; i < ln; i++)
    {
 
        cout<<setw(3)<< i+1<<" - "<<setw(6)<< team[i].name<<"  "<<setw(3)<<team[i].points<<endl;
    }
}
 
    
 
 
void sort(int ln)
{
    bool chk = false;
    int count;
    while(!chk)
    {
        count = 0;
        for(int i = 0; i < ln-1; i++)
        {
            if(team[i].points < team[i+1].points)
            {
                srt.name = team[i].name;
                srt.victory = team[i].victory;
                srt.draw = team[i].draw;
                srt.lose = team[i].lose;
                srt.goals = team[i].goals;
                srt.missed = team[i].missed;
                srt.points = team[i].points;
 
                team[i].name = team[i+1].name;
                team[i].victory = team[i+1].victory;
                team[i].draw = team[i+1].draw;
                team[i].lose = team[i+1].lose;
                team[i].goals = team[i+1].goals;
                team[i].missed = team[i+1].missed;
                team[i].points = team[i+1].points;
 
                team[i+1].name = srt.name;
                team[i+1].victory = srt.victory;
                team[i+1].draw = srt.draw;
                team[i+1].lose = srt.lose;
                team[i+1].goals = srt.goals;
                team[i+1].missed = srt.missed;
                team[i+1].points = srt.points;
 
                count++;
            }
            
        }
        if(count == 0)
                chk = true;
    }
}
 
void fileout(int ln)
{
    ofstream output("out.txt",ios::out);
    for(int i = 0; i < ln; i++)
    {
        output<<setw(3)<< i+1<<" - "<<setw(6)<< team[i].name<<"  "<<setw(3)<<team[i].points<<endl;
    }
    output.close();
}
 
void max (int ln,int max1)
{ max1=team[0].victory;
   for(int i = 0; i < ln-1; i++)
   {
       if(team[i].victory>max1)
           max1=team[i].victory;
   }
   cout<<"Максимальное кличество побед"<<max1<<endl;
}
int _tmain(int argc, _TCHAR* argv[])
{
    setlocale(LC_ALL,"");
    int number;
    cout<<"Введите количество команд: ";
    cin>>number;
    team = new t [number];
    for(int i = 0; i < number; i++)
    {
tchk:   system("CLS");
        cout<<"Ввод данных для "<<i+1<<" команды:"<<endl;
        cout<<"Суммарное количество игр равно: "<<number-1<<endl;
        cout<<"Введите название команды: ";
        cin>>team[i].name;
        cout<<endl;
        cout<<"Введите количество побед: ";
        cin>>team[i].victory;
        cout<<endl;
        cout<<"Введите количество ничей: ";
        cin>>team[i].draw;
        cout<<endl;
        cout<<"Введите количество поражений: ";
        cin>>team[i].lose;
        cout<<endl;
        cout<<"Введите количество забитых голов: ";
        cin>>team[i].goals;
        cout<<endl;
        cout<<"Введите пропущенных голов: ";
        cin>>team[i].missed;
        cout<<endl;
        if((team[i].victory + team[i].draw + team[i].lose) != (number-1)) 
        {
            cout<<"Количество игр, введено неверно!"<<endl;
            system("pause");
            goto tchk;
        }
        team[i].points = team[i].victory*2 + team[i].draw;
    }
sort(number);
out(number);
fileout(number);
max(number);
 
cout<<endl;
system("pause");
    return 0;
 
}
Добавлено через 12 минут
Вроде получилось выводит однумаксимальную.....только как сделать так чтобы выводил не одну команду а несколько если у них одинаковое наибольшее количество побед?

C
1
2
3
4
5
6
7
8
9
10
void max (int ln,int max1,int a)
{ max1=team[0].victory;
   for(int i = 0; i < ln-1; i++)
   {
       if(team[i].victory>max1)
           max1=team[i].victory;
           a=i;
   }
   cout<<"Максимальное кличество побед  "<<team[a].victory<<max1<<endl;
}
Добавлено через 50 минут
Помогите пожалуйста с находением максимальных побед, максимальных забитых голов, и максимальных разностей между забитыми и пропущенными голами...

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 max_victory (int ln,int max1,int a)
{ max1=team[0].victory;
   for(int i = 0; i < ln-1; i++)
   {
       if(team[i].victory>max1)
           max1=team[i].victory;
           a=i;
      
   }
 cout<<"Максимальное кличество побед  "<<team[a].name<<team[a].victory<<endl;
}
void max_goals(int ln,int max1,int a)
{ max1=team[0].goals;
   for(int i = 0; i < ln-1; i++)
   {
       if(team[i].goals>max1)
           max1=team[i].goals;
          a=i;
      
   }
 cout<<"Наибольшее количество забитых мячей "<<team[a].name<<team[a].goals<<endl;
      
}
void max_rajn(int ln,int max1,int a)
{ max1=team[0].goals-team[0].missed;
   for(int i = 0; i < ln-1; i++)
   {
       if(team[i].goals-team[i].missed>max1)
           max1=team[i].goals-team[i].missed;
          a=i;
       
   }
cout<<"Наибольшая разность между забитыми и пропущенными мячами "<<team[a].name<<team[a].goals-team[a].missed<<endl;
      
}
Добавлено через 18 часов 46 минут





Ну пожалуйста помогите доработать(((



[C]
#include "stdafx.h"
#include "iostream"
#include <conio.h>
#include <string>
#include <iomanip>
#include <fstream>
#include <windows.h>
using namespace std;
struct t
{
string name;
int victory;
int draw;
int lose;
int goals;
int missed;
int points;
}*team,srt;


void out(int ln)
{
system("CLS");
for(int i = 0; i < ln; i++)
{

cout<<setw(3)<< i+1<<" - "<<setw(6)<< team[i].name<<" "<<setw(3)<<team[i].points<<endl;
}
}




void sort(int ln)
{
bool chk = false;
int count;
while(!chk)
{
count = 0;
for(int i = 0; i < ln-1; i++)
{
if(team[i].points < team[i+1].points)
{
srt.name = team[i].name;
srt.victory = team[i].victory;
srt.draw = team[i].draw;
srt.lose = team[i].lose;
srt.goals = team[i].goals;
srt.missed = team[i].missed;
srt.points = team[i].points;

team[i].name = team[i+1].name;
team[i].victory = team[i+1].victory;
team[i].draw = team[i+1].draw;
team[i].lose = team[i+1].lose;
team[i].goals = team[i+1].goals;
team[i].missed = team[i+1].missed;
team[i].points = team[i+1].points;

team[i+1].name = srt.name;
team[i+1].victory = srt.victory;
team[i+1].draw = srt.draw;
team[i+1].lose = srt.lose;
team[i+1].goals = srt.goals;
team[i+1].missed = srt.missed;
team[i+1].points = srt.points;

count++;
}

}
if(count == 0)
chk = true;
}
}

void fileout(int ln,int maxvictory,int maxgoals,int maxrajn)
{
ofstream output("out.txt",ios::out);
for(int i = 0; i < ln; i++)
{
SetConsoleCP(1251);
output<<setw(3)<< i+1<<" - "<<setw(6)<< team[i].name<<" "<<setw(3)<<team[i].points<<maxvictory<<maxgoals<<maxrajn<<endl;
SetConsoleCP(cp);
}
output.close();
}

int max_victory (int ln,int max1,int a)
{ max1=team[0].victory;
for(int i = 0; i < ln; i++)
{
if(team[i].victory>max1)
{ max1=team[i].victory;
a=i;
}

}
for(int i = 0; i < ln; i++)
{
if(max1 == team[i].victory)
{
cout<<"Максимальное кличество побед у команды "<<team[i].name<<" "<<team[i].victory<<endl;
}
}
return max1;
}
int max_goals(int ln,int max2,int b)
{ max2=team[0].goals;
for(int i = 0; i < ln; i++)
{
if(team[i].goals>max2)
{ max2=team[i].goals;
b=i;
}
}
for(int i = 0; i < ln; i++)
{
if(max2 == team[i].goals)
{
cout<<"Наибольшее количество забитых мячей "<<team[i].name<<" "<<team[i].goals<<endl;
}
}
return max2;
}
int max_rajn(int ln,int max3,int c)
{ max3=team[0].goals-team[0].missed;
for(int i = 0; i < ln; i++)
{
if(team[i].goals-team[i].missed>max3)
{ max3=team[i].goals-team[i].missed;
c=i;
}
}
for(int i = 0; i < ln; i++)
{
if(max3 ==team[i].goals-team[i].missed)
{
cout<<"Наибольшая разность между забитыми и пропущенными мячами "<<team[c].name<<" "<<team[c].goals-team
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
.missed<<endl; 
   }
   }
return max3;
}
    
int _tmain(int argc, _TCHAR* argv[])
{
    setlocale(LC_ALL,"");
    int cp = GetConsoleCP();
    int number;
    cout<<"Введите количество команд: ";
    cin>>number;
    team = new t [number];
    int max1=0;int max2=0;int max3=0;
    int a=0,b=0,c=0;int maxvictor,maxgoals,maxrajn;
    for(int i = 0; i < number; i++)
    {
tchk:   system("CLS");
        cout<<"Ввод данных для "<<i+1<<" команды:"<<endl;
        cout<<"Суммарное количество игр равно: "<<number-1<<endl;
        cout<<"Введите название команды: ";
        SetConsoleCP(1251);
        cin>>team[i].name;
        SetConsoleCP(cp);
        cout<<endl;
        cout<<"Введите количество побед: ";
        SetConsoleCP(1251);
        cin>>team[i].victory;
        SetConsoleCP(cp);
        cout<<endl;
        cout<<"Введите количество ничей: ";
        SetConsoleCP(1251);
        cin>>team[i].draw;
        SetConsoleCP(cp);
        cout<<endl;
        cout<<"Введите количество поражений: ";
        SetConsoleCP(1251);
        cin>>team[i].lose;
        SetConsoleCP(cp);
        cout<<endl;
        cout<<"Введите количество забитых голов: ";
        SetConsoleCP(1251);
        cin>>team[i].goals;
        SetConsoleCP(cp);
        cout<<endl;
        cout<<"Введите пропущенных голов: ";
        SetConsoleCP(1251);
        cin>>team[i].missed;
        SetConsoleCP(cp);
        cout<<endl;
        if((team[i].victory + team[i].draw + team[i].lose) != (number-1)) 
        {
            cout<<"Количество игр, введено неверно!"<<endl;
            system("pause");
            goto tchk;
        }
        team[i].points = team[i].victory*2 + team[i].draw;
    }
sort(number);
out(number);
fileout(number,maxvictory,maxgoals,maxrajn);
int maxvictory=max_victory(number,max1,a);
int maxgoals=max_goals(number,max2,b);
int maxrajn=max_rajn(number,max3,c);
cout<<endl;
system("pause");
    return 0;
 
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.05.2011, 13:33
Привет! Вот еще темы с ответами:

Программа обработки данных об учениках - C++
Описать, используя тип структура, данные на учеников (фамилия, улица, дом, квартира). Составить программу, определяющую, сколько учеников...

Программа обработки массива символов - C++
Составить программу обработки массива символов с помощью указателей, которая вводит текст из произвольного количества строк, а затем...

Программа для обработки матриц - C++
Составить на одном из алгоритмических языков программу, запускается и выдает на экран меню из четырех пунктов (генерация, обработка,...

Программа обработки прерывания от клавиатуры должна: - C++
1. Распознавать нажатие горячей комбинации клавиш и реагировать на него звуком 2. При первом нажатии горячей комбинации переходить в...


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

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

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