Untitled
unknown
plain_text
a year ago
1.9 kB
4
Indexable
def odczytaj_aktualne_kolory(): print("Podaj aktualne położenie kolorów na płaskiej kostce Rubika:") print("Dostępne kolory: z (żółty), b (biały), s (szary), c (czarny)") kolory = [ input("Podaj kolory rzędu 1 (żółty): ").split(), input("Podaj kolory rzędu 2 (biały): ").split(), input("Podaj kolory rzędu 3 (szary): ").split(), input("Podaj kolory rzędu 4 (czarny): ").split() ] return kolory def odczytaj_zamierzone_ustawienie(): print("Podaj zamierzone ułożenie kolorów na płaskiej kostce Rubika:") print("Dostępne kolory: z (żółty), b (biały), s (szary), c (czarny)") kolory = [ input("Podaj kolory rzędu 1 (żółty): ").split(), input("Podaj kolory rzędu 2 (biały): ").split(), input("Podaj kolory rzędu 3 (szary): ").split(), input("Podaj kolory rzędu 4 (czarny): ").split() ] return kolory def generuj_sekwencje_ruchow(aktualne_kolory, zamierzone_kolory): sekwencja_ruchow = [] for rzad, oczekiwane_kolory in enumerate(zamierzone_kolory): if aktualne_kolory[rzad] != oczekiwane_kolory: pozycja_koloru = aktualne_kolory[rzad].index(oczekiwane_kolory[rzad]) przesuniecia_w_dol = pozycja_koloru + 1 sekwencja_ruchow.extend([str(rzad + 1)] * przesuniecia_w_dol) if aktualne_kolory[3] != ["c", "c", "c", "c"]: sekwencja_ruchow.append("4") return sekwencja_ruchow def main(): print("Wprowadź kolory jako litery: 'z' (żółty), 'b' (biały), 's' (szary), 'c' (czarny)") aktualne_kolory = odczytaj_aktualne_kolory() zamierzone_kolory = odczytaj_zamierzone_ustawienie() sekwencja_ruchow = generuj_sekwencje_ruchow(aktualne_kolory, zamierzone_kolory) print("\nSekwencja ruchów do ułożenia kostki:") for ruch in sekwencja_ruchow: print("Naciśnij przycisk", ruch) if __name__ == "__main__": main()
Editor is loading...
Leave a Comment