Jump to content

Best Syntax with OR


Go to solution Solved by water,

Recommended Posts

Posted

Hi, what is the best practice to write the next code in autoit (or any language)?:

for $ii = 1 To 81
   
   ;1+6*0 , 1+6*1, 1+6*2, 1+6*3, ...
   If $ii = 1 or $ii = 7 or $ii = 13 or $ii = 19 or $ii = 25 or $ii = 31 or $ii = 37 or $ii = 43 _
      or $ii = 49 or $ii = 55 or $ii = 61 or $ii = 67 or $ii = 73 or $ii = 79 Then
   EndIf
   
   ;any numbers
   If $ii = 1 or $ii = 24 or $ii = 37 or $ii = 76 Then
   EndIf
   
Next

I would like to know if is possible to use an array to simplify the sintax.

Something that looks like this

$arr=[1,7,13,19,25]

for $ii = 1 To 81
   
   If $ii = $arr Then
   EndIf
   
Next

Of course I could use a 2nd loop to do this:

$arr=[1,7,13,19,25]

for $ii = 1 To 81
   
   for $jj = 0 To 4
      If $ii = $arr[$jj] Then
      EndIf
   Next
   
Next

But I want to know which is the clearest and simplest way to write it. :)

  • Solution
Posted (edited)

Switch $ii
    Case 1, 7 .. 79
        ; Statements
    Case Else
        ; Statements
EndSwitch

Edited by water

My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (NEW 2024-07-28 - Version 1.6.3.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example Scripts
OutlookEX (2021-11-16 - Version 1.7.0.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX_GUI (2021-04-13 - Version 1.4.0.0) - Download
Outlook Tools (2019-07-22 - Version 0.6.0.0) - Download - General Help & Support - Wiki
PowerPoint (2021-08-31 - Version 1.5.0.0) - Download - General Help & Support - Example Scripts - Wiki
Task Scheduler (2022-07-28 - Version 1.6.0.1) - Download - General Help & Support - Wiki

Standard UDFs:
Excel - Example Scripts - Wiki
Word - Wiki

Tutorials:
ADO - Wiki
WebDriver - Wiki

 

Posted

:)

My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (NEW 2024-07-28 - Version 1.6.3.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example Scripts
OutlookEX (2021-11-16 - Version 1.7.0.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX_GUI (2021-04-13 - Version 1.4.0.0) - Download
Outlook Tools (2019-07-22 - Version 0.6.0.0) - Download - General Help & Support - Wiki
PowerPoint (2021-08-31 - Version 1.5.0.0) - Download - General Help & Support - Example Scripts - Wiki
Task Scheduler (2022-07-28 - Version 1.6.0.1) - Download - General Help & Support - Wiki

Standard UDFs:
Excel - Example Scripts - Wiki
Word - Wiki

Tutorials:
ADO - Wiki
WebDriver - Wiki

 

Posted

The OP doesn't want all numbers from 7 to 79, just the multiples of 6.

I was just to lazy to type all numbers :ermm:

My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (NEW 2024-07-28 - Version 1.6.3.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example Scripts
OutlookEX (2021-11-16 - Version 1.7.0.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX_GUI (2021-04-13 - Version 1.4.0.0) - Download
Outlook Tools (2019-07-22 - Version 0.6.0.0) - Download - General Help & Support - Wiki
PowerPoint (2021-08-31 - Version 1.5.0.0) - Download - General Help & Support - Example Scripts - Wiki
Task Scheduler (2022-07-28 - Version 1.6.0.1) - Download - General Help & Support - Wiki

Standard UDFs:
Excel - Example Scripts - Wiki
Word - Wiki

Tutorials:
ADO - Wiki
WebDriver - Wiki

 

Posted

I didnt know about the Mod function before, thats perfect for the job :D
Anyway since the numbers for switch syntax are not a lot (in this case), I will use switch, but Mod will be a nice function for other things.

Thanks ^_^

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...