Wpis z mikrobloga

Wcześniej wrzuciłem tylko to nad czym zacząłem pracować: http://www.wykop.pl/wpis/17856429/nie-wiem-czy-to-sie-komus-przyda-ale-wrzuce-napisa/
Teraz wrzucam już w pełni funkcjonalną wersję, którą mam jeszcze zamiar rozbudować o nowe funkcje jak rysowanie wykresu danej funkcji, badanie punktów przecięcia różnych funkcji, itp.
Obsługa jest prosta, choć może wydać się dziwna, co wyjaśnię w dalszej części postu. Najpierw należy wcisnąć 7 i podać typ funkcji(1 to funkcja liniowa, 2 to funkcja kwadratowa).
Potem należy podać współczynniki funkcji. Jak wiadomo z lekcji matmy, w przypadku funkcji kwadratowej podajemy współczynniki a, b i c, w przypadku funkcji linowej a i b;
Główne funkcje programu to obliczanie miejsc zerowych danej funkcji oraz delty dla funkcji kwadratowej oraz obliczanie wartości funkcji dla danego argumentu.
Jedne co może ograniczać użycie tego programu, to użycie działanie na ogromnych liczbach(przez wbudowane typy danych).

Oto dodatkowe informacje dla tych bardziej zainteresowanych oraz dla tych co chcą się zająć analizą kodu źródłowego:
1. Świadomie użyłem instrukcji goto jak i nieskończonej pętli "for( ; ; )". Wiem, że nie powinno się jej stosować ze względu na brak czytelności ale w przypadku tego programu ta instrukcja nie utrudni jego analizy a ułatwiła mi pisanie.
2. Każdy wykres jest obiektem klasy "funkcja". Na początek może się to wydać bezsensowne, bo w programie istnieje tylko jedna instancja klasy "funkcja" o nazwie "f" oraz to samo dałoby się zrobić zwykłymi funkcjami ale ja zrobiłem stosowną klasę aby z czasem można było łatwo obsłużyć dużą ilość wykresów(a każdy wykres będzie obiektem) oraz abym mógł łatwo wprowadzić nowe funkcje do programu jak chociażby np. badanie punktów przecięcia wykresów.
3. To co umieściłem w komentarzach jest tylko początkiem prób związanych ze zrobieniem metody do rysowania wykresu. Dlatego też pod numerem 6 znajduje się pozycja "(W trakcie tworzenia)", która nic nie robi.
4. W związku z planami co do rozbudowy programu, program nie pyta się po uruchomieniu o najbardziej podstawowe rzeczy jakimi są współczynniki oraz typ funkcji.

Kod źródłowy: wklej.se/035c
Link do pobrania programu: http://przeklej.org/file/z0SoW2/f.kwadratowa.2.exe
Wołam też wszystkich komentujących poprzedni wpis dostępny w pierwszym podanym linku: @Jurigag: @M4ks: @Existanza: @mikfon: @hesar: @Rzuku: @Golomp: @wytrzzeszcz: @morsisko: @Czarcz:
#programowanie #cpp #naukaprogramowania #inforamtyka #matematyka
  • 18
w c++ można ten program o który prosi @M4ks zapisać jako 1 linijkę kodu używając kilku rzeczy z stla - jak chcesz się poćwiczyć to wykmiń jak to zrobić i wrzuć kod ;)


@GlenPL: a co za roznica skoro dziala?
@amb97: nawet nie będę komentował twojego "świadomego" używania goto...


PS. for(;;) dla niektórych jest czytelniejszy od while(true), a w praktyce są równoważne/identyczne, więc używaj tej wersji, która jest czytelniejsza dla Ciebie.


@GlenPL: ale Ty wiesz, że C++ ignoruje białe znaki w źródle, więc poza include'ami (a Tych nie wywalisz, więc to nie będize 1 linia), wszystko inne możesz sprowadzić do tej samej linii? ( ͡° ͜ʖ ͡
@AferaZaAfera: mówiąc 1 linia mam na myśli logikę programu razem z input/output - jak doliczysz includy, deklarację maina, klamry to wyjdzie kilka linijek więcej ;)

Rozwiązanie jednolinijkowe nadal jest czytelne, chociaż nie jest do końca trywialne