Что нового

Присвоение значения переменной.

MrGep

Новичок
Сообщения
74
Репутация
1
Версия AutoIt: 3.

Описание: Доброе утро всем)) Возникла странная проблема)

Код:
Func _name($n,$k)
$k = 3
$k += 1
if $n >= $k then
   sleep(1000)
  return $n = 0
 EndIf
endFunc


Не могу понять, почему значение $n стабильно держится на нуле. Необходимо, чтобы $n обнулилось, при достижении значения $k

Примечания:
 
Автор
M

MrGep

Новичок
Сообщения
74
Репутация
1
Я значения в файл записывал. Просто сейчас удалил, чтобы облегчить читабельность)
 

Ganibal95

GreenBytes
Сообщения
877
Репутация
240
Код:
Func _name(ByRef $n,$k)
$k = 3
$k += 1
if $n >= $k then
   sleep(1000)
  $n = 0
 EndIf
endFunc
 

C2H5OH

AutoIT Гуру
Сообщения
1,473
Репутация
333
Код:
$x=2
_name($x,1)
MsgBox(0, "", "x=" & $x)


и?
 

inververs

AutoIT Гуру
Сообщения
2,135
Репутация
465
Зачем использовать второй параметр в функии если он ($k) все время равен 4?
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,322
MrGep,
ИМХО, чтобы получить ответ на Ваш вопрос, Вам надо кусок рабочего кода показать.
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
967
MrGep
Код:
ConsoleWrite(_name(5,1))
ConsoleWrite(_name(1,2))
ConsoleWrite(_name(10,3))

Func _name($n,$k)
	; вызов функции "начало"
	$k = 3 ; присваиваем "$k" значение "3"
	$k += 1 ; прибавляем к "$k" значение "1"
	; итог "$k" равно "4"
	If $n >= $k Then ; проверка условия "ЕСЛИ $n >= $k ТОГДА"
		Sleep(1000) ; спим 1000 мс
		$n = 0 ; присвоить "0" НО!!!  НЕ ВЕРНУТЬ!!! "$n"
		;Return $n = 0 ; присвоить "0" И!!!  ВЕРНУТЬ!!! "$n" (Ваша ошибка)
	EndIf
	
	Return $n ; ВЕРНУТЬ!!! "$n"
	; вызов функции "конец"
EndFunc
 
Верх