Stáhnout prezentaci
Prezentace se nahrává, počkejte prosím
1
NÁZEV ŠKOLY: Střední odborná škola Net Office, spol. s r. o
NÁZEV ŠKOLY: Střední odborná škola Net Office, spol. s r.o., Orlová-Lutyně AUTOR: Ing. Adéla Tomalová NÁZEV: Podpora výuky v technických oborech TEMA: Objektově orientované programování v C# ČÍSLO PROJEKTU:CZ.1.07/1.5.00/ NÁZEV ŠABLONY: V/2-Inovace a zkvalitnění výuky směřující k rozvoji odborných kompetencí žáků středních škol
2
Cvičení 11 C# pole jako proměnná třídy .
Třída Ovoce - při vzniku instance se zadá název ovoce a cena za 1kg. Při nákupu ovoce se zadá hmotnost nakupovaného ovoce - zadá se v hlavním programu. Hlavní položky Ovoce budou jeho název, cena za kilogram a nakoupené množství v kg. Ty použijeme v konstruktoru. public Ovoce(string nazev, double cenaKg) { this.nazev = nazev; this.cenaKg = cenaKg; } class Ovoce { public double kg; public double cenaKg; public string nazev; Třída Ovoce - při vzniku instance se zadá název ovoce a cena za 1kg. Při nákupu ovoce se zadá hmotnost nakupovaného ovoce - zadá se v hlavním programu. pro potřeby vytvoření paragonu se vytvoří metoda s výpisem ovoce na paragon a návratem celkové ceny. Pro možnost nákupu slouží metoda doKosiku, která přidá vybrané ovoce do zákazníkova pole Ovoce. Metoda Paragon projde celý zákazníkův nákup a spočítá jeho celkovou cenu. Metoda kolikKilo nastavuje množství nakoupeného ovoce. public void kolikKilo() { Console.WriteLine("množství ovoce druh: " + nazev); kg = double.Parse(Console.ReadLine()); }
3
Cvičení 11 C# pole jako proměnná třídy . public double radek() {
Pro potřeby vytvoření paragonu se vytvoří metoda s výpisem ovoce na paragon a návratem celkové ceny. V metodě potřebujeme 2x vypočítat celkovou platbu za položku a tuto situaci můžeme vyřešit vytvořením a voláním jednoduché metody getCena(). public double radek() { Console.Write(nazev); Console.Write("\t cena za kg {0:f} Kč", cenaKg); Console.WriteLine("\t celková cena " + getCena().ToString("# ##0.00") + " Kč"); return getCena(); } Třída Ovoce - při vzniku instance se zadá název ovoce a cena za 1kg. Při nákupu ovoce se zadá hmotnost nakupovaného ovoce - zadá se v hlavním programu. pro potřeby vytvoření paragonu se vytvoří metoda s výpisem ovoce na paragon a návratem celkové ceny. Pro možnost nákupu slouží metoda doKosiku, která přidá vybrané ovoce do zákazníkova pole Ovoce. Metoda Paragon projde celý zákazníkův nákup a spočítá jeho celkovou cenu. Tady vidíte příklad nevhodně pojmenované metody – getCena. Každý programátor by očekávat, že tato metoda je getterem pro proměnnou cena a zde je použita pro výpočet celkové ceny za položku. public double getCena() { return kg * cenaKg; }
4
Cvičení 11 C# pole jako proměnná třídy . class Zakaznik { int i = 0;
Pro možnost nákupu slouží metoda doKosiku, která přidá vybrané ovoce do zákazníkova pole Ovoce. Třída je uživatelem vytvořený datový typ, který můžeme použít při vytváření polí. class Zakaznik { int i = 0; Ovoce[] nakup = new Ovoce[6]; Jednotlivé instance třídy Ovoce musíme nějak přiřadit do pole nakup. Metoda doKosiku má toto ovoce jako parametr. Třída Ovoce - při vzniku instance se zadá název ovoce a cena za 1kg. Při nákupu ovoce se zadá hmotnost nakupovaného ovoce - zadá se v hlavním programu. pro potřeby vytvoření paragonu se vytvoří metoda s výpisem ovoce na paragon a návratem celkové ceny. Pro možnost nákupu slouží metoda doKosiku, která přidá vybrané ovoce do zákazníkova pole Ovoce. Metoda Paragon projde celý zákazníkův nákup a spočítá jeho celkovou cenu. public void doKosiku(Ovoce vyber) { nakup[i] = vyber; nakup[i].kolikKilo(); i++; } Nesmíme zapomenou zvýšit hodnotu čítače, abychom novým zbožím nepřepisovali existující a na konci vkládání neměli v košíku jen jedno ovoce.
5
Cvičení 11 C# pole jako proměnná třídy . public double paragon() {
Metoda Paragon projde celý zákazníkův nákup a spočítá jeho celkovou cenu. Při procházení pole Ovoce používáme metodu třídy Ovoce radek, která vypíše řádek paragonu a do pomocné proměnné připočítá platbu za položku. public double paragon() { double pom =0; for (int j = 0; j < i; j++) pom +=nakup[j].radek(); } Console.WriteLine("Nákup celkem: {0:f} korun.", pom); return pom; Třída Ovoce - při vzniku instance se zadá název ovoce a cena za 1kg. Při nákupu ovoce se zadá hmotnost nakupovaného ovoce - zadá se v hlavním programu. pro potřeby vytvoření paragonu se vytvoří metoda s výpisem ovoce na paragon a návratem celkové ceny. Pro možnost nákupu slouží metoda doKosiku, která přidá vybrané ovoce do zákazníkova pole Ovoce. Metoda Paragon projde celý zákazníkův nákup a spočítá jeho celkovou cenu.
6
Cvičení 11 C# pole jako proměnná třídy .
V hlavním programu vytvoříme ovoce a zákazníky. Zákazníkům vybereme nákup a vypíšeme paragon . Ovoce jablko =new Ovoce("jablko ", 23.50); Ovoce hruska = new Ovoce("hruška ", 42.60); Ovoce pomeranc = new Ovoce("pomeranč", 16.30); Ovoce mandarinka = new Ovoce("mandarinka", 36.50); Zakaznik pan = new Zakaznik(); Zakaznik pani = new Zakaznik(); pani.doKosiku(jablko); pani.doKosiku(pomeranc); double platba = pani.paragon(); pan.doKosiku(pomeranc); pan.doKosiku(mandarinka); pan.doKosiku(hruska); platba = pan.paragon(); Třída Ovoce - při vzniku instance se zadá název ovoce a cena za 1kg. Při nákupu ovoce se zadá hmotnost nakupovaného ovoce - zadá se v hlavním programu. pro potřeby vytvoření paragonu se vytvoří metoda s výpisem ovoce na paragon a návratem celkové ceny. Pro možnost nákupu slouží metoda doKosiku, která přidá vybrané ovoce do zákazníkova pole Ovoce. Metoda Paragon projde celý zákazníkův nákup a spočítá jeho celkovou cenu.
7
Cvičení 11 C# pole jako proměnná třídy .
Zpracovala: Ing. Adéla Tomalová Cílová skupina: žák SŠ Rok vytvoření: 2012 Anotance: vlastní třída jako nový datový typ a jeho použítí v poli objektů. Předpokládaný přínos (výstup): použití tříd jako vlastních datových typů. Předpokládaný čas: 25 minut V textu nebyly použity materiály jiných autorů.
Podobné prezentace
© 2024 SlidePlayer.cz Inc.
All rights reserved.