def dodaj_akciju(): akcije = ucitaj_akcije() knjige = ucitaj_knjige() maks = akcije[0]['sifra'] for akcija in akcije: if akcija['sifra'] > maks: maks = akcija['sifra'] sifra = maks + 1 ponuda = {} ispisi_knjige(knjige) datum = input('Unesite datum (dd/MM/yyyy): ') while (True): p = input('Unesite akciju (sifra :cena) [x->kraj]: ') if p == 'x': break ponuda[p.split(':')[0]] = int(p.split(':')[1]) akcije.append({ 'sifra': sifra, 'ponuda': ponuda, 'datum': datum, 'kupljena': 0 }) sacuvaj_akcije(akcije)
def pretraga_akcija_sifra(kljuc, vrednost): akcije = ucitaj_akcije() pronadjene_akcije = [] for akcija in akcije: if (akcija[kljuc] == int(vrednost)): pronadjene_akcije.append(akcija) return pronadjene_akcije
def prikazi_akcije(): print("-" * 20) print("1. Sortiranje po sifri") print("2. Sortiranje po datumu") print("-" * 20) stavka = int(input("Izaberite stavku: ")) akcije = ucitaj_akcije() knjige = ucitaj_knjige() if stavka == 1: bubble_sort(akcije, "sifra") elif stavka == 2: bubble_sort_dt(akcije, "datum") ispisi_akcije(akcije, knjige)
def pretraga_akcija_jednakost(kljuc, vrednost): akcije = ucitaj_akcije() knjige = ucitaj_knjige() pronadjene_akcije = [] pronadjen = False for akcija in akcije: for ponuda in akcija['ponuda'].keys(): for knjiga in knjige: if knjiga['sifra'] == int( ponuda) and knjiga[kljuc] == vrednost: pronadjene_akcije.append(akcija) pronadjen = True break if pronadjen: break return pronadjene_akcije
def izvestaj_svih_akcija(): izvestaj = {} akcije = ucitaj_akcije() knjige = ucitaj_knjige() for akcija in akcije: if akcija['kupljena'] > 0: for sifra in akcija['ponuda'].keys(): for knjiga in knjige: if knjiga['sifra'] == int(sifra): if sifra not in izvestaj.keys(): izvestaj[sifra] = { 'naslov': knjiga['naslov'], 'kolicina': akcija['kupljena'], 'zarada': akcija['ponuda'][sifra] * akcija['kupljena'] } else: izvestaj[sifra]['kolicina'] += akcija['kupljena'] izvestaj[sifra]['zarada'] += akcija['ponuda'][ sifra] * akcija['kupljena'] ispisi_izvestaj(izvestaj)