def meni_roboti(): ''' Ovo je metoda za prikaz menija robota Kupi vrednost,porverava da li je dobra vrednost i na osnovu toga poziva ''' while True: prikaz_menija("Koju opciju zelite: ", "1 - Prikaz robota", "2 - Unos robota", "3 - Izmena robota", "4 - Pretraga robota", "5 - Prikaz delova robota", "6 - Prikaz tezine mehanickih delova robota", "7 - Prikaz potrosnje elektricnih delova robota", "8 - Izlaz") opcija = provera_unosa("Opcija: ", "Opcija mora biti celobrojna vrednost", int) if opcija == 8: break elif opcija == 1: prikaz_robota(vrednosti.roboti) elif opcija == 2: r = unos_robota() vrednosti.roboti.append(r) cuvanje_robota(vrednosti.roboti) print("Robot uspesno kreiran {}".format(r)) elif opcija == 3: robot_oznaka = unos_oznake_robota("Unesite oznaku robota ", True) robot = robot_po_oznaci(robot_oznaka) izmena_robota(robot) cuvanje_robota(vrednosti.roboti) print("Robot uspesno izmenjen {}".format(robot)) elif opcija == 4: pretraga_robota() elif opcija == 5: robot_oznaka = unos_oznake_robota("Unesite oznaku robota ", True) robot = robot_po_oznaci(robot_oznaka) pronadjen = pronadji_delove_za_robota(robot) prikaz_delova(pronadjen) elif opcija == 6: robot_oznaka = unos_oznake_robota("Unesite oznaku robota ", True) robot = robot_po_oznaci(robot_oznaka) pronadjen = pronadji_delove_za_robota(robot) tezina = tezina_mehanickih_delova(pronadjen) print( "Ukupna tezina mehanickih delova robota je: {}".format(tezina)) elif opcija == 7: robot_oznaka = unos_oznake_robota("Unesite oznaku robota ", True) robot = robot_po_oznaci(robot_oznaka) pronadjen = pronadji_delove_za_robota(robot) potrosnja = potrosnja_elektricnih_delova(pronadjen) print("Ukupna potrosnja elektricnih delova robota je: {}".format( potrosnja))
def izmena_okvira(okvir): ''' Izmena vrednosti okvira :param okvir: ''' print("Unos vrednosti za okvir: ") oznaka = input("Oznaka: ") opis = input("Opis: ") duzina = provera_unosa("Duzina: ", "Duzina mora biti decimalna vrednost", float) sirina = provera_unosa("Sirina: ", "Sirina mora biti decimalna vrednost", float) visina = provera_unosa("Visina: ", "Visina mora biti decimalna vrednost", float) tezina = provera_unosa("Tezina: ", "Tezina mora biti decimalna vrednost", float) tip_materijala = input("Tip materijala: ") robot_oznaka = unos_oznake_robota("Oznaka robota: ", True) robot = robot_po_oznaci(robot_oznaka) okvir.oznaka = oznaka okvir.opis = opis okvir.duzina = duzina okvir.sirina = sirina okvir.visina = visina okvir.tezina = tezina okvir.tip_materijala = tip_materijala okvir.robot = robot
def unos_senzora(): ''' Metoda za unos senzora ''' print("Unos vrednosti za senzor: ") oznaka = unos_oznake_senzora("Oznaka: ", False) opis = input("Opis: ") duzina = provera_unosa("Duzina: ", "Duzina mora biti decimalna vrednost", float) sirina = provera_unosa("Sirina: ", "Sirina mora biti decimalna vrednost", float) visina = provera_unosa("Visina: ", "Visina mora biti decimalna vrednost", float) tip = input("Tip: ") merna_jedinica = input("Merna jedinica: ") izmerena_vrednost = provera_unosa( "Obrtaji u minuti: ", "Izmerena vrednost mora biti decimalna vrednost", float) potrosnja_po_merenju = provera_unosa( "Potrosnja po merenju: ", "Potrosnja po merenju mora biti decimalna vrednost", float) broj_merenja = provera_unosa("Broj merenja: ", "Broj merenja mora biti decimalna vrednost", float) robot_oznaka = unos_oznake_robota("Oznaka robota: ", True) robot = robot_po_oznaci(robot_oznaka) s = Senzor(oznaka, opis, duzina, sirina, visina, tip, merna_jedinica, izmerena_vrednost, potrosnja_po_merenju, broj_merenja, robot) return s
def unos_motora(): ''' Metoda za unos atributa motora ''' print("Unos vrednosti za motor: ") oznaka = unos_oznake_motora("Oznaka: ", False) opis = input("Opis: ") duzina = provera_unosa("Duzina: ", "Duzina mora biti decimalna vrednost", float) sirina = provera_unosa("Sirina: ", "Sirina mora biti decimalna vrednost", float) visina = provera_unosa("Visina: ", "Visina mora biti decimalna vrednost", float) tezina = provera_unosa("Tezina: ", "Tezina mora biti decimalna vrednost", float) vreme_rada = provera_unosa("Vreme rada: ", "Vreme rada mora biti celobrojna vrednost", int) obrtaja_u_minuti = provera_unosa( "Obrtaji u minuti: ", "Obrtaji u minuti moraju biti decimalna vrednost", float) potrosnja_po_obrtaju = provera_unosa( "Potrosnja po obrtaju: ", "Potrosnja po obrtaju mora biti decimalna vrednost", float) robot_oznaka = unos_oznake_robota("Oznaka robota: ", True) robot = robot_po_oznaci(robot_oznaka) m = Motor(oznaka, opis, duzina, sirina, visina, tezina, vreme_rada, obrtaja_u_minuti, potrosnja_po_obrtaju, robot) return m
def ucitavanje_okvira(): ''' Otvara fajl i deli po liniji ''' okviri = [] with open(okvirFajl) as f: for line in f: fields = line.split("|") oznaka = fields[0] opis = fields[1] duzina = float(fields[2]) sirina = float(fields[3]) visina = float(fields[4]) tezina = float(fields[5]) tip_materijala = fields[6] robot_oznaka = fields[7] robot = robot_po_oznaci(robot_oznaka) okviri.append(Okvir(oznaka, opis, duzina, sirina, visina, tezina, tip_materijala, robot)) return okviri
def ucitavanje_motora(): ''' Otvara fajl i deli po liniji ''' motori = [] with open(motorFajl) as f: for line in f: fields = line.split("|") oznaka = fields[0] opis = fields[1] duzina = float(fields[2]) sirina = float(fields[3]) visina = float(fields[4]) tezina = float(fields[5]) vreme_rada = int(fields[6]) obrtaja_u_minuti = float(fields[7]) potrosnja_po_obrtaju = float(fields[8]) robot_oznaka = fields[9] robot = robot_po_oznaci(robot_oznaka) motori.append(Motor(oznaka, opis, duzina, sirina, visina, tezina, vreme_rada, obrtaja_u_minuti, potrosnja_po_obrtaju, robot)) return motori
def unos_okvira(): ''' Metoda za unos atributa okvira ''' print("Unos vrednosti za okvir: ") oznaka = unos_oznake_okvira("Oznaka: ", False) opis = input("Opis: ") duzina = provera_unosa("Duzina: ", "Duzina mora biti decimalna vrednost", float) sirina = provera_unosa("Sirina: ", "Sirina mora biti decimalna vrednost", float) visina = provera_unosa("Visina: ", "Visina mora biti decimalna vrednost", float) tezina = provera_unosa("Tezina: ", "Tezina mora biti decimalna vrednost", float) tip_materijala = input("Tip materijala: ") robot_oznaka = unos_oznake_robota("Oznaka robota: ", True) robot = robot_po_oznaci(robot_oznaka) o = Okvir(oznaka, opis, duzina, sirina, visina, tezina, tip_materijala, robot) return o
def ucitavanje_senzora(): ''' Otvara fajl i deli po liniji ''' senzori = [] with open(senzorFajl) as f: for line in f: fields = line.split("|") oznaka = fields[0] opis = fields[1] duzina = float(fields[2]) sirina = float(fields[3]) visina = float(fields[4]) tip = fields[5] merna_jedinica = fields[6] izmerena_vrednost = float(fields[7]) potrosnja_po_merenju = float(fields[8]) broj_merenja = float(fields[9]) robot_oznaka = fields[10] robot = robot_po_oznaci(robot_oznaka) senzori.append(Senzor(oznaka, opis, duzina, sirina, visina, tip, merna_jedinica, izmerena_vrednost, potrosnja_po_merenju, broj_merenja, robot)) return senzori
def izmena_senzora(senzor): ''' Metoda za izmenu atributa senzora :param senzor: ''' print("Unos vrednosti za senzor: ") oznaka = input("Oznaka: ") opis = input("Opis: ") duzina = provera_unosa("Duzina: ", "Duzina mora biti decimalna vrednost", float) sirina = provera_unosa("Sirina: ", "Sirina mora biti decimalna vrednost", float) visina = provera_unosa("Visina: ", "Visina mora biti decimalna vrednost", float) tip = input("Tip: ") merna_jedinica = input("Merna jedinica: ") izmerena_vrednost = provera_unosa( "Izmerena vrednost: ", "Izmerena vrednost mora biti decimalna vrednost", float) potrosnja_po_merenju = provera_unosa( "Potrosnja po merenju: ", "Potrosnja po merenju mora biti decimalna vrednost", float) broj_merenja = provera_unosa("Broj merenja: ", "Broj merenja mora biti decimalna vrednost", float) robot_oznaka = unos_oznake_robota("Oznaka robota: ", True) robot = robot_po_oznaci(robot_oznaka) senzor.oznaka = oznaka senzor.opis = opis senzor.duzina = duzina senzor.sirina = sirina senzor.visina = visina senzor.tip = tip senzor.merna_jedinica = merna_jedinica senzor.izmerena_vrednost = izmerena_vrednost senzor.potrosnja_po_merenju = potrosnja_po_merenju senzor.broj_merenja = broj_merenja senzor.robot = robot
def unos_oznake_robota(poruka, postojeca): ''' Provera unosa oznake robota :param poruka: :param postojeca: ''' if postojeca: poruka_greska = "Robot sa oznakom ne postoji" else: poruka_greska = "Robot sa oznakom vec postoji" while True: vrednost = input(poruka) if vrednost is None or vrednost == "": break else: robot = robot_po_oznaci(vrednost) if robot is None and postojeca: print(poruka_greska) elif robot is not None and not postojeca: print(poruka_greska) else: return vrednost
def izmena_motora(motor): ''' Izmena vrednosti motora :param motor: ''' print("Unos vrednosti za motor: ") oznaka = input("Oznaka: ") opis = input("Opis: ") duzina = provera_unosa("Duzina: ", "Duzina mora biti decimalna vrednost", float) sirina = provera_unosa("Sirina: ", "Sirina mora biti decimalna vrednost", float) visina = provera_unosa("Visina: ", "Visina mora biti decimalna vrednost", float) tezina = provera_unosa("Tezina: ", "Tezina mora biti decimalna vrednost", float) vreme_rada = provera_unosa("Vreme rada: ", "Vreme rada mora biti celobrojna vrednost", int) obrtaja_u_minuti = provera_unosa( "Obrtaji u minuti: ", "Obrtaji u minuti moraju biti decimalna vrednost", float) potrosnja_po_obrtaju = provera_unosa( "Potrosnja po obrtaju: ", "Potrosnja po obrtaju mora biti decimalna vrednost", float) robot_oznaka = unos_oznake_robota("Oznaka robota: ", True) robot = robot_po_oznaci(robot_oznaka) motor.oznaka = oznaka motor.opis = opis motor.duzina = duzina motor.sirina = sirina motor.visina = visina motor.tezina = tezina motor.vreme_rada = vreme_rada motor.obrtaja_u_minuti = obrtaja_u_minuti motor.potrosnja_po_obrtaju = potrosnja_po_obrtaju motor.robot = robot