Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using System.IO;
- namespace kektura
- {
- class Szakasz
- {
- public string kiindulo;
- public string veg;
- public double hossz;
- public int osszemelkedes;
- public int osszlejtes;
- public bool pecset;
- public Szakasz(string[] sr)
- {
- this.kiindulo = sr[0];
- this.veg = sr[1];
- this.hossz = Convert.ToDouble(sr[2]);
- this.osszemelkedes = Convert.ToInt32(sr[3]);
- this.osszlejtes = Convert.ToInt32(sr[4]);
- if (sr[5] == "i")
- {
- this.pecset = true;
- }
- else
- {
- this.pecset = false;
- }
- }
- public bool HianyosNev()
- {
- if (pecset)
- {
- if (veg.Contains("pecsetelohely"))
- {
- return false;
- }
- else
- {
- return true;
- }
- }
- return false;
- }
- }
- class Program
- {
- static void Main(string[] args)
- {
- #region beolvasas
- List<Szakasz> lista = new List<Szakasz>();
- string [] sr = File.ReadAllLines("kektura.csv", Encoding.UTF8); //Az első sor miatt a while(!sr.EndOfStream){...} nem tűnik jó ötletnek
- int tengerszint = Convert.ToInt32(sr[0]);
- for (int i = 1; i < sr.Length; i++)
- {
- lista.Add(new Szakasz(sr[i].Split(';')));
- }
- #endregion
- Console.WriteLine("3. feladat: \nAz állományban {0}db szakasz található", lista.Count());
- #region fel4
- Console.WriteLine("4. feladat: ");
- double ossz = 0;
- foreach (var i in lista)
- {
- ossz += i.hossz;
- }
- Console.WriteLine("A túra teljes hossza: {0}km", ossz);
- #endregion
- #region fel5
- int min = 0;
- for (int i = 0; i < lista.Count(); i++)
- {
- if (lista[min].hossz > lista[i].hossz)
- {
- min = i;
- }
- }
- Console.WriteLine("5. feladat: A legrövidebb szakasz adatai: ");
- Console.WriteLine("Kezdete:" + lista[min].kiindulo);
- Console.WriteLine("Vége:" + lista[min].veg);
- Console.WriteLine("Távolság: {0}km", lista[min].hossz);
- #endregion
- #region fel7
- Console.WriteLine("7. feladat: Hiányos állomásnevek: ");
- bool van = false;
- foreach (var i in lista)
- {
- if (i.HianyosNev())
- {
- Console.WriteLine(i.veg);
- van = true;
- }
- }
- if (!van)
- {
- Console.WriteLine("Nincs hiányos állomásnév!");
- }
- #endregion
- #region fel8
- Console.WriteLine("8. feladat: A túra legmagasabban fekvő végpontja: ");
- int max = 0;
- int jelenlegi = tengerszint + lista[max].osszemelkedes - lista[max].osszlejtes;
- int uj = jelenlegi;
- for (int i = 1; i < lista.Count(); i++)
- {
- uj += lista[i].osszemelkedes - lista[i].osszlejtes;
- Console.WriteLine(uj);
- if (uj > jelenlegi)
- {
- max = i;
- jelenlegi = uj;
- }
- }
- Console.WriteLine("A végpont neve: " + lista[max].veg);
- Console.WriteLine("A végpont tengerszint feletti magassága: {0} m", jelenlegi);
- #endregion
- #region fel9
- StreamWriter sw = new StreamWriter("kektura2.csv");
- foreach (var i in lista)
- {
- if (i.HianyosNev())
- {
- i.veg += " pecsetelohely";
- }
- string pecsetelo = "";
- if (i.pecset)
- {
- pecsetelo = "i";
- }
- else
- {
- pecsetelo = "n";
- }
- sw.WriteLine("{0};{1};{2};{3};{4};{5}", i.kiindulo, i.veg, i.hossz, i.osszemelkedes, i.osszlejtes, pecsetelo);
- }
- sw.Close();
- #endregion
- Console.ReadKey();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement