Skocz do zawartości
Forum komputerowe PC Centre

Dudix

Użytkownicy
  • Zawartość

    2
  • Rejestracja

  • Ostatnia wizyta

Reputacja

0 Neutralny

O Dudix

  • Tytuł
    Jestem tu nowy
  1. Up Dzięki ale sortowania dalej nie wiem jak zrobić tak wygląda mój projekt teraz. Muszę jeszcze zrobić obliczanie ale nie wiem jak :/ więc proszę o pomoc z tym sortowaniem chyba sobie odpuszczę program sklep_muzyczny; uses crt; type dane=record nazwa_towaru:string[20]; cena:string[20]; nr:integer; ilosc:string[10]; typ:string[20]; end; var licznik:byte; dane1:dane; plik:file of dane; wybrany_klawisz:char; Procedure wstep; Begin Writeln('*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*'); Writeln('*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*'); Writeln('*-*- -*-*'); Writeln('*-*- Projekt Na Programowanie 2010r -*-*'); Writeln('*-*- Temat Projektu: -*-*'); Writeln('*-*- Napisz program obslugujacy sklep muzyczny -*-*'); Writeln('*-*- -*-*'); writeln('*-*- Created by Dominik -*-*'); Writeln('*-*- -*-*'); Writeln('*-*- Aby kontynuowac nacisnij Dowolny Klawisz -*-*'); Writeln('*-*- -*-*'); Writeln('*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*'); Writeln('*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*'); Repeat until keypressed; End; function istnieje_plik(nazwa_pliku:string):boolean; begin (*$i-*) assign(plik,nazwa_pliku); reset(plik); (*$i+*) if ioresult=0 then begin close(plik); istnieje_plik:=true; end else istnieje_plik:=false; end; procedure tworzenie_nowego_pliku; var nowy_plik:boolean; begin clrscr; nowy_plik:=true; textcolor(yellow); if Istnieje_plik('muzyczny.dan') then begin writeln('Wszystkie dotychczasowe dane zostana usuniete z pliku.'); writeln; repeat write('Wykonywac dalej? (T)ak/(N)ie'); readln(Wybrany_klawisz); until wybrany_klawisz in ['T','t','N','n']; if wybrany_klawisz in['N','n'] then nowy_plik:=false; end; if nowy_plik then begin assign(plik,'muzyczny.dan'); rewrite(plik); close(plik); end; end; procedure wprowadzanie_danych; begin clrscr; writeln('Wprowadzanie danych'); textcolor(yellow); if istnieje_plik('muzyczny.dan') then begin assign(plik,'muzyczny.dan'); reset(plik); seek(plik,filesize(plik)); writeln; writeln('Rezygnacja >>X<<+>>Enter<<'); textcolor(lightblue); repeat writeln; write('Podaj nazwe towaru: '); readln(dane1.nazwa_towaru); if ((dane1.nazwa_towaru<>'X') and (dane1.nazwa_towaru<>'x')) then begin write('Podaj cene towaru:'); readln(dane1.cena); write('Podaj ilo† sprzedanego towaru: '); readln(dane1.ilosc); write('Podaj typ towaru/muzyki: '); readln(dane1.typ); dane1.nr:=filepos(plik); write(plik,dane1); end; until (dane1.nazwa_towaru='X') or (dane1.nazwa_towaru='x'); close(plik); end; end; procedure wypisywanie_danych; begin clrscr; licznik:=0; if istnieje_plik('muzyczny.dan') then begin assign(plik,'muzyczny.dan'); reset(plik); textcolor(white); writeln('-----------------------------------------------------------'); writeln('Nr Nazwa towaru Cena Ilosc'); writeln('-----------------------------------------------------------'); textcolor(yellow); while not eof(plik) do begin licznik:=licznik+1; read(plik,dane1); gotoxy(1,licznik+4); write(dane1.nr); gotoxy(12,licznik+4); write(dane1.nazwa_towaru); gotoxy(37,licznik+4); write(dane1.cena); gotoxy(54,licznik+4); write(dane1.ilosc); if licznik=21 then begin readln; clrscr; licznik:=0; end; end; textcolor(white); gotoxy(1,licznik+6); writeln('***********************************************************'); close(plik); end; end; procedure pojedynczy_towar; var szukany_towar:string[25]; towar_jest_w_pliku:boolean; begin clrscr; if istnieje_plik('muzyczny.dan') then begin towar_jest_w_pliku:=false; write('Prosze podac nazwe poszukiwanego towaru: '); readln(szukany_towar); assign(plik,'muzyczny.dan'); reset(plik); writeln; textcolor(red); if eof(plik) then writeln('W pliku nie ma zadnego zapisu.'); textcolor(white); while not eof(plik) do begin read(plik,dane1); if dane1.nazwa_towaru=szukany_towar then begin writeln('Nazwa towaru....................',dane1.nazwa_towaru); writeln('Cena............................',dane1.cena); writeln('Ilosc sprzedanego towaru........',dane1.ilosc:1); writeln('Nr towaru.......................',dane1.nr); writeln('typ towaru/muzyki...............',dane1.typ); towar_jest_w_pliku:=true; end; end; if not towar_jest_w_pliku then writeln('Szukany towar nie znajduje sie w spisie!!!'); close(plik); end; end; procedure usuwanie_towaru; var okno_tymczasowe:file of dane; usuwany_numer:integer; begin writeln; if istnieje_plik('muzyczny.dan') then begin assign(plik,'muzyczny.dane'); reset(plik); textcolor(lightRed); writeln('Prosze podac numer usuwanego towaru: '); readln(usuwany_numer); assign(okno_tymczasowe,'czasowe.dan'); rewrite(okno_tymczasowe); while not eof(plik) do begin read(plik,dane1); if (dane1.nr)<>usuwany_numer then begin dane1.nr:=filepos(okno_tymczasowe); write(okno_tymczasowe,dane1); end; end; close(plik); close(okno_tymczasowe); erase(plik); rename(okno_tymczasowe,'muzyczny.dan'); end; end; procedure zmiany; var podany_numer:integer; begin clrscr; if istnieje_plik('muzyczny.dan') then begin textcolor(lightgreen); assign(plik,'muzyczny.dan'); reset(plik); write('Prosze podac numer towaru, ktorego dane maja byc zmienione.'); readln(podany_numer); seek(plik,podany_numer); (*$I-*) read(plik,dane1); (*$I+*) if ioresult=0 then begin textcolor(white); writeln; writeln('dotychczasowe dane sprzedazy'); writeln('-----------------------------------------------------------'); writeln; textcolor(yellow); writeln('Nazwa towaru...............:',+dane1.nazwa_towaru); writeln('Cena towaru................:',+dane1.cena); writeln('Ilosc sprzedanego towaru...:',+dane1.ilosc); writeln('Typ towaru/muzyki..........:',+dane1.typ); seek(plik,podany_numer); writeln; textcolor(white); writeln('-----------------------------------------------------------'); writeln; textcolor(lightred); writeln('Nowe dane sprzedanych towarow'); writeln('-----------------------------------------------------------'); writeln; textcolor(white); write('Nazwa towaru...........:'); readln(dane1.nazwa_towaru); write('Cena towaru............:'); readln(dane1.cena); write('Ilosc..................:'); readln(dane1.ilosc); write('Typ towaru/muzyki......:'); readln(dane1.typ); write(plik,dane1); close(plik); end; end; end; procedure koniec; begin halt; end; function menu:char; var znak:char; Tak_Nie:char; begin write('Dane'); repeat clrscr; writeln('Wybierz'); writeln('1-Tworzenie nowego pliku'); writeln('2-Wprowadzanie danych'); writeln('3-Wypisz wszystkie dane'); writeln('4-Wskaz pojedynczy towar'); writeln('5-Usuniecie wskazanego towaru'); writeln('6-Zmiany danych sprzedazy'); writeln('0-Koniec'); readln(znak); case znak of '1':tworzenie_nowego_pliku; '2':wprowadzanie_danych; '3':wypisywanie_danych; '4':pojedynczy_towar; '5':usuwanie_towaru; '6':zmiany; '0':koniec; end; writeln('Czy chesz wykonac kolejna czynnosc? (T)ak'); Tak_Nie:=Upcase(readkey); until not(Tak_Nie='T'); end; begin clrscr; textcolor(lightgreen); wstep; menu; end.
  2. Witam na ostatniej lekcji programowania dostałem projekt do zrobienia, od razu pisze nie chodzi mi o to żeby ktoś zrobił mi cały projekt po prostu potrzebuję pomocy z kilkoma procedurami. Temat projektu jest następujący Napisz program obsługujący sklep muzyczny. Program ma umożliwiać a)założenie nowego pliku (to już mam zrobione) b)Przyjmowanie danych do bazy (tutaj proszę o pomoc ponieważ nie wiem jakie dane mam wprowadzać) c)wyświetlanie wszystkich danych (z tym problemu nie będę miał) d)wyświetlanie pojedyńczego wskazanego rekordu (myślę że z tym problemów tez nie będę miał) e)możliwość wykonywania zmian w danym rekordzie ( to zrobię) f)usuwanie rekordu z pliku (to też zrobię) g)sortowanie rekordów (wogle nie mam pojęcia jak to zrobić) h) Wykonywanie obliczeń liczbowych z polami w rekordach (nie mam zielonego pojęcia jak to zrobić ale chyba chodzi o to żeby mi np liczył ile zarobiłem w danym dniu czy coś takiego) Każdy podpunkt to inna procedura więc prosiłbym o pomoc w zrobieniu procedury "b" , "g" , "h" z góry dziękuję
×
×
  • Dodaj nową pozycję...