Turbo Pascal
 
Szukanie zaawansowane
   
 
Home Rejestracja FAQ Użytkownicy Grupy Galerie  
 
 


Forum Turbo Pascal Strona Główna Pytania Monopol
Wyświetl posty z ostatnich:   
       
Napisz nowy temat  Odpowiedz do tematu Idź do strony Poprzedni  1, 2, 3  Następny

Nie 17:51, 02 Kwi 2006
Autor Wiadomość
Matylda
Początkujący



Dołączył: 01 Kwi 2006
Posty: 7
Przeczytał: 0 tematów

Ostrzeżeń: 0/3
Skąd: Sejny

Temat postu:

Widzisz, dzięki mnie nie nudzisz się w niedzielę. :D Oczywiście żartuję. Naprawdę wielkie dzięki za pomoc. Swoją drogą podziwiam programistów i informatyków...

Pozdrawiam, Matylda.


Post został pochwalony 0 razy
 
Zobacz profil autora
      Do góry  
Wto 13:50, 04 Kwi 2006
Autor Wiadomość
istredd`
Średnio zaawansowany



Dołączył: 14 Lut 2006
Posty: 37
Przeczytał: 0 tematów

Ostrzeżeń: 0/3
Skąd: Kraków

Temat postu:

Wieczorem spodziewaj się żródeł. Około 22-23 coś napiszę.

Pozdrawiam


Post został pochwalony 0 razy
 
Zobacz profil autora
      Do góry  

Wto 23:33, 04 Kwi 2006
Autor Wiadomość
istredd`
Średnio zaawansowany



Dołączył: 14 Lut 2006
Posty: 37
Przeczytał: 0 tematów

Ostrzeżeń: 0/3
Skąd: Kraków

Temat postu:

Na dzień dzisiejszy program jest bardzo prymitywny:
1. Wypelnia wszystkie pola
2. Tworzy uzytkownikow 2..4
3. Kazdy posiada imie, pieniadze, oraz lokalizacje
4, Zaczyna sie gra, w ktorej jak narazie kazda osoba ma losowana rzutem kostki liczbe pol o jakie sie przesuwa oraz oczywiscie gracz jest przesuwany. Gdy dojdzie do ostatniego pola [39] to zaczyna plansze od nowa [pola 0].

Oto kod:

Kod:
program monopoly;

uses crt; //graph;

type
        pole = record
                panstwo : string[15];
                miasto : string[15];
                wlasciciel : byte;
                domy : byte;
                hipoteka : integer;
        end;

        gracz = record
                imie : string[30];
                kasa : integer;
                lok : byte;
        end;

        pl = array[1..4] of gracz;
        pola = array[0..39] of pole;


function kostka(ktory : integer; var player : pl): integer;
var
        x,y,ile : integer;

begin

        Randomize;
        clrscr;
        for x := 1 to (random(8) + 3) do
                begin
                        Writeln('Losowanie dla gracza ', player[ktory].imie,':');
                        Writeln('     ',random(6) + 1,'      ',random(6) + 1);
                        delay(10 + x*100);
                        clrscr;
                end;
        x := (random(6) + 1);
        y := (random(6) + 1);
        Writeln('Losowanie dla gracza ', player[ktory].imie,':');
        Write('     ',x,'      ',y);
        ile := x + y;
        player[ktory].lok := player[ktory].lok + ile;
        if player[ktory].lok >= 40 then player[ktory].lok := player[ktory].lok - 40;
        kostka := ile;
end;

{function przesun(ile, gracz : byte) : pl;
begin
     przesun[gracz].lok := przesun[gracz].lok + ile;

end; }



function players(var player : pl) : integer;
var
        ile,i : integer;
begin
        repeat
                Write('Podaj ilosc graczy bioracych udzial w grze [2..4] : ');
                Readln(ile);
        until (ile > 1) and (ile < 5);
        Writeln();
        Writeln('Jest, ',ile,' graczy. Teraz kazdy musi podac swoje imie: ');
        Delay(1000);
        Writeln();
        for i := 1 to ile do
                begin
                        Write('Gracz ',i,'. Podaj imie: ');
                        Readln(player[i].imie);
                        player[i].kasa := 10000;
                        player[i].lok := 0;
                end;
        for i := (ile + 1) to 4 do
                player[i].kasa := 0;
        Delay(1000);
        Writeln();
        Writeln('Jest ',ile,' graczy: ');
        for i := 1 to ile do
                Writeln('  -  ',player[i].imie, ' kasa: ', player[i].kasa);
        Writeln('Kazdy gracz otrzymuje 10 000 $');
        Writeln();
        Writeln();
        players := ile;
        readkey;

end;

procedure wyppola(var p : pola);
var
   i : integer;


begin
     for i := 0 to 39 do
         begin
              p[i].wlasciciel := 0;
              p[i].domy := 0;
              p[i].hipoteka := 0;
              str(i,p[i].panstwo);
              str(i,p[i].miasto);
         end;


end;


var
        ile_graczy : integer;
        player : pl;
        pol : pola;
        i : integer;

begin

        ile_graczy := players(player);
        Writeln(ile_graczy);
        wyppola(pol);
        repeat

              for i := 1 to ile_graczy do
                  begin
                       kostka(i,player);
                       Writeln();
                       Writeln();
                       writeln('Gracz ',player[i].imie,' jest na pozycji ', player[i].lok);
//                       player[i].kasa := player[i].kasa - 1000;
                       readkey;
                  end;
              Writeln();
              for i := 1 to ile_graczy do
                  begin
                       Writeln('- Gracz ', player[i].imie, ' posiada ',player[i].kasa,
                       ' i jest na pozycji ',player[i].lok);
                   end;
              readkey;
        until (player[1].kasa <= 0) and (player[2].kasa <= 0) and
        (player[3].kasa <= 0) and (player[4].kasa <= 0);

end.


Post został pochwalony 0 razy
 
Zobacz profil autora
      Do góry  

Pon 12:49, 24 Kwi 2006
Autor Wiadomość
InteriveHasklettor
Początkujący



Dołączył: 23 Kwi 2006
Posty: 5
Przeczytał: 0 tematów

Ostrzeżeń: 0/3
Skąd: Ashburton Grove

Temat postu:

A ja mam takie pytanie. Bo widzisz skopiowałem ten program zapisałem z rozszeżeniem pas i coś nie działa... czemu?? błąd: error 36 expected przy uses... wytłumaczysz mi to?? co zrobić zeby gra działała??

Post został pochwalony 0 razy
 
Zobacz profil autora
      Do góry  

Pon 14:09, 24 Kwi 2006
Autor Wiadomość
rafael
Administrator



Dołączył: 07 Lut 2006
Posty: 72
Przeczytał: 0 tematów

Ostrzeżeń: 0/3
Skąd: Pszczyna

Temat postu:

Wykasuj komentarz "// graph;" (Albo zastosuj komentarz klamrowy { } ). Istredd` pisał o ile się orientuje w free pascalu, może z tąd wynikł ten błąd. W kodzie znajduje się jeszcze jeden błąd, zamiast writeln();, powinno znajdować się writeln;. Program nic nie robi oprócz losowania liczb, o które przesunie się gracz.

Post został pochwalony 0 razy
 
Zobacz profil autora
      Do góry  

Wto 13:38, 25 Kwi 2006
Autor Wiadomość
InteriveHasklettor
Początkujący



Dołączył: 23 Kwi 2006
Posty: 5
Przeczytał: 0 tematów

Ostrzeżeń: 0/3
Skąd: Ashburton Grove

Temat postu:

Jakby sie dluzej zastanowic to chyba jednak chodzi o to ze nie mam biblioteki graph ;/

Post został pochwalony 0 razy
 
Zobacz profil autora
      Do góry  

Wto 13:54, 25 Kwi 2006
Autor Wiadomość
rafael
Administrator



Dołączył: 07 Lut 2006
Posty: 72
Przeczytał: 0 tematów

Ostrzeżeń: 0/3
Skąd: Pszczyna

Temat postu:

Ja mam biblotekę graph, a również wyskakiwał mi błąd. Po drugie słowo graph było w komentarzu, czyli nie było brane pod uwagę przez kompilator.

Post został pochwalony 0 razy
 
Zobacz profil autora
      Do góry  

Wto 17:22, 25 Kwi 2006
Autor Wiadomość
InteriveHasklettor
Początkujący



Dołączył: 23 Kwi 2006
Posty: 5
Przeczytał: 0 tematów

Ostrzeżeń: 0/3
Skąd: Ashburton Grove

Temat postu:

Hmm... to teraz już wiem że w pascalu nie można wstawiać komentarzy? ;/ no bo wiem ze w c++ to jest nawet potrzebne. Ale nie śmiejcie sie. jestem dopiero poczatkujacym programista :/ aa i jak uzyje samej biblioteki crt to bedzie dzialalo??

Post został pochwalony 0 razy
 
Zobacz profil autora
      Do góry  
Napisz nowy temat  Odpowiedz do tematu Idź do strony Poprzedni  1, 2, 3  Następny

 
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach


      Do góry  

Strona 2 z 3
Idź do strony Poprzedni  1, 2, 3  Następny
Skocz do:  
fora.pl - załóż własne forum dyskusyjne za darmo
Powered by phpBB © 2001, 2002 phpBB Group
Avalanche style by What Is Real © 2004
             
Regulamin