Calcolatore UPGRADE_SP (Source) - Lawliet - 13-02-2012 03:55 PM
Lascio il progetto a voi, è noioso e non tengo voglia di continuare.. Non capisco la funzione random con percentuali.
Citazione:#cs
; Programma che simula UP di una SP
'UPGRADE(SP(+1)) = 80% successo - 20% fallimento - 0% distruzione
'UPGRADE(SP(+2)) = 75% successo - 25% fallimento - 0% distruzione
'UPGRADE(SP(+3)) = 70% successo - 25% fallimento - 5% distruzione
'UPGRADE(SP(+4)) = 60% successo - 30% fallimento - 10% distruzione
'UPGRADE(SP(+5)) = 50% successo - 35% fallimento - 15% distruzione
'UPGRADE(SP(+6)) = 40% successo - 40% fallimento - 20% distruzione
'UPGRADE(SP(+7)) = 35% successo - 40% fallimento - 25% distruzione
'UPGRADE(SP(+8)) = 30% successo - 40% fallimento - 30% distruzione
'UPGRADE(SP(+9)) = 25% successo - 40% fallimento - 35% distruzione
'UPGRADE(SP(+10)) = 20% successo - 40% fallimento - 40% distruzione
'UPGRADE(SP(+11)) = 10% successo - 45% fallimento - 45% distruzione
'UPGRADE(SP(+12)) = 7% successo - 43% fallimento - 50% distruzione
'UPGRADE(SP(+13)) = 5% successo - 40% fallimento - 55% distruzione
'UPGRADE(SP(+14)) = 3% successo - 37% fallimento - 60% distruzione
'UPGRADE(SP(+15)) = 1% successo - 29% fallimento - 70% distruzione
#ce
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Calcolatore UP SP", 195, 95, 544, 188)
$Input1 = GUICtrlCreateInput("", 72, 32, 49, 21)
$Label1 = GUICtrlCreateLabel("Inserisci il grado UP per la tua SP", 16, 16, 161, 17)
$MyButton1 = GUICtrlCreateButton("Calcola", 16, 56, 164, 30, BitOR($BS_NOTIFY,$BS_FLAT))
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
Global $Successo1, $Fallito1, $Distrutto1
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSEnpu
Exit
Case $mybutton1()
$Num1 = Random(1, 100)
if ($Num = 100) then
$Successo1
else if ($Num > 71)
$Fallito1
else
$Distrutto1
EndIf
if GUICtrlRead($input) = "+1" Then
Msgbox(64,"Upgrade_SP",'codice_fail_up_distruggi')
EndIf
if GUICtrlRead($input) = "+2" Then
Msgbox(64,"Upgrade_SP",'codice_fail_up_distruggi')
EndIf
if GUICtrlRead($input) = "+3" Then
Msgbox(64,"Upgrade_SP",'codice_fail_up_distruggi')
EndIf
if GUICtrlRead($input) = "+4" Then
Msgbox(64,"Upgrade_SP",'codice_fail_up_distruggi')
EndIf
if GUICtrlRead($input) = "+5" Then
Msgbox(64,"Upgrade_SP",'codice_fail_up_distruggi')
EndIf
if GUICtrlRead($input) = "+6" Then
Msgbox(64,"Upgrade_SP",'codice_fail_up_distruggi')
EndIf
if GUICtrlRead($input) = "+7" Then
Msgbox(64,"Upgrade_SP",'codice_fail_up_distruggi')
EndIf
if GUICtrlRead($input) = "+8" Then
Msgbox(64,"Upgrade_SP",'codice_fail_up_distruggi')
EndIf
if GUICtrlRead($input) = "+9" Then
Msgbox(64,"Upgrade_SP",'codice_fail_up_distruggi')
EndIf
if GUICtrlRead($input) = "+10" Then
Msgbox(64,"Upgrade_SP",'codice_fail_up_distruggi')
EndIf
if GUICtrlRead($input) = "+11" Then
Msgbox(64,"Upgrade_SP",'codice_fail_up_distruggi')
EndIf
if GUICtrlRead($input) = "+12" Then
Msgbox(64,"Upgrade_SP",'codice_fail_up_distruggi')
EndIf
if GUICtrlRead($input) = "+13" Then
Msgbox(64,"Upgrade_SP",'codice_fail_up_distruggi')
EndIf
if GUICtrlRead($input) = "+14" Then
Msgbox(64,"Upgrade_SP",'codice_fail_up_distruggi')
EndIf
if GUICtrlRead($input) = "+15" Then
Msgbox(64,"Upgrade_SP",'codice_fail_up_distruggi')
EndIf
EndSwitch
WEnd
RE: Calcolatore UPGRADE_SP (Source) - faboski - 13-02-2012 07:34 PM
Sappiamo tutti tirare dei dadi, non ci vuole certamente un programma.
La probabilità di successo non cambia con un simulatore se la funzione che calcola il numero pseudorandom funziona sufficientemente bene.
RE: Calcolatore UPGRADE_SP (Source) - Lawliet - 13-02-2012 07:37 PM
Presumo che il tuo commento sia del tutto inutile
E presumo che lo sia anche il mio, non spammare grazie
RE: Calcolatore UPGRADE_SP (Source) - faboski - 13-02-2012 07:58 PM
Il mio commento serve per dare un aiuto a chi vuole mettere mano sul codice a non farsi coinvolgere.
Un programma inutile puo' essere scritto in PHP come
Codice PHP:
<?php for($k=0; $k < 100; $k++) { //100 volte esegue il test for($i=1; $i <= 200; $i++) { //200 tentativi per l'UpGrade... $r = rand(1,100); //Estrare un numero da uno 1 a 100 if($r > 97) { //Supponiamo che debba avere il 3% di riuscita echo "Riuscito al $i tentativo\n"; continue 2; } } } ?>
Ovviamente ricevai risultati come
Riuscito al 1 tentativo
o
Riuscito al 167 tentativo
In media pero' e' ovvio che ci sara' il 3% di riuscita...
RE: Calcolatore UPGRADE_SP (Source) - Lawliet - 13-02-2012 10:36 PM
Questo è valutabile come commento istruttivo, quello di prima inutile
|