2016-04-11 5 views
0

Я пытаюсь добавить в Autohotkey ряд последовательных нечетных чисел (13-1001).autohotkey: добавить последовательный диапазон чисел

Есть ли формула, которая будет охватывать эту проблему?

Это то, что у меня есть:

a:=13 
b:=1001 
s1:=((b+1)/2)**2 
s2:=((a-1)/2)**2 
s:=s1-s2 
S3:=z+s 
Msgbox, 
( 
Step 6 Results: 
Z is %z% 
First # is %a% 
Last # is %b% 
Sum of consecutive odd numbers (13-1001) is %s% 
Z+Sum is %s3% 
+0

Откуда взялось 'z' и что эта формула имеет отношение к Autohotkey? – 2501

+0

Я отвечаю на ряд вопросов, которые помогут мне узнать больше о Autohotkey. Оригинальный вопрос: «Добавить все нечетные числа от 13-1001 (включительно) до Z» Z из предыдущего вопроса. Z = 3 – Fafth

+0

Какие проблемы вы столкнулись во время работы над своим примером? Как данный код относится к проблеме? Пожалуйста, дополните. – 2501

ответ

0

Форвард

Эта логика предполагает следующее:

  • Start меньше End
  • Оба Start и End нечетные числа

Сырье Пример

Start := 13 
, End := 1001 

, SumOfOddNumbers := (((End + 1)^2)/4) - ((Start - 1)^2)/4)) 

MsgBox, % "Sum of all odd numbers from " . Start . " to " . End . " is " . SumOfOddNumbers 

Выходной

Sum of all odd numbers from 13 to 1001 is 250965 

Как функция

funSumOfOddNumbers(Start, End) { 
    Temp := (((End + 1)^2)/4) - ((Start - 1)^2)/4)) 
    return, % Temp 
    } ; end function funSumOfOddNumbers 

MsgBox, % "Sum of all odd numbers from 49 to 4009 is " . funSumOfOddNumbers(49, 4009) 

Выход

Sum of all odd numbers from 49 to 4009 is 4019449