using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
using System.Globalization;
namespace Torna_Refaktorálás
{
class Versenyző
{
public int Rajtszám;
public string Név;
public string OrszágKód;
public string Kontinens;
public double Talaj;
public double Lólengés;
public double Gyűrű;
public double Nyújtó;
public double Korlát;
public double Ugrás;
public Versenyző(string sor)
{
string[] darabolo = sor.Split(';');
Rajtszám = int.Parse(darabolo[0]);
Név = darabolo[1];
OrszágKód = darabolo[2];
Kontinens = darabolo[3];
Talaj = double.Parse(darabolo[4]);
Lólengés = double.Parse(darabolo[5]);
Gyűrű = double.Parse(darabolo[6]);
Nyújtó = double.Parse(darabolo[7]);
Korlát = double.Parse(darabolo[8]);
Ugrás = double.Parse(darabolo[9]);
}
}
class Torna_YourName
{
static void Main(string[] args)
{
List
<Versenyző
> versenyzők
= new List
<Versenyző
>();
foreach (var sor in File.ReadAllLines("torna.csv").Skip(1))
{
versenyzők
.Add(new Versenyző
(sor
));
}
Console.WriteLine($"2. feladat\nÖsszesen {versenyzők.Count} versenyző indult a versenyen.");
double korlátArany = 0;
Versenyző aranyérmesKorlát = null;
foreach (var versenyző in versenyzők)
{
if (versenyző.Korlát > korlátArany)
{
korlátArany = versenyző.Korlát;
aranyérmesKorlát = versenyző;
}
}
Console.WriteLine($"\n3. feladat\nKorláton {aranyérmesKorlát.Név} szerezte meg az aranyérmet.");
Console.Write($"\n4. feladat\nKérem a versenyző rajtszámát: ");
int bekértSzám = int.Parse(Console.ReadLine());
Versenyző találtVersenyző = null;
bool találatBekérés = false;
foreach (var versenyző in versenyzők)
{
if (versenyző.Rajtszám == bekértSzám)
{
találatBekérés = true;
találtVersenyző = versenyző;
}
}
Console.WriteLine((találatBekérés ? "A " + bekértSzám + " rajtszámú versenyző gyűrűn elért eredménye: " + találtVersenyző.Gyűrű + " pont." : "Nincs ilyen versenyző!"));
Console.WriteLine("\n5. feladat\nLólengésben nem jutottak döntőbe");
foreach (var versenyző in versenyzők)
{
if (versenyző.Lólengés < 14.5)
{
Console.WriteLine($"\t{versenyző.Név}");
}
}
Console.Write("\n6. feladat\nFöldrészek, amelyekről versenyzők indultak: ");
List
<string> Földrészek
= new List
<string>();
foreach (var versenyző in versenyzők)
{
if (!Földrészek.Contains(versenyző.Kontinens))
{
Földrészek.Add(versenyző.Kontinens);
}
}
Földrészek.Sort();
foreach (var földrész in Földrészek) Console.Write($"{földrész} ");
List
<string> országKódok
= new List
<string>();
int[] országonkéntVersenyző
= new int[versenyzők
.Count];
foreach(var versenyző in versenyzők) {
if (!országKódok.Contains(versenyző.OrszágKód)) {
országKódok.Add(versenyző.OrszágKód);
}
}
foreach (var versenyző in versenyzők) {
for (int i = 0; i < országKódok.Count; i++) {
if (országKódok[i] == versenyző.OrszágKód) {
országonkéntVersenyző[i]++;
}
}
}
Console.WriteLine("\n\n7. feladat");
int iterátor = 0;
foreach (var országkód in országKódok)
{
Console.WriteLine($"\t{országkód} {országonkéntVersenyző[iterátor]} fő");
iterátor++; //biztos van rá jobb megoldás, én ezt használom most
}
FileStream fáljKészítő
= new FileStream
("francia.txt", FileMode
.Create);
StreamWriter író
= new StreamWriter
(fáljKészítő
);
író.WriteLine("Rajtszám;Név;Összpontszám"); //nem vagyok benne biztos, hogy ez is kell ide, de én ideraktam azért
foreach (var versenyző in versenyzők)
{
if (versenyző.OrszágKód == "FRA")
{
író.WriteLine($"{versenyző.Rajtszám};{versenyző.Név};{versenyző.Talaj + versenyző.Lólengés + versenyző.Gyűrű + versenyző.Nyújtó + versenyző.Korlát + versenyző.Ugrás}");
}
}
író.Close();
fáljKészítő.Close();
Console.ReadKey();
}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
using System.Globalization;
namespace Torna_Refaktorálás
{
class Versenyző
{
public int Rajtszám;
public string Név;
public string OrszágKód;
public string Kontinens;
public double Talaj;
public double Lólengés;
public double Gyűrű;
public double Nyújtó;
public double Korlát;
public double Ugrás;
public Versenyző(string sor)
{
string[] darabolo = sor.Split(';');
Rajtszám = int.Parse(darabolo[0]);
Név = darabolo[1];
OrszágKód = darabolo[2];
Kontinens = darabolo[3];
Talaj = double.Parse(darabolo[4]);
Lólengés = double.Parse(darabolo[5]);
Gyűrű = double.Parse(darabolo[6]);
Nyújtó = double.Parse(darabolo[7]);
Korlát = double.Parse(darabolo[8]);
Ugrás = double.Parse(darabolo[9]);
}
}
class Torna_YourName
{
static void Main(string[] args)
{
List
<Versenyző
> versenyzők
= new List
<Versenyző
>();
foreach (var sor in File.ReadAllLines("torna.csv").Skip(1))
{
versenyzők
.Add(new Versenyző
(sor
));
}
Console.WriteLine($"2. feladat\nÖsszesen {versenyzők.Count} versenyző indult a versenyen.");
double korlátArany = 0;
Versenyző aranyérmesKorlát = null;
foreach (var versenyző in versenyzők)
{
if (versenyző.Korlát > korlátArany)
{
korlátArany = versenyző.Korlát;
aranyérmesKorlát = versenyző;
}
}
Console.WriteLine($"\n3. feladat\nKorláton {aranyérmesKorlát.Név} szerezte meg az aranyérmet.");
Console.Write($"\n4. feladat\nKérem a versenyző rajtszámát: ");
int bekértSzám = int.Parse(Console.ReadLine());
Versenyző találtVersenyző = null;
bool találatBekérés = false;
foreach (var versenyző in versenyzők)
{
if (versenyző.Rajtszám == bekértSzám)
{
találatBekérés = true;
találtVersenyző = versenyző;
}
}
Console.WriteLine((találatBekérés ? "A " + bekértSzám + " rajtszámú versenyző gyűrűn elért eredménye: " + találtVersenyző.Gyűrű + " pont." : "Nincs ilyen versenyző!"));
Console.WriteLine("\n5. feladat\nLólengésben nem jutottak döntőbe");
foreach (var versenyző in versenyzők)
{
if (versenyző.Lólengés < 14.5)
{
Console.WriteLine($"\t{versenyző.Név}");
}
}
Console.Write("\n6. feladat\nFöldrészek, amelyekről versenyzők indultak: ");
List
<string> Földrészek
= new List
<string>();
foreach (var versenyző in versenyzők)
{
if (!Földrészek.Contains(versenyző.Kontinens))
{
Földrészek.Add(versenyző.Kontinens);
}
}
Földrészek.Sort();
foreach (var földrész in Földrészek) Console.Write($"{földrész} ");
List
<string> országKódok
= new List
<string>();
int[] országonkéntVersenyző
= new int[versenyzők
.Count];
foreach(var versenyző in versenyzők) {
if (!országKódok.Contains(versenyző.OrszágKód)) {
országKódok.Add(versenyző.OrszágKód);
}
}
foreach (var versenyző in versenyzők) {
for (int i = 0; i < országKódok.Count; i++) {
if (országKódok[i] == versenyző.OrszágKód) {
országonkéntVersenyző[i]++;
}
}
}
Console.WriteLine("\n\n7. feladat");
int iterátor = 0;
foreach (var országkód in országKódok)
{
Console.WriteLine($"\t{országkód} {országonkéntVersenyző[iterátor]} fő");
iterátor++; //biztos van rá jobb megoldás, én ezt használom most
}
FileStream fáljKészítő
= new FileStream
("francia.txt", FileMode
.Create);
StreamWriter író
= new StreamWriter
(fáljKészítő
);
író.WriteLine("Rajtszám;Név;Összpontszám"); //nem vagyok benne biztos, hogy ez is kell ide, de én ideraktam azért
foreach (var versenyző in versenyzők)
{
if (versenyző.OrszágKód == "FRA")
{
író.WriteLine($"{versenyző.Rajtszám};{versenyző.Név};{versenyző.Talaj + versenyző.Lólengés + versenyző.Gyűrű + versenyző.Nyújtó + versenyző.Korlát + versenyző.Ugrás}");
}
}
író.Close();
fáljKészítő.Close();
Console.ReadKey();
}
}
}