DODATNI PRIMERI ZA VEŽBU IZ OBLASTI "KLASE I OBJEKTI"
U ovom odeljku su dati primeri zadataka iz oblasti klase i objekti, sa rešenjima. Pokušajte da primere rešite samostalno, a rešenje koristiti za proveru ili koristiti ako posle većeg broja pokušaja i dosta uloženog truda ipak ne uspete samostalno da rešite postavljen zadatak.
Rešenje će se prikazati klikom na dugme pored postavljenog zadatka.
Zadaci su obojeni različitim bojama u zavisnosti od težine:
- Zelena- laki zadaci
- Žuta - zadaci srednje težine
- Crvena - teži zadaci
Zadatak 7-Trouglovi:
Zadatak 8-Porudžbine u Restoranu:
| Zadatak je da se kreira program koji upravlja porudžbinama u restoranu. Porudžbina treba da sadrži informacije kao što su ime gostiju, jelo koje su naručili, i način plaćanja. Potrebno je da se porudžbina automatski potvrdi ako je plaćanje izvršeno unapred ili gotovinom. Program treba da omogući unos novih porudžbina, ali restoran može primiti najviše deset porudžbina istovremeno. Takođe, treba omogućiti prikaz svih porudžbina, kao i prikaz porudžbina zajedno sa cenom jela. Cena jela može biti umanjena ako je plaćanje izvršeno unapred, uz određeni popust (npr. 15%). Dodatno, potrebno je implementirati funkcionalnost za sortiranje porudžbina po imenu gosta ili po jelu i prikaz rezultata. Program treba da omogući i rukovanje greškama koje mogu nastati, na primer, prilikom pokušaja dodavanja više porudžbina od dozvoljenog u restoran (u ovom primeru je 10). |
Image by Victoria from Pixabay |
Zadatak je da se kreira program za upravljanje porudžbinama u restoranu koristeći C#. Program treba da obuhvati sledeće funkcionalnosti:
- Kreiranje Klase Porudzbina:
- Definišite klasu Porudzbina koja treba da sadrži informacije o:
- Ime gosta
- Jelo koje je naručeno
- Način plaćanja (gotovina ili kartica)
- Cena jela
- Način dostave (kurir ili u restoranu)
- Broj porudžbine
- Definišite klasu Porudzbina koja treba da sadrži informacije o:
- Implementacija Interfejsa:
- Definišite interfejs IRestoran sa sledećim metodama:
- DodajPorudzbinu(Porudzbina p): Metoda koja dodaje novu porudžbinu u restoran. Ako broj porudžbina prelazi 10, treba da baci izuzetak sa porukom "Ne primamo više od 10 porudžbina".
- CenaJela(): Metoda koja prikazuje cenu svakog jela sa eventualnim popustom (npr. 10% popusta za gotovinske uplate i dodatak za dostavu kurir).
- PrikaziPorudzbine(): Metoda koja ispisuje sve porudžbine u restoranu.
- Definišite interfejs IRestoran sa sledećim metodama:
- Sortiranje Porudžbina:
- Implementirajte metodu za sortiranje porudžbina po imenu gosta u rastućem redosledu.
- Implementirajte metodu za sortiranje porudžbina po jelu u opadajućem redosledu. Pritom, porudžbine koje su plaćene karticom i čija cena prelazi 3000 dinara treba sortirati u opadajućem redosledu.
- Obrada Izuzetaka:
- Program treba da rukuje izuzetkom koji se baca kada broj porudžbina prelazi dozvoljeni limit (10 porudžbina).
- Treba obraditi sve druge potencijalne greške koje mogu nastati tokom dodavanja porudžbina ili obrade cena.
- Implementacija Klase Restoran:
- Definišite klasu Restoran koja implementira interfejs IRestoran i sadrži:
- Listu porudžbina
- Metode za dodavanje porudžbina, prikaz cena jela, prikaz svih porudžbina, sortiranje porudžbina
- Indekser za pristup porudžbinama po indeksu.
- Definišite klasu Restoran koja implementira interfejs IRestoran i sadrži:
- Glavni Program:
- U glavnom programu, kreirajte instancu klase Restoran, dodajte nekoliko porudžbina, i testirajte sve implementirane metode.
- Demonstrirajte sortiranje porudžbina, ispisivanje cena jela, i rukovanje izuzecima prilikom dodavanja više od dozvoljenog broja porudžbina.








