Algorytm analizowania postaci równania liniowego

0

Jak ocenicie przedstawienie algorytmy analizowania postaci równania liniowego w formie diagramu blokowego?
Zrobiłem coś źle? Coś da się poprawić?
(Oczywiście tylko ćwiczę, więc w doborze przykładu pomogła mi książka, ja tylko przedstawiam kolejne punkty)
Stworzone z yED

screenshot-20170204120951.png

0

@szweszwe: Coś takiego?

screenshot-20170204125725.png

0
Burdzi0 napisał(a):

@szweszwe: Coś takiego?

Tak.
Nie myślałeś, żeby usunąć pierwsze sprawdzenie c==0? Po wczytaniu danych przechodziłbyś od razu do prawej gałęzi a w miejscu gdzie jest prostokąt sprzeczne mógłbyś wstawić sprawdzenie czy c==0 i jeśli tak to a=b=c=0 w przeciwnym razie sprzeczne. Miałbyś wtedy 4 bloki sprawdzające warunek zamiast 7 i 5 wypisujących zamiast 8.

1

Po pierwsze, zmień program rysujący diagramy na taki, w którym przy bloku decyzyjnym można napisać TAK oraz NIE. Obecny schemat nadaje się tylko na śmietnik
Po drugie, zazwyczaj będzie nieskończenie wiele rozwiązań, a nie widzę ani nieskończonej pętli wypisującej, ani wypisywania wzoru.

0

@bogdans: Tutaj pytałem o programy do tworzenia takich diagramów i sam szukałem, szczerze mówiąc ciężko jest znaleźć coś, co by satysfakcjonowało i nie wymagało wiele nauki (potrzebuję tego tylko tak naprawdę do matury i nie bardzo mam czas nauki wielkich kobył do tworzenia malutkich schematów blokowych). JavaBlock lubi się crashować w pewnych miejscach...

Co rozumiesz poprzez nieskończenie wiele rozwiązań? Posługuję się przykładem rozpisanym w książce Algorytmy Macieja M. Sysło

0

Od końca, jeśli a == b == c == 1, to równanie wygląda tak: x + y = 1 Rozwiązaniami tego równania są pary liczb (1;0), (0;1); (2/3;1/3),... .Ogólnie x może być dowolną liczbą, a y = 1 - x (książki nie mam, opisu algorytmu nie znam).
Twój schemat blokowy niczego nie opisuje - nie ma żadnej wartości. Która ścieżka zostanie wybrana gdy c == 0?

screenshot-20170205152555.png

0

Tutaj inny schemat, teraz lepiej to wygląda?
Proste sortowanie 3 liczb, mniejsza o szczegóły, chodzi mi o czytelność
Sorry za jakość, ale JavaBlock nie pozwala zapisać tego inaczej
screenshot-20170209183038.png
Chyba znalazłem zwycięzcę:

screenshot-20170209192848.png

1 użytkowników online, w tym zalogowanych: 0, gości: 1