I.Ren |
|
| L'idea è carina ma il codice, senza offesa deh, è scritto davvero male. 1159 linee per un programma del genere è pura follia. L'ho rifatto io, senza GUI (e vabbè lì un 50-100 linee di codice se vuoi esagerare ti vanno) ma cmq se usavi i cicli non ne venivano fuori così tanto. Questo funzia lo stesso, fa le stesse identiche cose. Sono 73 linee al posto 1159, ne ho risparmiate solo 1086. CODICE $diff = InputBox("Seleziona difficoltà:","1- Principiante"&@CR&"2- Medio"&@CR&"3- Esperto"&@CR&"4- Cazzuto") Switch $diff Case 1 principiante() Case 2 medio() Case 3 esperto() Case 4 cazzuto() Case Else MsgBox(0,'','scelta non valida') EndSwitch Func cazzuto() For $i = 1 To 10 $in = TimerInit() $r1 = Random(1,10,1) $r2 = Random(1,10,1) $dom = InputBox("Inserisci la riposta. Hai 5 secondi.",$r1&" x "&$r2) If TimerDiff($in) > 5000 Then MsgBox(0,'',"5 secondi passati.") ExitLoop ElseIf $dom == $r1*$r2 Then MsgBox(0,'',"Risposta corretta.") Else MsgBox(0,'',"Risposta errata") ExitLoop EndIf Next EndFunc Func esperto() For $i = 1 To 10 $r1 = Random(1,10,1) $r2 = Random(1,10,1) $dom = InputBox("Inserisci la risposta:",$r1&" x "&$r2) If $dom == $r1*$r2 Then MsgBox(0,'',"Risposta corretta.") Else MsgBox(0,'',"Risposta errata.") ExitLoop EndIf Next EndFunc
Func medio() For $i = 1 To 10 $in = TimerInit() $dom = InputBox("Inserisci la risposta. Hai 10 secondi",$i&" x 1") If TimerDiff($in) > 10000 Then MsgBox(0,'',"10 secondi passati.") ExitLoop ElseIf $dom == $i*1 Then MsgBox(0,'',"Risposta corretta.") Else MsgBox(0,'',"Risposta errata.") ExitLoop EndIf Next EndFunc
Func principiante() For $i = 1 To 11 $dom = InputBox("Inserisci la risposta:",$i&" x 1") If $dom == $i*1 Then MsgBox(0,'','Risposta corretta') Else MsgBox(0,'','Risposta errata') ExitLoop EndIf Next EndFunc Io fossi in te lo riscriverei interamente.. è un affronto alla vista, un codice del genere xD
|
| |