najskôr asi nevypneš niektoré vlákno
This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.
Zobrazi� pr�spevky MenuQuote from: wlade on 26.02.2008, 05:10:38
ty kokso tu sami geniovia...
Ja som sa s ulohou 1.3 nadrel za 3 dni, doslova som krv plul pri tom (obrazne povedane) a je zazrak ze mi to nejak bezi (aspon to tak vyzera) a vy za hodku mate vsetko. Fuu sami buduci menezeri a riaditelia vyznamnych podnikov tu pisu, hlboku uctu vam vzdavam... To este len bude boj, uloha 1.4 killer...
using System;
namespace Traktor {
public class Program {
/**
* metoda Main() - vola sa len raz v programe - automaticky sa spusta pri starte programu
*/
public static void Main() {
/**
* vytvorime objekt typu clovek
* nastavime mu parametre
*/
Clovek jano = new Clovek("jano", 45);
/**
* teraz vytvorime viacero traktorov
* pre predstavu kazdy traktor je rovnaky (seriova vyroba) - len maju inu farbu
*/
Traktor cervenyTraktor = new Traktor("cerveny");
Traktor modryTraktor = new Traktor("modry");
/**
* teraz jano nastupi na cerveny traktor
*/
jano.NastupDoTraktora(cervenyTraktor);
// v metode NastupDoTraktora je pouzity keyword this - to znamena, ze sa tam pouzije konkretny objekt, pre ktory je metoda volana - v nasom pripade je to objekt "jano"
/**
* nechame si vypisat, kto je vodicom ktoreho traktora
*/
Console.WriteLine("vodicom cerveneho traktora je: " + cervenyTraktor.MenoVodica());
Console.WriteLine("vodicom modreho traktora je: " + modryTraktor.MenoVodica());
/**
* a teraz sa obe traktory pokusia prejst 5km.
*/
cervenyTraktor.Prejdi(5);
modryTraktor.Prejdi(5);
/**
* a este ukazka vytvorenia objektu v inej metode ako je Main()
*/
Clovek decko = jano.NarodeniePotomka("jozo");
Console.WriteLine("potomok sa vola: " + decko.Meno());
// caka na stlacenie klavesy pred ukoncenim
Console.ReadKey();
}
}
/**
* trieda clovek drzi info a sposob spravania sa cloveka
*/
public class Clovek {
string meno;
int vek;
/**
* konstruktor - da sa predstavit ako zaregistrovanie cloveka do nejakej databazy
* ma 2 parametre - meno a vek
*/
public Clovek(string meno, int vek) {
// this znamena, ze ide o objekt, s ktorym pracujeme - tj. ktoreho konkretne sa volanie danej metody tyka
this.meno = meno;
this.vek = vek;
}
/**
* tento clovek nastupi do traktora, ktory prevezme ako parameter
*/
public void NastupDoTraktora(Traktor trak) {
trak.NastavVodica(this);
}
/**
* zistenie mena cloveka
*/
public string Meno() {
return this.meno;
}
/**
* clovek ma potomka - ukazka, ze je mozne vytvorit objekt aj v inom objekte, ako je hlavny - tj. v inej metode ako je Main()
* samozrejme, potomok ma meno, a vek 0
*/
public Clovek NarodeniePotomka(string meno) {
Clovek potomok = new Clovek(meno, 0);
return potomok;
}
}
/**
* trieda traktor zase ma info o traktore a o tom ako sa sprava on
*/
public class Traktor {
string farba;
Clovek vodic;
/**
* konstruktor - da sa to predstavit si ako napr. vyrobenie traktora v tovarni
* v principe vieme, ze vsetky traktory su rovnake (preto kazdy traktor bude instanciou tejto triedy)
* lisia sa len vo farbe - tu nastavime "pri vyrobe" - preberie sa ako parameter
* po vyjdeni z tovarne traktor je logicky bez vodica
*/
public Traktor(string farba) {
this.farba = farba;
this.vodic = null;
}
/**
* nejaky clovek nastupil do traktora a stal sa jeho vodicom - konkretne, ktory clovek to bol, preberieme ako parameter
*/
public void NastavVodica(Clovek vodic) {
this.vodic = vodic;
}
/**
* chceme zistit, kto je vodicom tohto traktora
*/
public string MenoVodica() {
if (this.vodic == null)
return "tento traktor zatial nema vodica";
return this.vodic.Meno();
}
/**
* traktor ide ku nejakemu cielu
* parametrom udame ako daleko je ciel
*/
public void Prejdi(int vzdialenost) {
if (this.vodic == null) {
Console.WriteLine("traktor nema vodica - bez vodica sa nemoze hybat.");
return;
}
// cyklus - uplne klasicke pouzitie
for (int i = 0; i < vzdialenost; i++) {
Console.WriteLine("traktor zatial presiel vzdialenost " + i + " km.");
}
Console.WriteLine("traktor je v cieli.");
}
}
}