|
Programiranje Programski jezici, tehnike, alatke... |
|
Alatke vezane za temu | Vrste prikaza |
6.6.2007, 15:27 | #1 |
Član
Član od: 16.10.2006.
Lokacija: NS
Poruke: 72
Zahvalnice: 65
Zahvaljeno 62 puta na 23 poruka
|
Mala pomoc oko projekta u Delphiju...
Pravim projekat za skolu - kviz "Milioner". Jos uvek nije dovrsen i glavni deo
programa je problematican - program radi ali ne radi ono sto treba (izbacuje pogresna pitanja, izbacuje poruke o netacnom odgovoru pre nego sto korisnik klikne i sl.). Inace, ja sam drugi razred srednje skole i tek pre mesec dana sam pocela da programiram u Delphi-ju (godinu i po dana smo ucili Pascal), tako da mi "lovljenje gresaka" u programu koje kompajler ne prijavljuje bas i ne ide od ruke. Sve sugestije, ideje i predlozi su dobrodosli. |
7.6.2007, 15:03 | #2 |
Starosedelac
|
Re: mala pomoc oko projekta u Delphi-ju...
Pa... za pocetak, mogla bi da postavis i ostatak fajlova koji su u projektu (Unit1 i Unit2) ...
btw. Da li je klasicni ili .NET projekat... ??? |
7.6.2007, 18:38 | #3 |
Član
Član od: 16.10.2006.
Lokacija: NS
Poruke: 72
Zahvalnice: 65
Zahvaljeno 62 puta na 23 poruka
|
Re: mala pomoc oko projekta u Delphi-ju...
Klasican projekat. Prilazem i nedostajuce unite
|
7.6.2007, 20:32 | #4 |
Član
Član od: 22.3.2007.
Lokacija: Pančevo
Poruke: 39
Zahvalnice: 0
Zahvaljeno 13 puta na 6 poruka
|
Re: mala pomoc oko projekta u Delphi-ju...
Da li tvoj projekat "Miloner" ima neke .pas fajlove ?
dfm = Delphi form - fajlovi mi ništa ne znače, ne pišeš (eng. code) u .dfm fajlovima. Pod Unit-om se podrazumeva .pas fajl. Pozdrav za malu našu programerku ! |
7.6.2007, 22:07 | #5 |
Član
Član od: 16.10.2006.
Lokacija: NS
Poruke: 72
Zahvalnice: 65
Zahvaljeno 62 puta na 23 poruka
|
Re: mala pomoc oko projekta u Delphi-ju...
@DelFun - pozdrav
|
8.6.2007, 12:28 | #6 |
Član
Član od: 16.10.2006.
Lokacija: NS
Poruke: 72
Zahvalnice: 65
Zahvaljeno 62 puta na 23 poruka
|
Re: mala pomoc oko projekta u Delphi-ju...
Za 6 dana moram da predam projekat, tako da su mi sve sugestije dobrodosle
|
8.6.2007, 20:35 | #7 | |
Starosedelac
|
Re: mala pomoc oko projekta u Delphi-ju...
Pa, kao prvo, nije pametno drzati pitanja u samom code -u (anyway svaka ti cast za strpljenje... ) ...
nego, da bih ti max. olaksao posao, imas sve vec 50% gotovo, samo fali grafika, i one "pomoci"... pitanja se nalaze u "QTDbs.txt" file -u... btw. krenuo sam sa imenovanjem idntifikatora na srpskom...i zavrsio sa engleskim... ... Citat:
Poslednja ispravka: MG-RAY (9.6.2007 u 9:33) Razlog: Promenjen file... |
|
9.6.2007, 11:47 | #8 |
Član
Član od: 16.10.2006.
Lokacija: NS
Poruke: 72
Zahvalnice: 65
Zahvaljeno 62 puta na 23 poruka
|
Re: mala pomoc oko projekta u Delphi-ju...
Hvala hvala hvala hvala
|
9.6.2007, 11:59 | #9 |
Član
Član od: 16.10.2006.
Lokacija: NS
Poruke: 72
Zahvalnice: 65
Zahvaljeno 62 puta na 23 poruka
|
Re: mala pomoc oko projekta u Delphi-ju...
Znas u cemu je meni bio problem sa programom - imam 150 pitanja, od toga grupa koja je oznacena brojevima od 1 do 10 sadrzi pitanja za 500 din. Iz te grupe Random-om biram jedno pitanje, a ako ga korisnik tacno uradi prelazim na grupu 11 -20... Tako da problem sa programom i dalje nije bas resen. Ne moras da mi kucas ceo program samo mi reci kako da prepravim ono svoje.
|
9.6.2007, 12:06 | #10 |
Starosedelac
|
Re: mala pomoc oko projekta u Delphi-ju...
hmmm...
OK, probaj nesto ovako: Dodaj jos jednu Int (qtCount, da skratim...)promenjivu koja ce sluziti kao brojac pitanja(0 - 14) U ProccessQuestion(), "questionNumber := Random(QTNum);" , kod random ogranici donju granicu na [qtCount * 10] a gornju na [qtCount * 10 + 10] u svom code -u uradi nesto slicno, kod RandomRange() ; to bi trebalo da... radi naravno, i qtCount ces morati da azuriras kada to bude bilo potrebno (sa prelaskom na sledece pitanje, uvecas ga za 1)... btw. " ° " -> Alt + 01456 |
10.6.2007, 17:36 | #11 |
Član
Član od: 16.10.2006.
Lokacija: NS
Poruke: 72
Zahvalnice: 65
Zahvaljeno 62 puta na 23 poruka
|
Re: mala pomoc oko projekta u Delphi-ju...
Hvala
|
10.6.2007, 20:12 | #12 |
Član
Član od: 16.10.2006.
Lokacija: NS
Poruke: 72
Zahvalnice: 65
Zahvaljeno 62 puta na 23 poruka
|
Re: mala pomoc oko projekta u Delphi-ju...
Ok, pocela sam da kontam zasto mi program ne radi kako treba. Nesto nije u redu sa
proverom tacnosti odgovora. Ovo je primer pitanja (131 po redu): if i=131 then begin GroupBox1.Caption:='Carska voda je mesavina 2 kiseline:'; RadioButton1.Caption:='Azotne i sumporne'; RadioButton2.Caption:='Hlorovodince i azotne'; RadioButton3.Caption:='Sumporne i fosforne'; RadioButton4.Caption:='Sulfitne i hlorovodonicne'; If radioButton2.checked then tacanOdgovor:=true; end; Button1 je dugme "Odgovori" koje bi trebalo da proverava tacnost pitanja i da prebaci na drugo pitanje vece tezine (od 1 do 10 su najlaksa pitanja i odatle se random-om bira jedno, pa se zatim bira jedno izmedju 11 i 20.....). Ne znam zasto, ali program svaki odgovor posmatra kao netacan i izbacuje form2, odnosno poruku "Odgovor je pogresan". C je brojac koji "razvrstava' pitanja u odredjene grupe po tezini. procedure TForm1.Button1Click(Sender: TObject); begin case i of 1..10: c:=0; 11..20: c:=1; 21..30: c:=2; 31..40: c:=3; 41..50: c:=4; 51..60: c:=5; 61..70: c:=6; 71..80: c:=7; 81..90: c:=8; 91..100: c:=9; 101..110: c:=10; 111..120: c:=11; 121..130: c:=12; 131..140: c:=13; 141..150: c:=14; end; if tacanOdgovor then begin a:=c*10; b:=c*10+10; i:=randomRange(a,b); end else form2.Show; |
10.6.2007, 20:24 | #13 |
V.I.P. GNU/Linux
Član od: 1.11.2005.
Poruke: 11.221
Zahvalnice: 2.133
Zahvaljeno 4.961 puta na 2.887 poruka
|
Re: mala pomoc oko projekta u Delphi-ju...
Ovaj ogroman i potpuno nepraktičan case zameni sa
if i mod 10 = 0 then c := i div 10 - 1 else c := i div 10; |
10.6.2007, 20:30 | #14 |
Član
Član od: 16.10.2006.
Lokacija: NS
Poruke: 72
Zahvalnice: 65
Zahvaljeno 62 puta na 23 poruka
|
Re: mala pomoc oko projekta u Delphi-ju...
Ok, ali problem uopste nije u case-u
|
10.6.2007, 22:38 | #15 |
V.I.P. GNU/Linux
Član od: 1.11.2005.
Poruke: 11.221
Zahvalnice: 2.133
Zahvaljeno 4.961 puta na 2.887 poruka
|
Re: mala pomoc oko projekta u Delphi-ju...
Sad sam malo pogledao kod, i ovako:
1. što se tiče ručnog obrađivanja svakog pojedinačnog pitanja direktno u kodu, ti definitivno nisi normalan ovako se ne programira, em je zamorno, em nije fleksibilno i moraš da rekompajliraš ceo program ako hoćeš da dodaješ pitanja. Mogao si sve da ih potrpaš u recimo najprostiji .ini fajl strukture: Kod:
[1] Pitanje=Koji od navedenih nije kontinent? 1=Azija 2=Aljaska 3=Australija 4=Antartik Tacan=2 [2] Pitanje=Beograd je glavni grad 1=Srbije 2=Hrvatske 3=Bosne i Hercegovine 4=Makedonije Tacan=1 Kod:
function SetQuestion(const BrojPitanja: integer): integer; var Ini: TIniFile; begin Ini := TIniFile.Create(IncludeTrailingPathDelimiter(ExtractFilePath(Application.ExeName)) + 'pitanja.ini'); Form1.GroupBox1.Caption := Ini.ReadString(IntToStr(BrojPitanja), 'Pitanje', ''); Form1.RadioButton1.Caption := Ini.ReadString(IntToStr(BrojPitanja), '1', ''); Form1.RadioButton2.Caption := Ini.ReadString(IntToStr(BrojPitanja), '2', ''); Form1.RadioButton3.Caption := Ini.ReadString(IntToStr(BrojPitanja), '3', ''); Form1.RadioButton4.Caption := Ini.ReadString(IntToStr(BrojPitanja), '4', ''); Result := Ini.ReadInteger(IntToStr(BrojPitanja), Tacan, 0); Ini.Free; end; function CheckQuestion(const BrojPitanja: integer): boolean; var Ini: TIniFile; begin Ini := TIniFile.Create(IncludeTrailingPathDelimiter(ExtractFilePath(Application.ExeName)) + 'pitanja.ini'); Result := (TRadioButton)(Form1.FindComponent('RadioButton' + IntToStr(tacanOdgovor))).Checked; Ini.Free; end; 2. Uvlači blokove. Kad sve kucaš pod jednom marginom, jako je nečitko i nepregledno, ne zna se šta čemu pripada. 3. Svaki odgovor je netačan zato što ti ispituješ čekiranost RadioButtona pre nego što je korisnik uopšte potvrdio svoj izbor (a potvrđuje pritiskom na dugme, a ne na RadioButton). Checked je samo property, nije signal događaja. Proveravanje da li je odgovor tačan treba da ubaciš u Button1Click proceduru (tj. onda kada korisnik nešto izabere pa potvrdi dugmetom) a ne da proveravaš tokom kreiranja forme. S tim što bi, ovako kako si počeo da pišeš, morao u Button1Click da napraviš 150 provera tipa if pitanje = 1 and radiobutton2.checked then tacanodgovor := true; if pitanje = 2 and radiobutton1.checked then tacanodgovor := true; ... što je jako zamorno, pa ti preporučujem da program preradiš tako da čita pitanja i odgovore iz odvojenog fajla preko jedne ili dve funkcije, na neki od predloženih načina. Možeš da ubaciš neki globalni identifikator trenutnog pitanja, recimo CurrentQuestion := 131; tacanOdgovor := SetQuestion(CurrentQuestion); a da u Button1Click pitaš if CheckQuestion(tacanOdgovor) then neki posao; Poslednja ispravka: voodoo_ (10.6.2007 u 23:45) |
10.6.2007, 22:46 | #16 |
V.I.P. GNU/Linux
Član od: 1.11.2005.
Poruke: 11.221
Zahvalnice: 2.133
Zahvaljeno 4.961 puta na 2.887 poruka
|
Re: mala pomoc oko projekta u Delphi-ju...
(predugačak mi prethodni odgovor pa moram odvojeno )
Bez uvrede, ali mislim da si zagrizao preveliki zalogaj Trebalo bi malo da vežbaš na prostijim programima dok ne stekneš bolje osnove i savladaš raščlanjavanje programa na sopstvene procedure. Ovo što pišeš trenutno je ipak malo više advanced, jer predstavlja jedan oblik obrade baze podataka. |
10.6.2007, 23:45 | #17 | |
Član
Član od: 16.10.2006.
Lokacija: NS
Poruke: 72
Zahvalnice: 65
Zahvaljeno 62 puta na 23 poruka
|
Re: mala pomoc oko projekta u Delphi-ju...
Citat:
|
|
12.6.2007, 8:10 | #18 |
Član
Član od: 16.10.2006.
Lokacija: NS
Poruke: 72
Zahvalnice: 65
Zahvaljeno 62 puta na 23 poruka
|
Re: Mala pomoc oko projekta u Delphiju...
Imam jos 24 h da zavrsim projekat i nemam pojma kako to da uradim posto se vec dve nedelje bavim glavnim delom programa koji nikako da proradi. Help!
|
12.6.2007, 9:11 | #19 |
Starosedelac
|
Re: Mala pomoc oko projekta u Delphiju...
Mislim da ti je voodoo_nbgd dao vise nego iscrpan odgovor. Tako da se sve svodi na ovo: zadrzi stari nacin i ispravi svih 1700 linija koda, ili upotrebi neki od goreponudjenuh...koji rade i mnogo su efikasniji.
|
13.6.2007, 6:42 | #20 |
Član
Član od: 16.10.2006.
Lokacija: NS
Poruke: 72
Zahvalnice: 65
Zahvaljeno 62 puta na 23 poruka
|
Re: Mala pomoc oko projekta u Delphiju...
Prepravila sam glavni program i sada sve radi super osim 3 vrste pomoci. MG-Ray, 'ajde napisi mi nesto i za to.
|
Bookmarks sajtovi |
|
|
Slične teme | ||||
tema | temu započeo | forum | Odgovora | Poslednja poruka |
mala pomoc | Milos Nikolic | Kvarovi | 7 | 24.11.2006 22:55 |
Mala pomoc (IP finder na MSN-u) | Denisda | Internet tehnologije | 0 | 24.4.2006 11:42 |
Treba mi mala pomoc? | BeerBaron | Šta da kupim? | 11 | 29.1.2006 4:50 |
Mala pomoc oko OC | Ninoslav | Overklok | 10 | 19.11.2005 2:33 |