Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Zadatak u Turbo Pascalu, pomoć!!!

[es] :: Pascal / Delphi / Kylix :: Zadatak u Turbo Pascalu, pomoć!!!

Strane: 1 2 3 4

[ Pregleda: 9556 | Odgovora: 72 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Eugen Reisen

Član broj: 54093
Poruke: 40
*.cmu.carnet.hr.



Profil

icon Zadatak u Turbo Pascalu, pomoć!!!03.04.2005. u 07:58 - pre 213 meseci
Oprostite, ako mislite da ovo nije u skladu s pravilnikom, ali ako imate malo volje i vremena, pomoć!!!
Bi mi tko mogao pomoći napraviti jedan program u Turbo Pascalu. Trebao bih napraviti jedan kvizic milijaner, ako bi mi tko htio pomoći ovo napraviti bio bih jako zahvalan. (kviz sa više razina). U kviz ne moram staviti npr. Baš sve kako je u milijaneru. Naprimjer ne moram staviti u program baš kako je u milijaneru(kako u njemu postoji poziv u pomoć, prepoloviti tako da ostanu samo dva ….) već može biti i neka druga pomoć(da nebude komplicirano). Trebalo bi to izvesti da program ne bude previše kompliciran(ali da bude što bolji). Trebalo bi izračunati koliko si novaca dobio i tako. Da bude sličan Kvizicu milijaneru, ali se neke komplicirane stvari mogu i izbaciti.
PLEASE, POMOĆ!!!!!!!


[Ovu poruku je menjao Eugen Reisen dana 12.04.2005. u 09:41 GMT+1]
 
Odgovor na temu

Eugen Reisen

Član broj: 54093
Poruke: 40
*.cmu.carnet.hr.



Profil

icon Re: Zadatak u Turbo Pascalu, pomoć!!!03.04.2005. u 21:18 - pre 212 meseci
Please jel bi mi tko mogao pomoći, bio bih jako zahvalan???
 
Odgovor na temu

smfilip
Beograd

Član broj: 12580
Poruke: 1630



+4 Profil

icon Re: Zadatak u Turbo Pascalu, pomoć!!!03.04.2005. u 21:21 - pre 212 meseci
a sta ce ti takvo nesto? ne vidim svrhu pravljenja toga,stavise,cisto gubljenje vremena,osim ako nemas neki dobar razlog...

EDIT: Pa vec si jednom dobio kod?! zasto trazis ponovo isto!

[Ovu poruku je menjao smfilip dana 03.04.2005. u 22:24 GMT+1]
 
Odgovor na temu

Eugen Reisen

Član broj: 54093
Poruke: 40
*.cmu.carnet.hr.



Profil

icon Re: Zadatak u Turbo Pascalu, pomoć!!!03.04.2005. u 21:24 - pre 212 meseci
Joj da znaš kak mi taj program treba, ako ga znaš, please pomoć!!!
 
Odgovor na temu

Eugen Reisen

Član broj: 54093
Poruke: 40
*.cmu.carnet.hr.



Profil

icon Re: Zadatak u Turbo Pascalu, pomoć!!!03.04.2005. u 21:26 - pre 212 meseci
Zbog toga jer onaj program previše odstupa od zadatka, sada sam bio malo konkretniji.
Please pomoć!!!
 
Odgovor na temu

Srki_82
Srdjan Tot
Me @ My Home
Ljubljana

Član broj: 28226
Poruke: 1403
82.208.201.*

ICQ: 246436949


+10 Profil

icon Re: Zadatak u Turbo Pascalu, pomoć!!!04.04.2005. u 00:58 - pre 212 meseci
Takav program je vrlo lako napraviti. Vise ces se zezati da napravis da sve izgleda lepo (da ispisujes sve na pravom mestu, da koristis lepe boje i slicno) nego sto ces pisati kod. Sve u svemu ovako bi bisao kod:

1. Napravis fajl sa pitanjima (6 redova za svako pitanje, 1. red je pitanje, od 2. do 5. reda su ponudjena pitanja, a 6. red je redni broj tacnog odgovora, ali uvek mozes smisliti i neki bolji nacin zapisivanja... meni ovaj izgleda nekako najlaksi)
2. Na pocetku programa ucitas ovaj fajl u niz recorda (Jedan record sadrzi 5 stringa u kojima su pitanje i odgovori, i jedan integer koji sadrzi tacan odgovor)
3. Ucitana su pitanja, znas koliko ih ima i ulazis u repeat ili neku drugu petlju koja ce se ponavljati sve dok igrac ne stigne do zadnjeg pitanja ili dok ne pogresi
4. Unutar petlje ispisujes prvo pitanje i ponudjene odgovore
5. Igrac izabira jedan od odgovora
6. Ako je pogodio dodaje mu se neka suma i ide dalje, ako je promasio ili stigao do kraja ispisuje se poruka i izlaz iz programa ili nesto slicno
7. Kraj repeat ili neke druge petlje... uzima se sledeci pitanje i petlja moze da se vrti dalje

To ti je ceo program... mozes da ga napises za 20 minuta... mozda i manje :)
 
Odgovor na temu

Srki_82
Srdjan Tot
Me @ My Home
Ljubljana

Član broj: 28226
Poruke: 1403
*.smin.sezampro.yu.

ICQ: 246436949


+10 Profil

icon Re: Zadatak u Turbo Pascalu, pomoć!!!04.04.2005. u 16:09 - pre 212 meseci
Reci sta ti nije jasno pa cemo ti pomoci. Tesko da ces naci nekog ko ce sesti i napisati ti kod za koji ces ti posle preuzeti zasluge ma kako male one bile. Pocni sam da kuckas pa kad negde zaglavis dodji ovde i pitaj npr. kako se brise ekran, kako da otvorim fajl i procitam string iz njega i slicno. Tako ces pre zavrsiti program, a i naucices nesto novo.
 
Odgovor na temu

peromalosutra
Ivan Rajkovic
Software engineer
Luxoft
Berlin

Član broj: 54774
Poruke: 854
*.dialup.blic.net.



+144 Profil

icon Re: Zadatak u Turbo Pascalu, pomoć!!!08.04.2005. u 20:43 - pre 212 meseci
Ja sam prije radio nesto slicno (ali sam formatirao disk i nisam ga sacuvao) i tvoj kviz ne bi trebao da bude problem.
Napises jednu proceduru koja ce da provjerava odgovore na pitanja koja izgleda otprilike ovako:

Procedure provjera;
Begin
Readln (odgovor);
If odgovor=tacanodg
then
begin
writeln ('Tacan odgovor.');
brtacnih:=brtacnih+1;
end
else
Begin
Writeln ('Pogresan odgovor, tacan odgovor je ',tacanodg,'.');
brnetacnih:=brnetacnih+1;
zivot:=zivot-1;
end;
readln;
end;

a zatim napises svako pitanje kao proceduru kao sto je to predlozio Srki_82.
U toj proceduri treba da je definisan i tacan odgovor. Ako je odgovor na pitanje pogresan igrac gubi zivot, ali umjesto zivot:=zivot-1; mozes staviti, na primjer,
kraj:=true.
U tom slucaju u glavnom programu stavis naredbu repeat, a zatim proceduru koja bira pitanje pomocu
Randomize;
pitanje:=random (broj_pitanja);
a repeat petlja da se zavrsava sa
until kraj=true;

To je samo gruba slika, ali nadam se da ce ti pomoci.


 
Odgovor na temu

Srki_82
Srdjan Tot
Me @ My Home
Ljubljana

Član broj: 28226
Poruke: 1403
82.208.201.*

ICQ: 246436949


+10 Profil

icon Re: Zadatak u Turbo Pascalu, pomoć!!!08.04.2005. u 22:51 - pre 212 meseci
Eto... decko koji je tek poceo s programiranjem i pascal-om je sve shvatio... ako se samo malo potrudis Eugen Reisen-e i napravis bar nesto sto lici na Milionera, odvojicu 20-ak minuta i napraviti kviz (tebi ce ostati samo da napises pitanja) kao Milioner. Imaces sve... pitanja, pomoc publike, pomoc prijatelja i 50:50 pomoc. Samo nemoj da mi prepises kodove koje su ti do sad dali... probaj da uradis nesto sa fajlovima u kojima se nalaze pitanja.
Za kad ti je trebao ovaj zadatak?
 
Odgovor na temu

Eugen Reisen

Član broj: 54093
Poruke: 40
*.cmu.carnet.hr.



Profil

icon Re: Zadatak u Turbo Pascalu, pomoć!!!09.04.2005. u 17:12 - pre 212 meseci
OK, učinit ću što kažeš.
Trebao bi mi do ponedjeljka.
 
Odgovor na temu

Eugen Reisen

Član broj: 54093
Poruke: 40
*.cmu.carnet.hr.



Profil

icon Re: Zadatak u Turbo Pascalu, pomoć!!!09.04.2005. u 19:01 - pre 212 meseci
Nešto sam pokušavao ali jednostavno ne znam kako da to učinim ono s filom kao što si napisao. A bez toga je neke stvari u programu nemoguce učiniti.

Program milioner;
Var b:text;
c:integer;
suma: integer;
Procedure krivo;
Begin
Writeln (' zao mi je doviĐenja');
End;
Begin

Assign(b,'doc.dat');
Rewrite(b);
Writeln('1. pitanje: ');
Writeln(' Dali je ovaj zadatak tezak? ');
Writeln(' 1) Ne ');
Writeln(' 2) Uz pomoc mozda ne ');
Writeln(' 3) Da ');
Writeln(' 4) Da svakako ');
Readln(c);
If c=1 Then Writeln(' Pogresan odgovor ');
If c=3 Then Writeln(' Pogresan odgovor ');
If c=4 Then Writeln(' Pogresan odgovor ');
If c=2 Then Writeln (' Uspjesno ste odgovorili na pitanje za 100kn ');
Readln;
if c=2 Then
Begin
Writeln('2. pitanje: ');
Writeln(' Sto je povjest ');
Writeln(' 1) Znanost o biljkama ');
Writeln(' 2) Znanost koja prouźava prirodu ');
Writeln(' 3) Znanost koja je usmjerena na proslost ');
Writeln(' 4) Znanost o źovjeku ');
Readln(c);
If c=1 Then Writeln(' Pogresan odgovor ');
If c=3 Then Writeln(' Pogresan odgovor ');
If c=3 Then Writeln(' Uspjesno ste odgovorili na pitanje za 200 kn ');
If c=4 Then Writeln(' Pogresan odgovor ');
End else krivo;
Writeln(' Osvojili ste ' , suma)
Writeln(' Trenutno imate 200 kuna');
Readln;
End.

A tvoj dio obećanja...








 
Odgovor na temu

Eugen Reisen

Član broj: 54093
Poruke: 40
*.cmu.carnet.hr.



Profil

icon Re: Zadatak u Turbo Pascalu, pomoć!!!09.04.2005. u 23:04 - pre 212 meseci
Please , pomozite mi!!!?
 
Odgovor na temu

Srki_82
Srdjan Tot
Me @ My Home
Ljubljana

Član broj: 28226
Poruke: 1403
82.208.201.*

ICQ: 246436949


+10 Profil

icon Re: Zadatak u Turbo Pascalu, pomoć!!!10.04.2005. u 01:51 - pre 212 meseci
Bas si se potrudio
Ok... posto nemam TP napisacu ti program u Delphi-u... koristicu obicnu console aplikaciju pa ce verovatno samo neke sitne izmene biti potrebne ako uopste i bude bilo potrebe za izmenama... napisacu ti programcic u nedelju poslepodne.
 
Odgovor na temu

Toyo

Član broj: 45193
Poruke: 227
*.kovnet.co.yu.



+1 Profil

icon Re: Zadatak u Turbo Pascalu, pomoć!!!10.04.2005. u 02:32 - pre 212 meseci
He he.

Sve sto si video u prethodna 3 dana na forumu si sipao u jedan lonac, promuckao i.... mislio da ce da proradi :)

Ima tu svacega, i sume koje se nikada ne inicijalizuju, vec samo ispisuju, i otvaranje datoteke koja nicemu ne sluzi, procedura koja ima jednu liniju i koristi se samo jednom....ma cudo od programa!
 
Odgovor na temu

Srki_82
Srdjan Tot
Me @ My Home
Ljubljana

Član broj: 28226
Poruke: 1403
82.208.201.*

ICQ: 246436949


+10 Profil

icon Re: Zadatak u Turbo Pascalu, pomoć!!!10.04.2005. u 02:41 - pre 212 meseci
Pa... videcu da ubacim sveeee sto mi padne na pamet pa ako ne nauci kako sta i zbog cega radi tesko da ce odbraniti rad... ili ga bar malo sam osakatiti da bude losiji :)
Sta bih mogao sve da dodam?
 
Odgovor na temu

Eugen Reisen

Član broj: 54093
Poruke: 40
*.cmu.carnet.hr.



Profil

icon Re: Zadatak u Turbo Pascalu, pomoć!!!10.04.2005. u 08:20 - pre 212 meseci
Ja ti učim T. Pascal tek odnedavno, pa zbog mi je i potrebna pomoć.
Pa u program bi trebalo biti uključeno ono što sam na početku napisao, pomoć...
Unaprijed hvala!!!




 
Odgovor na temu

Eugen Reisen

Član broj: 54093
Poruke: 40
*.cmu.carnet.hr.



Profil

icon Re: Zadatak u Turbo Pascalu, pomoć!!!10.04.2005. u 08:22 - pre 212 meseci
Ne moraš se toliko truditi na estetiku, ja ću ga osuti bojama i dr.
 
Odgovor na temu

Srki_82
Srdjan Tot
Me @ My Home
Ljubljana

Član broj: 28226
Poruke: 1403
82.208.201.*

ICQ: 246436949


+10 Profil

icon Re: Zadatak u Turbo Pascalu, pomoć!!!10.04.2005. u 16:56 - pre 212 meseci
Posto Delphi nema ReadKey, ClrScr i slicne funkcije pisem ti ovaj kod iz glave ovde na forumu pa ce 100% biti nekih gresaka, ali ces to lako ispraviti.
Code:
program Milioner;

uses
  Crt, Dos;

const
  MaxBrojPitanja = 100;
  PocetnaSuma = 100;
  TacanOdgovorBonus = 2;
  BrojPitanja = 20;

type
  TPitanje = record
    Pitanje: String;
    Odgovori: array [1..4] of String;
    TacanOdgovor: Byte;
    Tezina: Byte;
  end;

var
  Pitanja: array [0.. MaxBrojPitanja - 1] of TPitanje;
  PitanjaFajl: Text;
  Suma: Real;
  BrojUcitanihPitanja: Integer;
  BrojPitanjaZaKviz: Integer;
  TrenutnoPitanje: Byte;
  Kraj: Boolean;
  Pitanje: TPitanje;
  Pogresno: Boolean;
  PolaPola, Prijatelj, Publika: Boolean;
  Odgovor: Integer;

function IzaberiPitanje(RB: Integer): TPitanje;
begin
  Result := Pitanja[Random(MaxBrojPitanja)];
  {Prilikom biranja pitanja trebalo bi dodati jos i proveru
  da li je to pitanje vec izvuceno i na tezinu pitanja
  u odnosu na redni broj... bilo bi glupo da prvo pitanje
  bude teze od zadnjeg, zar ne?}
end;

function Ulaz(C: Char): Boolean;
var
  Code: Integer;
begin
  Result := False;
  Case C of
    '1'..'4':
    begin
      Val(C, Odgovor, Code);
      Result := True;
    end;
    '5': if PolaPola then PomocPP;
    '6': if Prijatelj then PomocPr;
    '7': if Publika then PomocPu;
    '0': Halt(0);
  end;
end;

procedure PomocPP;
var P1, P2: Byte;
begin
  P1 = Pitanje.TacanOdgovor;
  while P1 = Pitanje.TacanOdgovor do P1 := Random(4) + 1;
  P2 := P1;
  while (P2 = Pitanje.TacanOdgovor) or (P2 = P1) do P2 := Random(4) + 1;
  WriteLn(' Odgovori pod ', P1, ' i ', P2, ' su pogresni';
end;

procedure PomocPr;
begin
  WriteLn(' Mislim da je tacan odgovor pod ', Random(4) + 1);
  {Prijatelj samo lupa... trebalo bi napraviti da ima vece
  sanse da kaze tacan odgovor u pocetku, a kasnije sve manje}
end;

procedure PomocPu;
var
  P1, P2, P3, P4: Integer;
begin
  P1 := Random(101);
  P2 := Random(101 - P1);
  P3 := Random(101 - P1 - P2);
  P4 := Random(101 - P1 - P2 - P3);
  WriteLn(' 1. ', P1, '%');
  WriteLn(' 2. ', P1, '%');
  WriteLn(' 3. ', P1, '%');
  WriteLn(' 4. ', P1, '%');
end;

begin
  ClrScr;
  Randomize;
  WriteLn('Milioner 1.0');
  WriteLn;
  WriteLn('Molim Vas sacekajte dok se pitanja ucitaju.');
  BrojUcitanihPitanje := 0;
  {$I-}
  Assign(PitanjaFajl, 'Pitanja.cfg');
  Reset(PitanjaFajl);
  while (not Eof(PitanjaFajl)) and (BrojUcitanihPitanja <= MaxBrojPitanja) do
  begin
    Inc(BrojUcitanihPitanja);
    ReadLn(PitanjaFajl, Pitanja[BrojUcitanihPitanja].Pitanje);
    ReadLn(PitanjaFajl, Pitanja[BrojUcitanihPitanja].Odgovori[1]);
    ReadLn(PitanjaFajl, Pitanja[BrojUcitanihPitanja].Odgovori[2]);
    ReadLn(PitanjaFajl, Pitanja[BrojUcitanihPitanja].Odgovori[3]);
    ReadLn(PitanjaFajl, Pitanja[BrojUcitanihPitanja].Odgovori[4]);
    ReadLn(PitanjaFajl, Pitanja[BrojUcitanihPitanja].TacanOdgovor);
    ReadLn(PitanjaFajl, Pitanja[BrojUcitanihPitanja].Tezina);
  end;
  Close(PitanjaFajl);
  {$I+}
  IOResult;
  if BrojUcitanihPitanja < BrojPitanja then
    BrojPitanjaZaKviz := BrojUcitanihPitanja
  else
    BrojPitanjaZaKviz := BrojPitanja;
  Repeat
    WriteLn(' Dobrodosli u kviz Milioner!!!');
    WriteLn;
    Kraj := False;
    Suma := 0;
    TrenutnoPitanje := 1;
    Pogresno := False;
    PolaPola := True;
    Prijatelj := True;
    Publika := True;

    while (TrenutnoPitanje <= BrojPitanjaZaKviz) and
      (not Pogresno) do
    begin

      Pitanje := IzaberiPitanje(TrenutnoPitanje);
      Inc(TrenutnoPitanje);

      WriteLn(Pitanje.Pitanje);
      WriteLn('1. ', Pitanje.Odgovori[1]);
      WriteLn('2. ', Pitanje.Odgovori[2]);
      WriteLn('3. ', Pitanje.Odgovori[3]);
      WriteLn('4. ', Pitanje.Odgovori[4]);

      if PolaPola then
        WriteLn('5. Pola-pola');
      if Prijatelj then
        WriteLn('6. Prijatelj');
      if Publika then
        WriteLn('7. Publika');
      WriteLn('0. Izlaz');

      Repeat Until Ulaz(ReadKey);

      if Odgovor = Pitanje.TacanOdgovor then
      begin
        WriteLn('Tacno!!!');
        if Suma = 0 then
          Suma := PocetnaSuma
        else
          Suma := Suma * TacanOdgovorBonus;
        WriteLn('Sada imate ', Suma:0:2, ' din.');
      end
      else
      begin
        WriteLn('Pogresno!!!');
        Pogresno := True;
        WriteLn('Osvojili ste ', Suma:0:2, ' din.');
      end;
    end;

    WriteLn('Da li zelite da izadjete?');
    if UpCase(ReadKey) = 'D' then Kraj := True;
  Until Kraj;
end.

Eto... sad ga samo sredi, ispravi greske, dodaj sta ti treba, oduzmi sta ne treba... format fajla u kojem su pitanja provali sam... to je bar lako
 
Odgovor na temu

Eugen Reisen

Član broj: 54093
Poruke: 40
*.cmu.carnet.hr.



Profil

icon Re: Zadatak u Turbo Pascalu, pomoć!!!10.04.2005. u 18:14 - pre 212 meseci
Ok, zbilja puno hvala, sad ću da ga prostudiram.
Ako neke ne budem kužil budem te pital
thanx!!!
 
Odgovor na temu

Eugen Reisen

Član broj: 54093
Poruke: 40
*.cmu.carnet.hr.



Profil

icon Re: Zadatak u Turbo Pascalu, pomoć!!!10.04.2005. u 19:39 - pre 212 meseci
Nemogu da shvatim zašto mi kompajler neprestano javlja gresku u ovom djelu:

function IzaberiPitanje(RB: Integer): TPitanje; - kaze: Invalid function result type
begin
Result := Pitanja[Random(MaxBrojPitanja)]; - te da ne prepoznaje result
{Prilikom biranja pitanja trebalo bi dodati jos i proveru
da li je to pitanje vec izvuceno i na tezinu pitanja
u odnosu na redni broj... bilo bi glupo da prvo pitanje
bude teze od zadnjeg, zar ne?}
end;

Sta mislis kako bi se ovo moglo ispraviti???
 
Odgovor na temu

[es] :: Pascal / Delphi / Kylix :: Zadatak u Turbo Pascalu, pomoć!!!

Strane: 1 2 3 4

[ Pregleda: 9556 | Odgovora: 72 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.