VEKTORI I MAPE - PRIMERI
Zadaci na ovoj veb strani su odabrani da bi ste provežbali lekcije vektori u c++ i mape u c++.
Takođe su izdvojeni delovi težih zadataka koji da bi se rešili na najoptimalniji način zahtevaju upotrebu istih.
Teži zadaci su uglavnom zadaci sa pripreme za takmičenje:
Zadaci
1.Ispisivanje mape
Petar Petrovic 55000 din
Steva Đurđev 100000 din
Milica Trajkovski 97000din
Kreirati mapu na osnovu ovih podataka o platama koja sadrži parove ključ-vrednost, tako da imena radnika budu ključ. Ispisati sve podatke na ekranu.
2.Nadprosečne ocene
Primer:
Ulaz
4
Pera Perić 4.45
Mika Mikić 2.89
Sara Matić 4.89
Nikola Terzić 3.90
Izlaz:
Pera Perić 4.45
Sara Matić 4.89
3.Ponuda patika
Ispisati nazive patika i cene od najskupljih ka najeftinijim. Ako je više patika sa istom cenom sortirati ih po leksikografskom redosledu.
Primer 1:
Broj modela patika: 3
Unesite model patike i cenu:
Nike 5000
Unesite model patike i cenu:
Adidas 4500
Unesite model patike i cenu:
Puma 4000
Izlaz:
Nike 5000
Adidas 4500
Puma 4000
Primer 2:
Broj modela patika: 4
Unesite model patike i cenu:
Converse 3000
Unesite model patike i cenu:
Vans 3500
Unesite model patike i cenu:
NewBalance 3200
Unesite model patike i cenu:
Reebok 3400
Izlaz:
Uneti broj patika n , a zatim uneti nazive patika i cene i staviti u mapu gde je naziv patika kljuc, a cena vrednost.
Kreirati vektora parova (model, cena) iz mape
Koristi sort funkciju za sortiranje iz zaglavlja
Napraviti funkciju za poređenje dva elementa koja trebaju biti upoređena tako da se vrati veća vrednost, da bi se sortiralo po opadajućem redosledu. Koristiti naziv ove funkcije kao treći parametar u funkciji sort
Ispisati sortirane vrednosti vektora parova ključ - vrednost gde je ključ naziv, a vrednost cena obuće.
#include < map >
#include < vector >
#include < algorithm >
using namespace std;
// Funkcija za sortiranje parova po ceni i imenu ako su cene iste
bool compare(pair < string, int > a, pair< string , int > b) {
int main()
{
cout << "Unesite broj modela patika: ";
cin >> n;
// Mapa za čuvanje modela i cena patika
map
// Učitavanje modela i cena patika u mapu
for (int i = 0; i < n; ++i) {
int cena;
cout << "Unesite model patike i cenu: ";
cin >> model >> cena;
patike[model] = cena;
// Kreiranje vektora parova (model, cena) iz mape
vector
// Sortiranje vektora koristeći custom funkciju za poređenje
sort(vec.begin(), vec.end(), compare);
// Ispis sortiranih modela i cena patika
cout << "\nNazivi patika i cene od najskupljih ka najjeftinijim:\n";
for (auto it = vec.begin(); it != vec.end(); ++it) {
return 0;
4.Fiskalni računi
Poznati su svi fiskalni računi koje je izdala jedna prodavnica. Sa svakog računa se može pročitati datum kada je taj račun izdat i iznos koji je naplaćen.
Napiši program koji određuje maksimalan dnevni pazar za tu prodavnicu.
Primer 1:
Ulaz:
Unesite broj fiskalnih racuna: 3
Unesite datum i iznos racuna 1 (format: DD.MM.GGGG): 01.05.2024 1500
Unesite datum i iznos racuna 2 (format: DD.MM.GGGG): 01.05.2024 2000
Unesite datum i iznos racuna 3 (format: DD.MM.GGGG): 02.05.2024 1800
Izlaz:
Maksimalan dnevni pazar: 3500 dinara, datum: 01.05.2024
Primer 2:
Ulaz:
Unesite broj fiskalnih racuna: 4
Unesite datum i iznos racuna 1 (format: DD.MM.GGGG): 03.05.2024 1200
Unesite datum i iznos racuna 2 (format: DD.MM.GGGG): 03.05.2024 1700
Unesite datum i iznos racuna 3 (format: DD.MM.GGGG): 04.05.2024 2200
Unesite datum i iznos racuna 4 (format: DD.MM.GGGG): 05.05.2024 2500
Izlaz:
Maksimalan dnevni pazar: 2500 dinara, datum: 05.05.2024