Elkezdtük a pékárus feladatot, majd áttértünk erre, átvettük az OOP gyakorlati alapjait, majd ez alapján folytattuk az előzőt.
Minta az osztály használatához.
Önvezető autók
Napjainkban az önvezető
autók egyre gyorsabban fejlődnek, több neves cég is fejleszt ilyeneket. Ebben a
feladatban a rájuk vonatkozó adatokat kell feldolgoznia.
Az adatokat a lenti
keretben találja. Az állomány soronként tartalmazza az autók következő adatait
egymástól pontosvesszővel elválasztva:
- azonosító (gyártó
és modellszám)
- teljesítmény (lóerő)
- tömeg (tonna)
- gyorsulás (hány másodperc
alatt gyorsul 100 km/h-ra)
- a vezetőnek hányszor
kellett beavatkozni a vezetésbe 10.000 km-en
A fájlban 9 autó
adatai vannak.
Tesla
Model S P90D;760;2,20;3;3
Volvo
XC90;889;2,90;4;14
Volkswagen
GO989;1378;3,66;5;6
Audi
Q525;772;2,40;2;3
Mercedes
Benz898;739;2,20;3;9
Google
Drive 18;752;2,55;4;11
Delphi
Magic 428B;1194;3,00;3;4
Bosch
Doom300;700;2,09;4;6
Nissan
Cherry 100;725;3,1;3;7
|
Például a Tesla Model S
P90D autó 760 lóerős teljesítményű, 2,2 tonna tömegű, 3 másodperc alatt gyorsul
100 km/órára és a 10.000 km-es tesztvezetésen 3-szor volt szükség humán
beavatkozásra.
using System;
using System.Collections.Generic;
using System.IO;
namespace autokOOP
{
class Auto
{
public string Azonosito { get; set; } //property (tulajdonság/jellemző)
//a fentit a prop tab-tab módszerrel könnyen elő lehet hívni
//de így is lehetne egyszerűbben:
//public string azonosito;
public int Loero { get; set; }
public double Tomeg { get; set; }
public int Gyorsulas { get; set; }
public int Beavatkozas { get; set; }
public Auto(string sor) //konstruktor, példányosításkor automatikusan végrehajtódik
{
string[] atmeneti = sor.Split(';');
Azonosito = atmeneti[0];
Loero = Convert.ToInt32(atmeneti[1]);
Tomeg = Convert.ToDouble(atmeneti[2]);
Gyorsulas = Convert.ToInt32(atmeneti[3]);
Beavatkozas = Convert.ToInt32(atmeneti[4]);
}
public void kiir()
{
Console.WriteLine($"{Azonosito,-18} | {Loero,4} lóerő | {Tomeg,4} t | {Gyorsulas,2} mp | {Beavatkozas,2}* kellett beavatkozni");
}
}
class Program
{
static void Main(string[] args)
{
List<Auto> autok = new List<Auto>(); //példányosítás
//2.Az adatokat olvassa be fájlból és tárolja el egy listában.
foreach (var item in File.ReadAllLines("autok.txt"))
{
autok.Add(new Auto(item));
}
Console.WriteLine("\n4. kiírás");
for (int i = 0; i < autok.Count; i++)
{
autok[i].kiir();
}
...
Nincsenek megjegyzések:
Megjegyzés küldése