![]() |
nom jak widac nie:P
|
|
dzieki stary juz wszystko wiadomo :)
|
Ilość załączników: 1
Mi działa więc dalej robisz coś źle :P
Widzę wytłumaczyć to mało :( |
wielkie dzieki pomoglo
tylko teraz jak usuwam ostatni rekord to mi caly program wylacza zrobilem kolejne testy lecz gdy usuwam nawet ze srodka jakis rekord to go wylancza tez program jeszcze raz ja poprawilem wszystko juz nie wywala ale pojawil sie taki problem ze gdy mam np.4 rekordy to gdy usuwam 3 to usuwa tez 4 co z tym zrobic??? |
Cisza spokój to przed spaniem poddałem analizie powyższe wypociny mimo późnej godziny.
Drogi wyhylybymy17, na wstępie zapytam się o coś. Czy Ty nie uważasz na lekcjach i potem musisz edukować się w domu czy wzór tego programu podał nauczyciel ? Jeśli to nie Twoja wina to gorzko... Za ten program dostałbyś u mnie dwóję (w liceum/gimnazjum to i tak pozytywna ocena). Nie bierz tego do siebie ale już wyjaśniam... Każdy program, o którym można powiedzieć, że jest "bazodanowy" obojętnie czy operuje na plikach czy na prawdziwej bazie rozróżnia poszczególne wpisy po niepowtarzalnych identyfikatorach w rekordach - u Ciebie ich brak. Zastosowałeś tu substytut w postaci szurania wskaźnikiem, który w prawdzie działa ale to jest po prostu straszne :) Następną straszną rzeczą jest wyświetlanie danych - zastosowałeś tutaj liczbę porządkową co za tym idzie jest ona płynna. Po skasowaniu jakiegoś filmu przed filmem z lp=5 ten film robi się lp=4. Tu znowu daje o sobie znać brak ID bo kasowanie czegoś po zmiennej liczbie porządkowej, która de facto nie ma nic wspólnego z samym zbiorem jest straszne (ponumerować i skatalogować pudełka - rzecz w tym przypadku niemożliwa) :) Kasowanie wpisu przy bazie w pliku tekstowym powinno odbywać się mniej więcej tak: - masz bazę w formacie FILM( ID, tytul, produkcja, czas trwania ) - prosisz usera o podanie ID do skasowania - przepisujesz bazę do pliku tymczasowego z pominięciem tego ID - nadpisujesz plik bazy utworzoną kopią, która nie posiada już tego ID - kasujesz plik tymczasowy LUB usuwasz dany ID logicznie (gdzie STAN=1 to pozycja dostepna, STAN=0 to pozycja skasowana) - masz bazę w formacie FILM( ID, STAN, tytul, produkcja, czas trwania ) - prosisz usera o podanie ID do skasowania - zmieniasz stan na 0 przy pozycji o tym ID co za tym idzie pozycja przestaje się wyświetlać i jest pomijana. Twój program jest napisany całkowicie źle - tyle mojego wykładu. Przejdźmy teraz do poprawy kodu. - zadeklarowałeś dwie rzeczy, których nie używasz - nie jest to błąd ale kompilator ma za zadnie poinformować Cię o tym co też czyni. - program sypał się zawsze na ostatnim rekordzie ponieważ zastosowałeś zły typ pętli co za tym idzie w pewnej chwili program chciał odczytać pustkę, coś czego nie ma bo plik już dawno się skończył. W tym przypadku najpierw wykonujesz operację a warunek sprawdzasz na końcu: Kod:
repeatProgram będzie działać jeśli w procedurze usuń zastosujesz pętlę, która najpierw bada warunek a potem wykonuje operacje tj.: Kod:
while not eof(temp) doNo to tyle, idę spać, popraw te pętle i program będzie działać. :) |
aha, kolego wyhylybymy
Kod źródłowy składa się z części właściwej oraz z komentarzy. Uwierz mi, że nie ma nic gorszego od analizy cudzego kodu bez komentarzy. Można nawet rzec, że kod bez komentarzy jest bezwartościowy, gdyż po czasie nawet sam autor go nie odbuguje, nie mówiąc o innych. W szkole za brak komentów powinieneś dostać bańkę. A co lepsze, prawidłowo komentując kod, można wpaść gdzie porobiło się błędy. Skomentuj ten kod, opisując jego części logiczne, funkcjonalne. I pisz po polsku, pełnymi zdaniami. Albo po angielsku. |
wielkie dzieki ja to musze oddac do godziny 23 w niedziele wiec byl bym bardzo wdzieczny gdybys cos zdzialal w tej sprawie:):)
|
pali no wiesz, żeby tak mnie wkopać ? :)
to nie było niedawno ja w pascalu ze 2 lata nic nie pisałem. Jutro rzucę na to okiem. |
no co? :)
|
:szczerb:
|
dzieki napisalem do Niego ciekawe czy cos odpisze
|
ktoś tu na forum niedawno gorąco zachwalał Pascala.... (Patrix??)
poszukaj kto i napisz do niego PW |
powiem tak szkolne lenistwo to nie bo pisalem ale utknalem w martwym punkcie nie wiem co dalej
oj wiem pascal to przezytek ale coz zrobic w szkole go wymagaja pomozesz???? |
Znowu szkolne lenistwo ;-)?
Ja moze nieco przekornie napisze ze baza danych w Pascalu to jak dokument napisany w Paincie... Da sie, ale... ;-) |
| Wszystkie czasy w strefie CET. Aktualna godzina: 07:24. |
Powered by vBulletin® Version 3.9.0 LTS
Copyright ©2000 - 2026, vBulletin Solutions Inc.