Помогите пожалуйста с программой....у самой никак не выходит(( Если честно не очень у меня и получаеться писать их...а сдавать в Пн....эх((
Разработать программу,обработки итоговой таблицы шахматного турнира.В программе предусмотреть ввод исходных данных(фамилии шахматистов и результаты их встреч друг с другом).Турнир проходит в 1 круг.Обработка должна включать:
-формирование итоговой таблицы турнира с расстановкой участников,согласно занятым местам с подсчётом набранных очков(за победу присуждается -1очко,за ничьюю-0,5,за поражение-0очков);
-определение и вывод фамилии участника (участников),одержавшего наибольшее число побед завершившего больше всех партий в ничью,потерпевшего больше всех поражений.
есть алгоритмы
Добавлено через 7 мин.
вот ещё...
Эскизы прикрепленных изображений
Класс! Особенно "алгоритмы". Язык-то какой, brainfuck ?
и..вот
Добавлено через 3 мин.
язык С++
Эскизы прикрепленных изображений
в общих чертах:
#include <iostream>
#include <vector>
using namespace std;
struct TableRecord
{
string name;
int wins;
int draws;
int loses;
TableRecord()
{
wins = 0;
draws = 0;
loses = 0;
}
float GetTotalPoints()
{
return wins + static_cast<float>(draws) * 0.5;
};
};
class PlayersList
{
private:
vector<TableRecord> list;
public:
PlayersList();
~PlayersList();
void FillPlayersInfo(int count);
void PrintPlayersList();
void SortByTotalScores();
void GenerateScoresInformation();
string GetMaxWinsName();
string GetMaxDrawsName();
};
PlayersList :: PlayersList()
{
}
PlayersList :: ~PlayersList()
{
list.clear();
}
void PlayersList :: FillPlayersInfo(int count)
{
TableRecord temp;
for (int i = 0; i < count; i++)
{
cout << "Name of player #" << i + 1 << ": ";
cin >> temp.name;
list.push_back(temp);
}
}
void PlayersList :: PrintPlayersList()
{
cout << endl;
for (unsigned i = 0; i < list.size(); i++)
{
cout << i + 1 << '\t' << list[i].name << '\t' << list[i].GetTotalPoints() <<endl;
}
cout << endl;
}
void PlayersList :: SortByTotalScores()
{
for (unsigned i = list.size() - 1; i > 0; i--)
for (unsigned j = 0; j < i; j++)
if (list[j].GetTotalPoints() < list[j + 1].GetTotalPoints())
{
TableRecord temp = list[j];
list[j] = list[j + 1];
list[j + 1] = temp;
}
}
void PlayersList :: GenerateScoresInformation()
{
srand(time(NULL));
for (unsigned i = 0; i < list.size() - 1; i++)
for (unsigned j = i + 1; j < list.size(); j++)
{
int game_result = -1 + rand() % 3;
/*
-1: first wins
0: draw
1: second wins
*/
string strResult = "";
switch(game_result)
{
case -1:
{
list[i].wins++;
list[j].loses++;
strResult = " has won at ";
};
break;
case 0:
{
list[i].draws++;
list[j].draws++;
strResult = " has played a drawn game with ";
};
break;
case 1:
{
list[i].loses++;
list[j].wins++;
strResult = " has lost ";
};
break;
}
cout << endl << list[i].name << strResult << list[j].name << endl;
}
}
string PlayersList :: GetMaxWinsName()
{
int max_wins_id = 0;
for (unsigned i = 1; i < list.size(); i++)
max_wins_id = list[i].wins > list[max_wins_id].wins ? i : max_wins_id;
return list[max_wins_id].name;
}
string PlayersList :: GetMaxDrawsName()
{
int max_draws_id = 0;
for (unsigned i = 1; i < list.size(); i++)
max_draws_id = list[i].draws > list[max_draws_id].draws ? i : max_draws_id;
return list[max_draws_id].name;
}
int main()
{
PlayersList *plist = new PlayersList();
(*plist).FillPlayersInfo(4);
(*plist).GenerateScoresInformation();
(*plist).SortByTotalScores();
(*plist).PrintPlayersList();
cout << "Player with maximum wins: " << (*plist).GetMaxWinsName() << endl;
cout << "Player with maximum draws: " << (*plist).GetMaxDrawsName() << endl;
delete plist;
return 0;
}
спасибо огромное клемыч.....а на каком это языке?
А на какой похоже ? Ты же сказала что с++, вот это он и есть.