Strona 2 z 3 PierwszyPierwszy 123 OstatniOstatni
Pokaż wyniki od 11 do 20 z 22
  1. #11
    Obserwator
    Dołączył
    May 07
    Postów
    7
    Siła Reputacji
    0


    Twoja ocena: Yes No

    Dziki za pomoc ale nie wiem czy sobie z tym poradz poniewa nie braem takich
    rzeczy jakie napisae ale dzikuje.Postaram si to przerobi do moich potrzeb.

    Gdy zmieniem na liczby(musz poda liczb usun i zmieni) to funkcja usu dziaa bez zarzutu ale funkcja do zmieniania gdy podaje licz to przechodzi do menu. Nie wiem dlaczego a powinno wyskoczy okno w ktrym mam wprowadza poprawki. To funkcja moe wiesz gdzie popeniem bd ale wydaje mi sie e jest dobra

    Kod:
    PROCEDURE Zmiany_w_multimediach;
    VAR
        Podany_nr:integer;
    BEGIN
        ClrScr;
      If istnieje_plik('MULTI.DAN') then
     BEGIN
        Textcolor(LightGreen);
        Assign(Okno_pliku,'MULTI.DAN');
        Reset(Okno_pliku);
        Write('Prosze podac Numer multimedi ktorych dane maja byc zmienione: ');
        ReadLN(Podany_nr);
        Seek(Okno_pliku,Podany_nr);
        Read(Okno_pliku,Multimedia);
      end;
        Writeln;
    end;

  2. #12
    Obserwator
    Dołączył
    April 07
    Postów
    336
    Siła Reputacji
    0


    Twoja ocena: Yes No

    Przejrzaem cay Twj program z pierwszego posta i mam kilka uwag:
    1. Czy procedury: Zmiany_w_multimediach i Edycja_jednego_zbioru nie s do siebie bardzo podobne?
    Jedna wyszukuje i wywietla rekordy, a druga ma wyszukiwa i... wywietla rekord, no i jeszcze umoliwia zmiany.
    Zmiany_w_multimediach niestety nie wywietlaj nigdzie wyszukanego rekordu - dlatego wraca do menu.

    2. Obawiam si, e uczyli Ci Turbo Pascala, ale nikt nie nauczy Ciebie pisa programw?
    Nie chc tu aspirowa do miana guru, jednak pozwl, e przedstawi Ci tu moje podejcie do Twojego zadania:

    Jak podae - program ma posiada nastpujce funkcjonalnoci:
    1.zaoenie nowego pliku
    2.przyjmowanie nowego elementu
    3.wywietlenie wszystkich elementw
    4.wywietlenie pojedynczego elementu
    5.zmiany w elemencie
    6.usunicie elementu
    7.sortowanie elementw
    Dla kadej z tych przygotujmy wic osobne funkcje (jak to zacze robi).
    eby wydzieli pewne fragmenty progamu, ktore bedzie mozna wielokrotnie uzywac, przemylmy te:
    ad.1. czy to ma by osobna komenda, czy plik powinien by zaoony automatycznie przy dodawaniu nowego (pierwszego) elementu?
    ad.4. wywietlanie, czyli wypisanie danych. aby wybrac, ktory element - stworzmy osobna funkcje: wyszukaj.
    ad.3. wywietlanie wszystkich el. czyli: wywietl pierwszy, przejd do nastpnego, wywietl, przejd, wywietl... oczywiscie uzyjmy wyswietlania z punktu 4.
    ad.5. i 6. w punkcie 4. powstala juz procedura wyszukiwania, ktora mozna uzyc tutaj.
    ad.7. jak nie wiem, jak cos napisac - szukam w google - jak szukam algorytmow to zaczynam od Wikipedii, np. http://pl.wikipedia.org/wiki/Algorytmy_sortowania

    Nauczyem si te przez te moje lata programowania, e poytecznym moe by takie definiowanie funkcji, eby wszystkie parametry potrzebne do dziaania dostaway jako ich argumenty oraz eby zwracay wynik, a nie modyfikoway jakie zmienne globalne. Takie podejci pomaga, jak chcesz pniej doda nowe funkcjonalnoci.

    Tak wic np. funkcja wyszukujca zadany rekord moga by wyglda tak:
    Kod:
    function szukajMultimedii(tytul: String, plik: String): DANE_MULTIMEDIA
    {funkcja zwraca rekord typu DANE_MULTIMEDIA lub NIL jeeli rekordu nie znaleziono}
      begin
        {po napisaniu dzialajace funkcji juz nas nie interesuje srodek, 
         traktujemy funkcje jak 'czarne pudelko' - cos wchodzi, cos wychodzi,
         juz nie wazne jak to dziala w srodku}
      end;
    wtedy w programie moesz uy:
    Kod:
    Write('Prosze podac tytul poszukiwanych danych multimedialnych : ');
    Readln(Szukany_tytul);
    Multi = szukajMultimedii(Szukany_tytul, 'MULTI.DAN');
    if Multi = NIL then
      wrtieln('Nie ma takiego rekordu')
    else
      wrtieln('Rekord znaleziony');
      wypiszRekord(Multi)
    Troch si rozpisaem
    Jak masz jakie pytania, wal miao - poczytaj sobie troch o sortowaniu, wybierz algorytm i moemy potem obgada... 8)

  3. #13
    Obserwator
    Dołączył
    May 07
    Postów
    7
    Siła Reputacji
    0


    Twoja ocena: Yes No

    Nierozumnie niektórych rzeczy które piszesz ja dopiero mam 1 rok programowanie . Inie uczyłem się niektórych rzeczy które piszesz a te procedury które napisałem wzorowałem się na bazie danych którą robiliśmy na lekcji.A czy te procedury są do siebie podobne??Pewnie tak ale tak robiliśmy na lekcji ja się tylko wzoruje i dopisuje od siebie.Baza danych którą robiliśmy na lekcji jest podobna do mojej i wiej działa wszystko poprawnie tak że zostały mi jeszcze 2 procedury sortowanie i poprawienie zmiany w multimediach.

  4. #14
    Obserwator
    Dołączył
    April 07
    Postów
    336
    Siła Reputacji
    0


    Twoja ocena: Yes No

    OK, nie będę Cię zadręczał tymi dodatkowymi rzeczami. Choć jeśli chcesz być programistą zawodowo, to i tak będziesz się musiał tego kiedyś nauczyć.
    Jeśli wyrazisz zainteresowanie, możemy wrócić do tego tematu później, na spokojnie, bez presji zadania z informatyki.

    Jeśli zaś chodzi o procedury:
    Edycja_jednego_zbioru - wyszukuje zadany tytuł w bazie i wyświetla zawartość takiego wpisu.
    Natomiast Zmiany_w_multimediach - ma zrobić najpierw dokładnie to, co poprzednia procedura, czyli wyszukać zadany tytuł, wyświetlić go, a następnie umożliwić zmiany. Tak więc, żeby nie pisać dwa razy tego samego, możesz użyć kodu z Edycja_jednego_zbioru.

    Osobną sprawą jest, czy po prostu skopiujesz kod z Edycja_jednego_zbioru do Zmiany_w_multimediach i dopiszesz końcówkę, czy też zastosujesz podejście takie:
    Kod:
    procedure Zmiany_w_multimediach;
      begin
        {wyszukaj wpis do zmiany}
        Edycja_jednego_zbioru;
        {teraz w globalnej zmiennej "multimedia" znajduje się jakiś aktualny rekord
         to właśnie jego będziesz zmieniać}
        {tutaj miejsce na kod zmieniający wpis}
      end;
    W takim przypadku dobrze było by zamienić procedurę Edycja_jednego_zbioru na funkcję, która zwraca true/false - czy znalazła szukany rekord (czyli zwraca wartość zmiennej multimedia_jest_w_pliku) i sprawdzać to:
    Kod:
    Zmiany_w_multimediach
      var
        wynik: boolean;
      begin
        wynik = Edycja_jednego_zbioru;
        if (wynik) then
          begin
            {proponuj zmiany wpisu tylko, jesli zostal znaleziony!}
          end;
      end;

  5. #15
    Obserwator
    Dołączył
    May 07
    Postów
    7
    Siła Reputacji
    0


    Twoja ocena: Yes No

    Program ju mi dziaa poprawnie ale mam zrobi ostatnie zadanie czyli sortowanie. Sortowanie ma by alfabetyczne po tytuach a tego nie umie. Robilimy na lekcji za pomoc liczb tylko.Jak by jaka maa pomoc z waszej strony np jaki przykad programu albo co w tym stylu.A jeli chodzi o poprzednie odpowiedzi to funkcja ma wyglda tak:

    Kod:
    PROCEDURE Zmiany_w_multimediach;
      var
        podany_numer:integer;
    Begin
        Clrscr;
      if istnieje_plik('MULTI.DAN') then
     Begin
        Textcolor(LightGreen);
        Assign(Okno_pliku,'MULTI.DAN');
        Reset(Okno_pliku);
        Write('Prosze podac numer multimedi ktorej dane maja byc :');
        Readln(Podany_numer);
        Seek(Okno_pliku,Podany_numer);
    (*$I-*)
        Read(Okno_pliku,Multimedia);
    (*$I+*)
      If ioresult=0 then
     Begin
        Textcolor(40);
        Writeln('Dotychczasowe dane multimedialne');
        Writeln('-----------------------------');
        Writeln;
        Textcolor(lightblue);
        Writeln('Tytul..................................:',+ multimedia.tytul);
        Writeln('Rodzaj danych..........................:',+ multimedia.rodzaj_danych);
        Writeln('Rodzaj nosnika.........................:',+ multimedia.rodzaj_nosnika);
        Writeln('Opis...................................:',+ multimedia.opis);
        Seek(okno_pliku, podany_numer);
        Writeln;
        Textcolor(40);
        Writeln('==============================');
        Writeln;
        Textcolor(lightred);
        Writeln('Nowe dane multimedialne');
        Writeln;
        Textcolor(40);
        Write('Tytul....................................:');
        Readln(multimedia.tytul);
        Write('Rodzaj danych............................:');
        Readln(multimedia.rodzaj_danych);
        Write('Rodzaj nosnika............................:');
        Readln(multimedia.rodzaj_nosnika);
        Write('Opis......................................:');
        Readln(multimedia.opis);
        Write(okno_pliku,multimedia);
        Close(okno_pliku)
     End
      else
     Begin
        Writeln;
        Textcolor(75);
        Writeln('Nie ma w pliku multimedi z takim numerem !'#7);
        Delay(3000)
     End
     End
      Else
        Polecenie;
        Normvideo
     End;

  6. #16
    Obserwator
    Dołączył
    April 07
    Postów
    336
    Siła Reputacji
    0


    Twoja ocena: Yes No

    Musz po wiedzie, e procedura wyglda bardzo adnie

    Co do sortowania:
    Cytat Napisał Bobicz Zobacz post
    Sortowanie ma by alfabetyczne po tytuach a tego nie umie. Robilimy na lekcji za pomoc liczb tylko.
    Jeeli masz program na sortowanie liczb, to w ten sam sposb moesz zrobi sortowanie po tytuach. Cigi tekstowe (stringi) mona porwnywa tak samo jak liczby, np.:
    Kod:
    program test;
    begin
      writeln('Ala=Ala ', 'Ala' = 'Ala');
      writeln('pies<kot ', 'pies' < 'kot');
      if 'zero' > 'jeden' then writeln('0>1 - swiat stanal na glowie') else writeln ('0<1')
    end.
    * szczeglnie podoba mi si ostatni przykad

    Proponuj te zajrze na http://pl.wikipedia.org/wiki/Algorytmy_sortowania gdzie s opisane algorytmy, zwykle take z przykadami w Pascalu.

    Jeli bdziesz potrzebowa wicej pomocy, to zamie, ktrego algorytmu uywasz i/lub jakie kawaki kodu ju masz (choby ten przykad z liczbami).

  7. #17
    Obserwator
    Dołączył
    July 08
    Postów
    2
    Siła Reputacji
    0


    Twoja ocena: Yes No

    Mam pytanie: Jak w końcu zrobić to usuwanie wpisu no i oczywiscie wyświetlenie wszystkich wpisów. Najlepiej prosiłbym o kod bo już nie daje rady...

    Mam nadzieje ze teraz jest barrrrdziej po polskiemu

    Pozdrawiam.

  8. #18
    Obserwator
    Dołączył
    August 08
    Postów
    20
    Siła Reputacji
    0


    Twoja ocena: Yes No

    if Multi = NIL then
    wrtieln('Nie ma takiego rekordu')
    A co to za NIL ??? Moe miao by NULL, czyli jeli Multi jest pusty...
    A NIL to taka rzeka w Afryce :lol:

  9. #19
    Obserwator
    Dołączył
    August 08
    Postów
    20
    Siła Reputacji
    0


    Twoja ocena: Yes No

    Zapomniałem dodać...
    Jest mnóstwo gotowych algorytmów sortowania w sieci.

    Oto przykłady... (nie moje)

    http://edu.i-lo.tarnow.pl/inf/alg/algsort/pages/015.php

    A tu bardziej ogólny link:

    http://edu.i-lo.tarnow.pl/inf/alg/algsort/index.html

    Pomijając pewne błędy w opisie.. (głównie dotyczy to słów opisujących, a nie algorytmów) stronka jest całkiem przyzwoita)
    Nawet dodałem ją do moich zakładek... :brawo:

  10. #20
    Obserwator
    Dołączył
    January 07
    Postów
    493
    Siła Reputacji
    0


    Twoja ocena: Yes No

    Nikt nie pomoże??
    1. Zadałeś pytanie podpinając się pod cudzy temat. Raczej nikt, oprócz Doderica i autora pierwotnego problemu, tu nie zagląda. Twój tekst jest traktowany domyślnie jako uzupełnienie wcześniejszego zagadnienia. Nowy problem = nowy temat

    2. Nie rozumiem Twojego problemu, nawet jakbym chciał, to nie wiem o co Ci chodzi. Załóż własny wątek i postaraj się wyjaśnić to bardziej po polsku..

Informacje o temacie

Users Browsing this Thread

Aktualnie 1 użytkownik(ów) przegląda ten temat. (0 zarejestrowany(ch) oraz 1 gości)

Podobne wątki

  1. bezpieczna baza danych w internecie - jak to zrobić?
    By a-frackowska in forum HTML, XHTML, CSS, JS, AJAX
    Odpowiedzi: 8
    Ostatni post / autor: 07-01-08, 11:29
  2. jak wygląda sieciowa baza danych MS Access?
    By kamilaza in forum HTML, XHTML, CSS, JS, AJAX
    Odpowiedzi: 2
    Ostatni post / autor: 16-05-07, 14:00
  3. Turbo Pascal
    By oktawian in forum Programowanie
    Odpowiedzi: 2
    Ostatni post / autor: 22-04-07, 20:09
  4. Turbo Pascal
    By albert1991 in forum Programowanie
    Odpowiedzi: 9
    Ostatni post / autor: 29-01-07, 00:09
  5. Turbo Pascal
    By Kamilo in forum Programowanie
    Odpowiedzi: 5
    Ostatni post / autor: 12-02-05, 11:36

Zakładki

Zakładki

Uprawnienia

  • Nie możesz zakładać nowych tematów
  • Nie możesz pisać wiadomości
  • Nie możesz dodawać załączników
  • Nie możesz edytować swoich postów
  •  

Jak czytać DI?

Powered by  
ATMAN EcoSerwer