Optymalizacja testu w Pascalu

0

Cześć!

Dostałem polecenie przygotowania jakiegoś testu w pascalu na dni otwarte w swoim liceum i teoretycznie wykonałem taki test, jednak zastanawiam się nad:

  1. jego optymalizacją;
  2. jak zrobić, aby pytania losowały się automatycznie

Program jest w załączniku. Nie chciałem dodawać 360 linijek tekstu do tematu, 'spoiler' nie działał. Będę wdzięczny za każdą pomoc i wszystkie wskazówki, jakie od Was otrzymam.

Jeśli pomyliłem działy, proszę o przeniesienie tematu.

Dzięki za pomoc, pozdrawiam! (:

0

Ten program to jakaś porażka.
Napisz go od nowa, porządnie.
Obiektowo, korzystając z tablic itd.

0

Pytania zapisz w pliku rekordowym, machnij sobie programik do tworzenia takiego pliku i wczytuj do programu.

type
  TQuestion = record
    Question : String[40];
    Answer : Array[0..2] of String[40];
    correct : Byte;
end;
var
  Questions : Array of TQuestion

Da Ci to możliwość zwiększenia ilości pytań do bardzo dużej ilości bez mozolnego klepania kodu. I przy okazji używania pola correct wywalisz 3 procedury sprawdzania czy odpowiedź jest poprawna i zamienisz to na jedną funkcję.

A ja i tak bym to ładnie w klasę obudował.

To tak na szybko co wymyśliłem.

Edit:
i zgadzam się z przedmówcą.

0

Niestety, powiem wam szczerze, że nie przerabiałem jeszcze używania dodatkowych programów w Pascalu, jestem na względnie wczesnym etapie edukacji. Klas także nie przerabiałem, ba!, dopiero pliki zacząłem, więc prosiłbym raczej o jakieś w miarę proste do zrealizowania porady. Zdaję sobie sprawę, iż nie jest to wysoki poziom programowania, jednak, jak już mówiłem, jestem jeszcze na wczesnym etapie edukacji.

Pola correct też nie przerabiałem jeszcze, jednak wydaje mi się, iż możesz mieć rację z tym, iż należałoby zamknąć sprawdzanie poprawności odpowiedzi w funkcji.

0

Czuję się nieco żałosny w związku z tym, co tutaj odwaliłem :P

Jednak dziękuję Wam bardzo za pomoc, a szczególnie Tobie, @babubabu (: Postaram się go jakoś ulepszyć i jutro/pojutrze wstawię go tutaj, aby pokazać Wam kolejną wersję [beta v2?] (:

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