# Math problem no idea :(

## Recommended Posts

Hello

I want make Simple calculator but dont have idea how make it on AutoIt

I wane make 4 inputbox

Age [ ]

Power [ ]

Run [ ]

Fight [ ]

User overcrowd poll

==========================================

Age

If value is between 0 and 10 \$Result_Age = 1

9 and 13 \$Result_Old = 2

etc..

[ If difrent than 0 to 70 then error ]

Power

If value is between 0 and 20 \$Result_Power = 1

If value is between 21 and 40 \$Result_Power = 2

etc..

[ If difrent than 0 to 500 then error ]

Run

If value is between 0 and 10 \$Result_Run = 1

If value is between 11 and 30 \$Result_Run = 2

etc...

[ If difrent than 0 to 500 then error

Fight

If value is 0 \$Result_Fight = 0

If value is 1 \$Result_Fight = 8

If value is 2 \$Result_Fight = 10

If value is 3 \$Result_Fight = 13

etc...

[ If difrent than 0 to 50 then error ]

\$Final_Result = \$Result_Age + \$Result_Power + \$Result_Run + \$Result_Fight

##### Share on other sites

Umm i'm lost but maybe this will help,

```\$Age = InputBox ('How old are you?','Please input your name here.')
If @Error Then Exit
If @Error Then Exit
If @Error Then Exit
If @Error Then Exit

Global \$Result_Age, \$Result_Power, \$Result_Run, \$Result_Fight, \$Result_Final

; Set \$Result_Age
For \$A = '0' To '10'
If \$Age = \$A Then \$Result_Age = '1'
Next
If \$Age = '9' Or \$Age = '13' Then
\$Result_Age = '2'
ElseIf \$Age > '10' Then
\$Result_Age = '0';???????????????
EndIf

;Set \$Result_Power
For \$A = '0' To '20'
If \$Power = \$A Then \$Result_Power = '1'
Next
For \$A = '21' To '40'
If \$Power = \$A Then \$Result_Power = '2'
Next
If \$Power > '40' Then \$Result_Power = '0';???????????????

;Set \$Result_Run
For \$A = '0' To '10'
If \$Run = \$A Then \$Result_Run = '1'
Next
For \$A = '11' To '30'
If \$Run = \$A Then \$Result_Run = '2'
Next
If \$Run > '30' Then \$Result_Run = '0';???????????????

;Set \$Result_Fight
If \$Fight = '0' Then \$Result_Fight = '0'
If \$Fight = '1' Then \$Result_Fight = '8'
If \$Fight = '2' Then \$Result_Fight = '10'
If \$Fight = '3' Then \$Return_Fight = '13'
If \$Fight > '3' Then \$Result_Fight = '0'

\$Result_Final = \$Result_Age + \$Result_Power + \$Result_Run + \$Result_Fight

ConsoleWrite ('\$Result_Final : ' & \$Result_Final & @CRLF)```

- John!

Latest Projects :- New & Improved TCP Chat

##### Share on other sites

Try this.

CODE
#include <GUIConstants.au3>

#Region ### START Koda GUI section ### Form=

\$Form1 = GUICreate("Form1", 303, 219, 193, 115)

\$Input1 = GUICtrlCreateInput("1", 16, 28, 121, 21)

\$Input2 = GUICtrlCreateInput("1", 164, 28, 121, 21)

\$Input3 = GUICtrlCreateInput("1", 16, 68, 121, 21)

\$Input4 = GUICtrlCreateInput("1", 164, 68, 121, 21)

\$Label1 = GUICtrlCreateLabel("Age", 16, 8, 23, 17)

\$Label2 = GUICtrlCreateLabel("Power", 164, 8, 34, 17)

\$Label3 = GUICtrlCreateLabel("Run", 16, 48, 24, 17)

\$Label4 = GUICtrlCreateLabel("Fight", 164, 48, 27, 17)

\$Button1 = GUICtrlCreateButton("Calculate", 32, 136, 93, 21, 0)

\$Label5 = GUICtrlCreateLabel("Total", 188, 160, 45, 28)

GUICtrlSetFont(-1, 14, 400, 0, "MS Sans Serif")

\$Label6 = GUICtrlCreateLabel("Total=", 188, 140, 34, 17)

GUISetState(@SW_SHOW)

#EndRegion ### END Koda GUI section ###

While 1

\$nMsg = GUIGetMsg()

Switch \$nMsg

Case \$GUI_EVENT_CLOSE

Exit

case \$Button1

If \$age > "" and \$Power > "" and \$Run > "" and \$Fight > "" Then

If \$age > 0 and \$age < 10 Then \$Result_Age = 1

If \$Power > 0 and \$Power < 20 Then \$Result_Power = 1

If \$Run > 0 and \$Run < 10 Then \$Result_Run = 1

If \$Fight = 1 Then \$Result_Fight = 8

GUICtrlSetData(\$label5,\$Result_Age + \$Result_Power + \$Result_Run + \$Result_Fight)

EndIf

EndSwitch

WEnd

[topic="21048"]New to AutoIt? Check out AutoIt 1-2-3![/topic] Need to make a GUI? You NEED KODA FormDesigner!

##### Share on other sites

How does the age and fight results work?

CODE
GUICreate("Calculator", 200, 300)

GUICtrlCreateLabel("Enter age:", 10, 10)

\$ageinput = GUICtrlCreateInput("", 10, 30)

GUICtrlCreateLabel("Enter power:", 10, 60)

\$powerinput = GUICtrlCreateInput("", 10, 80)

GUICtrlCreateLabel("Enter run:", 10, 110)

\$runinput = GUICtrlCreateInput("", 10, 130)

GUICtrlCreateLabel("Enter fight:", 10, 160)

\$fightinput = GUICtrlCreateInput("", 10, 180)

\$calculate = GUICtrlCreateButton("Calculate!", 10, 210, 150)

\$total = GUICtrlCreateLabel("", 10, 250, 150, 20)

GUISetState()

\$msg = ""

While \$msg <> -3

\$msg = GUIGetMsg()

If \$msg = \$calculate Then

If \$age <> "" or \$power <> "" or \$run <> "" or \$fight <> "" Then

;I don't understand the age.

If \$power < 0 Or \$power > 500 Then

MsgBox(48, "Error!", "Please enter a value between 0 and 500!")

Else

\$result_power = Ceiling(\$power / 20)

EndIf

If \$run < 0 Or \$run > 500 Then

MsgBox(48, "Error!", "Please enter a value between 0 and 500!")

ElseIf \$run >= 0 And \$run <= 10 Then

\$result_run = 1

Else

\$result_run = Ceiling((\$run-10) / 20) + 1

EndIf

;I don't understand fight.

GUICtrlSetData(\$total, "Total: " & \$result_run);\$result_power + \$result_run)

Else

MsgBox(48, "Error!", "You left one of the values blank!")

EndIf

EndIf

WEnd

Bah. Forgot to change a few things. But we don't know how the results for the age and fight work!

Edited by Coolw

My ProgramsMy WIP'sSteam Server Restarter

##### Share on other sites

@John2006

Greate Work (Your code work correctly)

I little change code but I need GUI

But my new code dont work correctly allways show resoult = 3

```#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>

\$Form1 = GUICreate("Form1", 605, 538, 247, 204)
\$xxx1 = GUICtrlCreateGroup("", 128, 64, 441, 441)
\$Label1 = GUICtrlCreateLabel("Age", 160, 120, 36, 17)
\$Age = GUICtrlCreateInput("  ", 216, 120, 49, 21)
\$Label2 = GUICtrlCreateLabel("Strange", 160, 160, 36, 17)
\$Power = GUICtrlCreateInput("  ", 216, 160, 49, 21)
\$Label3 = GUICtrlCreateLabel("Power", 160, 200, 36, 17)
\$Run = GUICtrlCreateInput("  ", 216, 200, 49, 21)
\$Label4 = GUICtrlCreateLabel("Fight", 160, 240, 36, 17)
\$Fight = GUICtrlCreateInput("  ", 216, 240, 49, 21)
\$xxx2 = GUICtrlCreateGroup("", 144, 96, 137, 193)
GUICtrlCreateGroup("", -99, -99, 1, 1)
\$start = GUICtrlCreateButton("Show my KI", 192, 448, 321, 33, 0)
GUICtrlCreateGroup("", -99, -99, 1, 1)
GUISetState(@SW_SHOW)

Local \$A = 9999

Global \$Result_Age, \$Result_Power, \$Result_Run, \$Result_Fight, \$Result_Final

; Set \$Result_Age
For \$A = '0' To '8'
If \$Age = \$A Then \$Result_Age = '1'
Next
For \$A = '9' To '13'
If \$Age = \$A Then \$Result_Age = '2'
Next
For \$A = '14' To '17'
If \$Age = \$A Then \$Result_Age = '3'
Next
For \$A = '18' To '50'
If \$Age = \$A Then \$Result_Age = '4'
Next
For \$A = '51' To '1000000'
If \$Age = \$A Then \$Result_Age = '3'
Next

;Set \$Result_Power
For \$A = '0' To '20'
If \$Power = \$A Then \$Result_Power = '1'
Next
For \$A = '21' To '40'
If \$Power = \$A Then \$Result_Power = '2'
Next
For \$A = '41' To '60'
If \$Power = \$A Then \$Result_Power = '3'
Next
For \$A = '61' To '80'
If \$Power = \$A Then \$Result_Power = '4'
Next
For \$A = '81' To '100'
If \$Power = \$A Then \$Result_Power = '6'
Next
For \$A = '101' To '1000000'
If \$Power = \$A Then \$Result_Power = '8'
Next

;Set \$Result_Run
For \$A = '0' To '10'
If \$Run = \$A Then \$Result_Run = '1'
Next
For \$A = '11' To '30'
If \$Run = \$A Then \$Result_Run = '2'
Next
For \$A = '31' To '50'
If \$Run = \$A Then \$Result_Run = '3'
Next
For \$A = '51' To '1000000'
If \$Run = \$A Then \$Result_Run = '4'
Next

;Set \$Result_Fight
If \$Fight = '0' Then \$Result_Fight = '0'
If \$Fight = '1' Then \$Result_Fight = '8'
If \$Fight = '2' Then \$Result_Fight = '10'
If \$Fight = '3' Then \$Return_Fight = '13'
If \$Fight = '4' Then \$Return_Fight = '14'
If \$Fight = '5' Then \$Return_Fight = '17'
If \$Fight = '6' Then \$Return_Fight = '20'
If \$Fight = '7' Then \$Return_Fight = '22'
If \$Fight = '8' Then \$Return_Fight = '23'
If \$Fight = '9' Then \$Return_Fight = '24'
If \$Fight = '10' Then \$Return_Fight = '25'
If \$Fight > '10' Then \$Return_Fight = '27';na razie tyle

\$Result_Final = \$Result_Age + \$Result_Power + \$Result_Run + \$Result_Fight

While 1
\$aMsg = GUIGetMsg(1)

Select
case \$aMsg[0] = \$Start

ConsoleWrite ('\$Result_Final : ' & \$Result_Final & @CRLF)

endselect
wend```

##### Share on other sites

Bam! Here it is I think I got it this time,

Source :

```#Include <ButtonConstants.Au3>
#Include <EditConstants.Au3>
#Include <GUIConstantsEx.Au3>
#Include <StaticConstants.Au3>
#Include <WindowsConstants.Au3>
Opt ('GUIOnEventMode','1')

\$GUI = GUICreate ('Example','170','129','-1','-1','-1','128')
GUISetOnEvent (\$GUI_EVENT_CLOSE, '_Exit')
GUICtrlCreatelabel ('Age :','5','5','40','20')
_Set ('1')
\$Age = GUICtrlCreateInput ('','48','5','100','20','1')
_Set ('2')
GUICtrlCreatelabel ('Power :','5','30','51','20')
_Set ('1')
\$Power = GUICtrlCreateInput ('','62','30','100','20','1')
_Set ('2')
GUICtrlCreatelabel ('Run :','5','55','36','20')
_Set ('1')
\$Run = GUICtrlCreateInput ('','48','55','100','20','1')
_Set ('2')
GUICtrlCreatelabel ('Fight :','5','80','44','20')
_Set ('1')
\$Fight = GUICtrlCreateInput ('','56','80','100','20','1')
_Set ('2')
\$Start = GUICtrlCreateButton ('Start','50','105','70','20')
GUICtrlSetOnEvent (\$Start, '_Start')
_Set ('2')
GUISetState (@SW_SHOW, \$GUI)

While '1'
Sleep ('150')
WEnd

Func _Set (\$iCase)
Switch \$iCase
Case '1'
GUICtrlSetBkColor ('-1','-2')
GUICtrlSetFont ('-1','10','600','','Arial')
Case '2'
GUICtrlSetFont ('-1','10','600','','Arial')
EndSwitch
EndFunc

Func _Start ()
MsgBox ('0','Notice','Result : ' & _Result (), '0')
EndFunc

Func _Result ()
Local \$R_Age, \$R_Power, \$R_Run, \$R_Fight
;=== Age ===
For \$A = '0' To '8'
If GUICtrlRead (\$Age) = \$A Then \$R_Age = '1'
Next
For \$A = '9' To '13'
If GUICtrlRead (\$Age) = \$A Then \$R_Age = '2'
Next
For \$A = '14' To '17'
If GUICtrlRead (\$Age) = \$A Then \$R_Age = '3'
Next
For \$A = '18' To '50'
If GUICtrlRead (\$Age) = \$A Then \$R_Age = '4'
Next
If GUICtrlRead (\$Age) > '50' And GUICtrlRead (\$Age) < '1000001' Then \$R_Age = '3'
;=== Power ===
For \$A = '0' To '20'
If GUICtrlRead (\$Power) = \$A Then \$R_Power = '1'
Next
For \$A = '21' To '40'
If GUICtrlRead (\$Power) = \$A Then \$R_Power = '2'
Next
For \$A = '41' To '60'
If GUICtrlRead (\$Power) = \$A Then \$R_Power = '3'
Next
For \$A = '61' To '80'
If GUICtrlRead (\$Power) = \$A Then \$R_Power = '4'
Next
For \$A = '81' To '100'
If GUICtrlRead (\$Power) = \$A Then \$R_Power = '6'
Next
If GUICtrlRead (\$Power) > '100' And GUICtrlRead (\$Power) < '1000001' Then \$R_Power = '8'
;=== Run ===
For \$A = '0' To '10'
If GUICtrlRead (\$Run) = \$A Then \$R_Run = '1'
Next
For \$A = '11' To '30'
If GUICtrlRead (\$Run) = \$A Then \$R_Run = '2'
Next
For \$A = '31' To '50'
If GUICtrlRead (\$Run) = \$A Then \$R_Run = '3'
Next
If GUICtrlRead (\$Run) > '50' And GUICtrlRead (\$Run) < '1000001' Then \$R_Run = '4'
;=== Fight ===
If GUICtrlRead (\$Fight) = '0' Then \$R_Fight = '0'
If GUICtrlRead (\$Fight) = '1' Then \$R_Fight = '8'
If GUICtrlRead (\$Fight) = '2' Then \$R_Fight = '10'
If GUICtrlRead (\$Fight) = '3' Then \$R_Fight = '13'
If GUICtrlRead (\$Fight) = '4' Then \$R_Fight = '14'
If GUICtrlRead (\$Fight) = '5' Then \$R_Fight = '17'
If GUICtrlRead (\$Fight) = '6' Then \$R_Fight = '20'
If GUICtrlRead (\$Fight) = '7' Then \$R_Fight = '22'
If GUICtrlRead (\$Fight) = '8' Then \$R_Fight = '23'
If GUICtrlRead (\$Fight) = '9' Then \$R_Fight = '24'
If GUICtrlRead (\$Fight) = '10' Then \$R_Fight = '25'
If GUICtrlRead (\$Fight) > '10' Then \$R_Fight = '27'
Return \$R_Age + \$R_Power + \$R_Run + \$R_Fight
EndFunc

Func _Exit ()
Exit
EndFunc```

Hope it helps!

- John

Edit : Notes :

When using a 'GUI' always use "GUICtrlRead (\$Var)" to read inputs etc..

Never do a "For...Next" loop going to 1,000,000 because it takes forever...

Also you might want to use "OnEventMode" because its better!

Edited by John2006

Latest Projects :- New & Improved TCP Chat

##### Share on other sites

Fantastic work John2006

tomorrow i try change this GUI

Big THANKS !!

##### Share on other sites

Hmm I dont know why but resoult's have error some time look

when put

age = 9

Power = 21

Run = 11

Fight = 0

then we have 6 point and this is true

age = 9

Power = 21

Run = 11

Fight = 1

then we have 14 point and this is true

BUT

age = 9

Power = 21

Run = 11

Fight = 2

then we have 33 point and this is somt fake ...

fight 2 = 10 point

##### Share on other sites

Bam! Here it is I think I got it this time,

Source :

```#Include <ButtonConstants.Au3>
#Include <EditConstants.Au3>
#Include <GUIConstantsEx.Au3>
#Include <StaticConstants.Au3>
#Include <WindowsConstants.Au3>
Opt ('GUIOnEventMode','1')

\$GUI = GUICreate ('Example','170','129','-1','-1','-1','128')
GUISetOnEvent (\$GUI_EVENT_CLOSE, '_Exit')
GUICtrlCreatelabel ('Age :','5','5','40','20')
_Set ('1')
\$Age = GUICtrlCreateInput ('','48','5','100','20','1')
_Set ('2')
GUICtrlCreatelabel ('Power :','5','30','51','20')
_Set ('1')
\$Power = GUICtrlCreateInput ('','62','30','100','20','1')
_Set ('2')
GUICtrlCreatelabel ('Run :','5','55','36','20')
_Set ('1')
\$Run = GUICtrlCreateInput ('','48','55','100','20','1')
_Set ('2')
GUICtrlCreatelabel ('Fight :','5','80','44','20')
_Set ('1')
\$Fight = GUICtrlCreateInput ('','56','80','100','20','1')
_Set ('2')
\$Start = GUICtrlCreateButton ('Start','50','105','70','20')
GUICtrlSetOnEvent (\$Start, '_Start')
_Set ('2')
GUISetState (@SW_SHOW, \$GUI)

While '1'
Sleep ('150')
WEnd

Func _Set (\$iCase)
Switch \$iCase
Case '1'
GUICtrlSetBkColor ('-1','-2')
GUICtrlSetFont ('-1','10','600','','Arial')
Case '2'
GUICtrlSetFont ('-1','10','600','','Arial')
EndSwitch
EndFunc

Func _Start ()
MsgBox ('0','Notice','Result : ' & _Result (), '0')
EndFunc

Func _Result ()
Local \$R_Age, \$R_Power, \$R_Run, \$R_Fight
;=== Age ===
For \$A = '0' To '8'
If GUICtrlRead (\$Age) = \$A Then \$R_Age = '1'
Next
For \$A = '9' To '13'
If GUICtrlRead (\$Age) = \$A Then \$R_Age = '2'
Next
For \$A = '14' To '17'
If GUICtrlRead (\$Age) = \$A Then \$R_Age = '3'
Next
For \$A = '18' To '50'
If GUICtrlRead (\$Age) = \$A Then \$R_Age = '4'
Next
If GUICtrlRead (\$Age) > '50' And GUICtrlRead (\$Age) < '1000001' Then \$R_Age = '3'
;=== Power ===
For \$A = '0' To '20'
If GUICtrlRead (\$Power) = \$A Then \$R_Power = '1'
Next
For \$A = '21' To '40'
If GUICtrlRead (\$Power) = \$A Then \$R_Power = '2'
Next
For \$A = '41' To '60'
If GUICtrlRead (\$Power) = \$A Then \$R_Power = '3'
Next
For \$A = '61' To '80'
If GUICtrlRead (\$Power) = \$A Then \$R_Power = '4'
Next
For \$A = '81' To '100'
If GUICtrlRead (\$Power) = \$A Then \$R_Power = '6'
Next
If GUICtrlRead (\$Power) > '100' And GUICtrlRead (\$Power) < '1000001' Then \$R_Power = '8'
;=== Run ===
For \$A = '0' To '10'
If GUICtrlRead (\$Run) = \$A Then \$R_Run = '1'
Next
For \$A = '11' To '30'
If GUICtrlRead (\$Run) = \$A Then \$R_Run = '2'
Next
For \$A = '31' To '50'
If GUICtrlRead (\$Run) = \$A Then \$R_Run = '3'
Next
If GUICtrlRead (\$Run) > '50' And GUICtrlRead (\$Run) < '1000001' Then \$R_Run = '4'
;=== Fight ===
If GUICtrlRead (\$Fight) = '0' Then \$R_Fight = '0'
If GUICtrlRead (\$Fight) = '1' Then \$R_Fight = '8'
If GUICtrlRead (\$Fight) = '2' Then \$R_Fight = '10'
If GUICtrlRead (\$Fight) = '3' Then \$R_Fight = '13'
If GUICtrlRead (\$Fight) = '4' Then \$R_Fight = '14'
If GUICtrlRead (\$Fight) = '5' Then \$R_Fight = '17'
If GUICtrlRead (\$Fight) = '6' Then \$R_Fight = '20'
If GUICtrlRead (\$Fight) = '7' Then \$R_Fight = '22'
If GUICtrlRead (\$Fight) = '8' Then \$R_Fight = '23'
If GUICtrlRead (\$Fight) = '9' Then \$R_Fight = '24'
If GUICtrlRead (\$Fight) = '10' Then \$R_Fight = '25'
If GUICtrlRead (\$Fight) > '10' Then \$R_Fight = '27'
Return \$R_Age + \$R_Power + \$R_Run + \$R_Fight
EndFunc

Func _Exit ()
Exit
EndFunc```

Hope it helps!

- John

Edit : Notes :

When using a 'GUI' always use "GUICtrlRead (\$Var)" to read inputs etc..

Never do a "For...Next" loop going to 1,000,000 because it takes forever...

Also you might want to use "OnEventMode" because its better!

Why are you putting all number inside quotes (' ') ? This makes them a string by default.

Only use the quotes for Strings, never for numbers.

Also using For-Next loops is not the smartest way to test. Just use If--elseIf--EndIf or Select--Case-EndSelect logic for that.

Jos

Edited by Jos
• 1

SciTE4AutoIt3 Full installer Download page Â  -Â Beta filesÂ  Â  Â  Â  Â  Â How to post scriptsourceÂ  Â  Â  Â  Forum Rules
Â
Live for the present,
Dream of the future,
Learn from the past.
Â

##### Share on other sites

SciTE4AutoIt3 Full installer Download page Â  -Â Beta filesÂ  Â  Â  Â  Â  Â How to post scriptsourceÂ  Â  Â  Â  Forum Rules
Â
Live for the present,
Dream of the future,
Learn from the past.
Â

##### Share on other sites

Hello

I want make Simple calculator but dont have idea how make it on AutoIt

I wane make 4 inputbox

Age [ ]

Power [ ]

Run [ ]

Fight [ ]

User overcrowd poll

==========================================

Age

If value is between 0 and 10 \$Result_Age = 1

9 and 13 \$Result_Old = 2

etc..

[ If difrent than 0 to 70 then error ]

Power

If value is between 0 and 20 \$Result_Power = 1

If value is between 21 and 40 \$Result_Power = 2

etc..

[ If difrent than 0 to 500 then error ]

Run

If value is between 0 and 10 \$Result_Run = 1

If value is between 11 and 30 \$Result_Run = 2

etc...

[ If difrent than 0 to 500 then error

Fight

If value is 0 \$Result_Fight = 0

If value is 1 \$Result_Fight = 8

If value is 2 \$Result_Fight = 10

If value is 3 \$Result_Fight = 13

etc...

[ If difrent than 0 to 50 then error ]

\$Final_Result = \$Result_Age + \$Result_Power + \$Result_Run + \$Result_Fight

this doesnt make sense:

If value is between 0 and 10 \$Result_Age = 1

9 and 13 \$Result_Old = 2

etc..

and what do u mean with etc? that the comparison should continue until 500 or whatever?

btw I modified jhon's code:

CODE

#Include <ButtonConstants.Au3>

#Include <EditConstants.Au3>

#Include <GUIConstantsEx.Au3>

#Include <StaticConstants.Au3>

#Include <WindowsConstants.Au3>

Opt ('GUIOnEventMode','1')

\$GUI = GUICreate ('Example','170','129','-1','-1','-1','128')

GUISetOnEvent (\$GUI_EVENT_CLOSE, '_Exit')

GUICtrlCreatelabel ('Age :','5','5','40','20')

_Set ('1')

\$Age = GUICtrlCreateInput ('','48','5','100','20','1')

_Set ('2')

GUICtrlCreatelabel ('Power :','5','30','51','20')

_Set ('1')

\$Power = GUICtrlCreateInput ('','62','30','100','20','1')

_Set ('2')

GUICtrlCreatelabel ('Run :','5','55','36','20')

_Set ('1')

\$Run = GUICtrlCreateInput ('','48','55','100','20','1')

_Set ('2')

GUICtrlCreatelabel ('Fight :','5','80','44','20')

_Set ('1')

\$Fight = GUICtrlCreateInput ('','56','80','100','20','1')

_Set ('2')

\$Start = GUICtrlCreateButton ('Start','50','105','70','20')

GUICtrlSetOnEvent (\$Start, '_Start')

_Set ('2')

GUISetState (@SW_SHOW, \$GUI)

While '1'

Sleep ('150')

WEnd

Func _Set (\$iCase)

Switch \$iCase

Case '1'

GUICtrlSetBkColor ('-1','-2')

GUICtrlSetFont ('-1','10','600','','Arial')

Case '2'

GUICtrlSetFont ('-1','10','600','','Arial')

EndSwitch

EndFunc

Func _Start ()

MsgBox ('0','Notice','Result : ' & _Result (), '0')

EndFunc

Func _Result ()

Local \$R_Age, \$R_Power, \$R_Run, \$R_Fight

Local \$A

;=== Age ===

;~ MsgBox(0, '', \$a)

For \$i = 0 To 40

If \$A >= 10*\$i + 1 And \$A <= 10*\$i + 10 Then

\$R_Age = \$i + 1

EndIf

Next

;=== Power ===

For \$i = 0 To 24

If \$A >= 20*\$i + 1 And \$A <= 20*\$i + 20 Then

\$R_Power = \$i + 1

EndIf

Next

MsgBox(0, '', \$R_Power)

;=== Run ===

For \$i = 0 To 40

If \$A >= 10*\$i +1 And \$A <= 10*\$i + 10 Then

\$R_Run = \$i + 1

EndIf

Next

;=== Fight ===

If Not \$a = 0 Then

\$R_Fight = 8 + \$i

EndIf

Return \$R_Age + \$R_Power + \$R_Run + \$R_Fight

EndFunc

Func _Exit ()

Exit

EndFunc

Edited by oMBRa

##### Share on other sites

Ok there you have full guidelines

Age

0-8 = 1

9-13 = 2

14-17 = 3

18-50 = 4

51-70 = 3

Power

0-20 = 1

21-40 = 2

41-60 = 3

61-80 = 4

80-100 = 6

101- max = 8

Run

0-10 = 1

11-30 = 2

31-50 = 3

51- max = 4

Fight

0 = 0

1 = 8

2 = 10

3 = 13

4 = 14

5 = 17

6 = 20

7 = 22

8 = 23

9 = 24

10 = 25

11= 26

12 = 27

##### Share on other sites

Ok there you have full guidelines

Yea... and ?

Did you make the changes I proposed yet and do some proper debugging to figure out why things go wrong or are you expecting us to do that?

Jos

SciTE4AutoIt3 Full installer Download page Â  -Â Beta filesÂ  Â  Â  Â  Â  Â How to post scriptsourceÂ  Â  Â  Â  Forum Rules
Â
Live for the present,
Dream of the future,
Learn from the past.
Â

##### Share on other sites

try this:

CODE

#include <ButtonConstants.Au3>

#include <EditConstants.Au3>

#include <GUIConstantsEx.Au3>

#include <StaticConstants.Au3>

#include <WindowsConstants.Au3>

Opt('GUIOnEventMode', '1')

\$GUI = GUICreate('Example', '170', '129', '-1', '-1', '-1', '128')

GUISetOnEvent(\$GUI_EVENT_CLOSE, '_Exit')

GUICtrlCreateLabel('Age :', '5', '5', '40', '20')

_Set('1')

\$Age = GUICtrlCreateInput('', '48', '5', '100', '20', '1')

_Set('2')

GUICtrlCreateLabel('Power :', '5', '30', '51', '20')

_Set('1')

\$Power = GUICtrlCreateInput('', '62', '30', '100', '20', '1')

_Set('2')

GUICtrlCreateLabel('Run :', '5', '55', '36', '20')

_Set('1')

\$Run = GUICtrlCreateInput('', '48', '55', '100', '20', '1')

_Set('2')

GUICtrlCreateLabel('Fight :', '5', '80', '44', '20')

_Set('1')

\$Fight = GUICtrlCreateInput('', '56', '80', '100', '20', '1')

_Set('2')

\$Start = GUICtrlCreateButton('Start', '50', '105', '70', '20')

GUICtrlSetOnEvent(\$Start, '_Start')

_Set('2')

GUISetState(@SW_SHOW, \$GUI)

While '1'

Sleep('150')

WEnd

Func _Set(\$iCase)

Switch \$iCase

Case '1'

GUICtrlSetBkColor('-1', '-2')

GUICtrlSetFont('-1', '10', '600', '', 'Arial')

Case '2'

GUICtrlSetFont('-1', '10', '600', '', 'Arial')

EndSwitch

EndFunc ;==>_Set

Func _Start()

MsgBox('0', 'Notice', 'Result : ' & _Result(), '0')

EndFunc ;==>_Start

Func _Result()

Local \$R_Age, \$R_Power, \$R_Run, \$R_Fight, \$A

Local \$nAge[5][3] = [[0, 8, 1], [9, 13, 2], [14, 17, 3], [51, 70, 4]]

Local \$nPower[5][3] = [[0, 20, 1], [21, 40, 2], [41, 60, 3], [61, 80, 4], [80, 100, 6]]

Local \$nRun[3][3] = [[0, 10, 1], [11, 30, 2], [31, 50, 3]]

Local \$nFight[13] = [0, 8, 10, 13, 14, 17, 20, 22, 23, 24, 25, 26, 27]

;=== Age ===

;~ MsgBox(0, '', \$a)

For \$i = 0 To 5

If \$A >= \$nAge[\$i][0] And \$A <= \$nAge[\$i][1] Then

\$R_Age = \$nAge[\$i][2]

ExitLoop

EndIf

Next

;=== Power ===

For \$i = 0 To 5

If \$A >= \$nPower[\$i][0] And \$A <= \$nPower[\$i][1] Then

\$R_Power = \$nPower[\$i][2]

ExitLoop

EndIf

Next

If \$R_Power = 0 Then \$R_Age = 8

;=== Run ===

For \$i = 0 To 3

If \$A >= \$nRun[\$i][0] And \$A <= \$nRun[\$i][1] Then

\$R_Run = \$nRun[\$i][2]

ExitLoop

EndIf

Next

If \$R_Run = 0 Then \$R_Run = 4

;=== Fight ===

If \$A > 12 Then

\$R_Fight = 0

Else

\$R_Fight = \$nFight[\$a]

EndIf

Return \$R_Age + \$R_Power + \$R_Run + \$R_Fight

EndFunc ;==>_Result

Func _Exit()

Exit

EndFunc ;==>_Exit

##### Share on other sites
oMBRa Your code dont calculate corectly

##### Share on other sites

can u post some examples? ( and post what it should be like too)

##### Share on other sites

```#Include <ButtonConstants.Au3>
#Include <EditConstants.Au3>
#Include <GUIConstantsEx.Au3>
#Include <StaticConstants.Au3>
#Include <WindowsConstants.Au3>
Opt ('GUIOnEventMode','1')

\$GUI = GUICreate ('Example','170','129','-1','-1','-1','128')
GUISetOnEvent (\$GUI_EVENT_CLOSE, '_Exit')
GUICtrlCreatelabel ('Age :','5','5','40','20')
_Set ('1')
\$Age = GUICtrlCreateInput ('','48','5','100','20','1')
_Set ('2')
GUICtrlCreatelabel ('Power :','5','30','51','20')
_Set ('1')
\$Power = GUICtrlCreateInput ('','62','30','100','20','1')
_Set ('2')
GUICtrlCreatelabel ('Run :','5','55','36','20')
_Set ('1')
\$Run = GUICtrlCreateInput ('','48','55','100','20','1')
_Set ('2')
GUICtrlCreatelabel ('Fight :','5','80','44','20')
_Set ('1')
\$Fight = GUICtrlCreateInput ('','56','80','100','20','1')
_Set ('2')
\$Start = GUICtrlCreateButton ('Start','50','105','70','20')
GUICtrlSetOnEvent (\$Start, '_Start')
_Set ('2')
GUISetState (@SW_SHOW, \$GUI)

While '1'
Sleep ('150')
WEnd

Func _Set (\$iCase)
Switch \$iCase
Case '1'
GUICtrlSetBkColor ('-1','-2')
GUICtrlSetFont ('-1','10','600','','Arial')
Case '2'
GUICtrlSetFont ('-1','10','600','','Arial')
EndSwitch
EndFunc

Func _Start ()
MsgBox ('0','Scouter','Your KI  =  ' & _Result (), '0')
EndFunc

Func _Result ()
Local \$R_Age, \$R_Power, \$R_Run, \$R_Fight
;=== Age ===
For \$A = '0' To '8'
If GUICtrlRead (\$Age) = \$A Then \$R_Age = '1'
Next
For \$A = '9' To '13'
If GUICtrlRead (\$Age) = \$A Then \$R_Age = '2'
Next
For \$A = '14' To '17'
If GUICtrlRead (\$Age) = \$A Then \$R_Age = '3'
Next
For \$A = '18' To '50'
If GUICtrlRead (\$Age) = \$A Then \$R_Age = '4'
Next
If GUICtrlRead (\$Age) > '50' And GUICtrlRead (\$Age) < '1000001' Then \$R_Age = '3'
;=== Power ===
For \$A = '0' To '20'
If GUICtrlRead (\$Power) = \$A Then \$R_Power = '1'
Next
For \$A = '21' To '40'
If GUICtrlRead (\$Power) = \$A Then \$R_Power = '2'
Next
For \$A = '41' To '60'
If GUICtrlRead (\$Power) = \$A Then \$R_Power = '3'
Next
For \$A = '61' To '80'
If GUICtrlRead (\$Power) = \$A Then \$R_Power = '4'
Next
For \$A = '81' To '100'
If GUICtrlRead (\$Power) = \$A Then \$R_Power = '6'
Next
If GUICtrlRead (\$Power) > '100' And GUICtrlRead (\$Power) < '1000001' Then \$R_Power = '8'
;=== Run ===
For \$A = '0' To '10'
If GUICtrlRead (\$Run) = \$A Then \$R_Run = '1'
Next
For \$A = '11' To '30'
If GUICtrlRead (\$Run) = \$A Then \$R_Run = '2'
Next
For \$A = '31' To '50'
If GUICtrlRead (\$Run) = \$A Then \$R_Run = '3'
Next
If GUICtrlRead (\$Run) > '50' And GUICtrlRead (\$Run) < '1000001' Then \$R_Run = '4'
;=== Fight ===
If GUICtrlRead (\$Fight) = '0' Then \$R_Fight = '0'
If GUICtrlRead (\$Fight) = '1' Then \$R_Fight = '8'
If GUICtrlRead (\$Fight) = '2' Then \$R_Fight = '10'
If GUICtrlRead (\$Fight) = '3' Then \$R_Fight = '13'
If GUICtrlRead (\$Fight) = '4' Then \$R_Fight = '14'
If GUICtrlRead (\$Fight) = '5' Then \$R_Fight = '17'
If GUICtrlRead (\$Fight) = '6' Then \$R_Fight = '20'
If GUICtrlRead (\$Fight) = '7' Then \$R_Fight = '22'
If GUICtrlRead (\$Fight) = '8' Then \$R_Fight = '23'
If GUICtrlRead (\$Fight) = '9' Then \$R_Fight = '24'
If GUICtrlRead (\$Fight) = '10' Then \$R_Fight = '25'
If GUICtrlRead (\$Fight) > '10' Then \$R_Fight = '27'
Return \$R_Age + \$R_Power + \$R_Run + \$R_Fight
EndFunc

Func _Exit ()
Exit
EndFunc```

That is good but this part dont work

```;=== Fight ===
If GUICtrlRead (\$Fight) = '0' Then \$R_Fight = '0'
If GUICtrlRead (\$Fight) = '1' Then \$R_Fight = '8'
If GUICtrlRead (\$Fight) = '2' Then \$R_Fight = '10'
If GUICtrlRead (\$Fight) = '3' Then \$R_Fight = '13'
If GUICtrlRead (\$Fight) = '4' Then \$R_Fight = '14'
If GUICtrlRead (\$Fight) = '5' Then \$R_Fight = '17'
If GUICtrlRead (\$Fight) = '6' Then \$R_Fight = '20'
If GUICtrlRead (\$Fight) = '7' Then \$R_Fight = '22'
If GUICtrlRead (\$Fight) = '8' Then \$R_Fight = '23'
If GUICtrlRead (\$Fight) = '9' Then \$R_Fight = '24'
If GUICtrlRead (\$Fight) = '10' Then \$R_Fight = '25'
If GUICtrlRead (\$Fight) > '10' Then \$R_Fight = '27'```

This program Calculate a "Power"

User put answer for questions Age, strange(power) , Run (RUNNING) , Fight (skill in matrial arts)

and see total score if he have 20 yrs take 4 ponit he training 6 yrs so take 20 points ...

This Code calculate corectly onlt Age + Power + Run but Fight dont work and i can't repair this part of code

##### Share on other sites

But this isnt my code...

##### Share on other sites

becaouse your code dont work corect

## Create an account

Register a new account