Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 28 odgovora
  • 7.774 pregleda

Najnovija ↓

Pomoć, dorada programa u Turbo Pascalu!!! 14.04.2005. u 21:03 · pre 262 meseca #1
El bi možda tko htio napraviti samo malu izmjenu u programu da ona pitanja koja su već bila u kvizu da se ponavljaju već da se provjeri koje je pitanje već bilo u kvizu jer bilo bi glupo vidjeti dva puta jedno te isto pitanje.
Please!!!!

Program milijunas;
(********************************
*** Lijepo je biti milijunas ***
********************************)

USES crt;

TYPE
pitanje = record
pit:String;
o1,o2,o3,o4,tac:String[50];
end;

VAR f: Text;
pitanja:array[1..50] of Pitanje;
op, err, od,pit,i,odg:integer;
zarada, kuna: longint;
idemo, prekid, bilopola, sveznalica,krivo:Boolean;

begin
clrscr;
assign(f,'pitanja.txt');
reset(f);
if ioresult = 0 then
begin
i := 1;
while not eof(f) do
begin
readln(f,pitanja.pit);
readln(f,pitanja.o1);
readln(f,pitanja.o2);
readln(f,pitanja.o3);
readln(f,pitanja.o4);
readln(f,pitanja.tac);
if not eof(f) then
inc(i);
end;
Textcolor(Lightred);
close(f);
Writeln(' ***********************************************************');
Writeln(' *********** D O B R O D O S L I U K V I Z ************');
Writeln(' ****** T K O Z E L I B I T I M I L I J U N A S ******');
Writeln;
Textcolor(yellow);
Writeln;
Gotoxy (29,18);
Writeln('Autor: Marko Lukanec, ');
Gotoxy (29,19);
Writeln(' 3.a razred');
Gotoxy (48,8);
Textcolor(lightblue);
writeln('Br. ucitanih pitanja=',i);
Gotoxy (26,21);
Textcolor(yellow);
Writeln('Za nastavak pritisnite enter');
Readln;
Clrscr;
idemo := true;
prekid := false;
bilopola:=false;
kuna := 100;
zarada := 0;
randomize;
while idemo and not prekid do
begin
Clrscr;
Textcolor(Lightred);
Writeln('>>>>>*********** T K O Z E L I B I T I M I L I J U N A S ***********<<<<<');
Writeln;
Textcolor(green);
writeln('Pitanje za ',kuna,' kuna');
Writeln;
Textcolor(yellow);
pit := random(i)+1;
writeln('Pitanje: ',pitanja[pit].pit);
writeln(' 1)',pitanja[pit].o1);
writeln(' 2)',pitanja[pit].o2);
writeln(' 3)',pitanja[pit].o3);
writeln(' 4)',pitanja[pit].o4);
writeln;
writeln(' Molimo vas izaberite jedan od cetiri ponudena odgovora');
Writeln(' Ako se dvoumite ili neznate odgovor na ovo pitanje');
Writeln(' Uzmite jocker');
Writeln(' Za Pola pola birajte 0 ');
Writeln(' Za Sveznalicu birajte 5');
Writeln(' A za sto je krivo birajte 6');
Writeln(' Ako zelite odustati birajte 999 ');
Textcolor(Lightred);
Write (' Vi birate => ');
Textcolor(lightblue);
readln(od);
val(pitanja[pit].tac, op, err);
If od=5 then
if not sveznalica then
begin
sveznalica := true;
Textcolor(lightred);
writeln('Sveznalica razmiçlja, pa kaze: ');
writeln(' Tocan odgovor je ',op);
Writeln('Da li vjerujes sveznalici? Ili †eç radije odustati?');
Writeln('Ja: Naravno da vjerujem sveznalici kad ona zna odgovore na sva ova pitanja');
Writeln('Sveznalica: No, sto cekas pritisni vec jednom broj ',op);
Write(' Ja: ');
Readln(Od);
end
else
begin
Textcolor(yellow);
writeln('Ja:Sveznalico, pomozi mi!');
Writeln('Sveznalica: Sta mislis da ti budem na sva pitanja odgovarala?!!!');
Writeln(' Ako znaç izaberi odgovor ako ne odustani i pokupi pare');
Write ('Vi birate => ');
readln(od);
end;
If od=6 then
if not krivo then
begin
krivo := true;
Textcolor(lightred);
writeln(' Ja: Koji je od ovih ponudenih odgovora krivi??? ');
writeln(' Znanje: Od ovih ponudenih odgovora');
Writeln(' kriv je sigurno odgovor');
Writeln(' pod brojem ', ((op+2) mod 4) +1);
Writeln(' Znanje:Da li ti je sada lakse??? Ako je, izaberi odgovor, ');
Writeln(' ako nije mozes jos uzeti neku pomoc ako ju imas.');
Writeln(' A naravno da mozes i odustati ako zelis');
Write(' Ja: ');
Readln(Od);
end
else
begin
Textcolor(yellow);
writeln(' Ja: Znanje, pomozi mi!');
Writeln('Znanje: Sta mislis da ti budem stalno pomagala?!!!');
Writeln(' Ako znaç izaberi odgovor ako ne odustani i pokupi pare');
Write ('Vi birate => ');
readln(od);
end;
if od=0 then
if not bilopola then
begin
bilopola := true;
writeln('Odgovor je pod brojem ', op, ' ili pod brojem ', ((op+2) mod 4) +1);
Writeln(' Ako niste sigurni mo§ete i odustati ako zelite (999)');
Write(' Vaç odgovor: ');
Readln(Od);
end
else
begin
Textcolor(yellow);
writeln('Pola pola ste iskoristili');
writeln(' izaberite odgovor ili mo§ete odustati');
Write ('Vi birate => ');
readln(od);
end;
if od=999 then
prekid := true
else
if op=od then
begin
zarada := kuna;
Writeln('Uspjesno ste odgovorili na pitanje za ',kuna,' kuna');
Writeln('¬estitam!!!');
Readln;
If zarada=1638400 then
Begin
PREKID:=TRUE;
Clrscr;
Textcolor(yellow);
Writeln(' ***************************************************************');
Writeln(' ******************* C E S T I T A M ********************');
WRITELN(' *********** O S V O J I L I S T E N A J V E C I ***********');
Writeln(' ********************* D O B I T A K *********************');
WRITELN(' ******** 1 6 3 8 4 0 0 K U N A ********');
End;
Writeln;
kuna := kuna *2;
end
else
idemo := false;
end;
writeln;
writeln;
If idemo=false then
Writeln('Zao mi je pogresno ste odgovorili na ovo pitanje');
if not prekid then
Begin
if kuna<12800 then
zarada :=0
else zarada:=12800;
End;
Writeln('Hvala vam sto ste sudjelovali u kvizu');
writeln('Zaradili ste ', zarada,' kuna');
Writeln('Dovidenja');
end
else
writeln('Greska pri ucitavanju pitanja');
readln;

Please. pomoć!!!
Re: Pomoć, dorada programa u Turbo Pascalu!!! 14.04.2005. u 21:11 · pre 262 meseca #2
Stavljaj pitanja koja su bila u skup (set of)

pa gledaj: if a in skup then ... bla bla bla

ili:

repeat
nadj_ sledece pitanje
until a in skup

sa njim(skupom) mozes da radis svasta, a za tebe je to "dusu dalo".

Re: Pomoć, dorada programa u Turbo Pascalu!!! 15.04.2005. u 01:23 · pre 262 meseca #10
Si primjetil kak sem ukrasil program?
Još jedino jednu stvar ne kužim kak da napravim skup pitanja koja su se pojavila u kviz tako da mi se ne vrte pitanja koja su već bila? E imaš možda ideju?
Re: Pomoć, dorada programa u Turbo Pascalu!!! 15.04.2005. u 02:20 · pre 262 meseca #20
Pa ne moras odmah da se drka.s!

Sve sto treba je da nista ne razmisljas.

Postavi program na forum izmedju code tagova!
znaci, ne da mu je pozadina siva, vec bela, kao sto to sav normalan svet radi.

Odgovori
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme