Автокликер Clickermann :: Форум

Основной раздел => Общие вопросы => Topic started by: algirdas on August 20, 2017, 08:18:45 PM

Title: задание элементов массива строкой
Post by: algirdas on August 20, 2017, 08:18:45 PM
Надо в 7 массивах задать по шесть элементов значений, это 7*6 =42 строк вида $M[0]=a, $M[1]=b,...
Если бы можно было бы присваивать значения строкой в виде $M =[a, b, ...] - хватило бы 7 строк текста.
Title: Re: задание элементов массива строкой
Post by: open_78 on August 20, 2017, 08:27:19 PM
Что-же вы все справку ленитесь читать.
Вот это чудо:
Code: (clickermann) [Select]
STRSEPARATE("a:b:c:d:e:f",":",$M)
STRSEPARATE("1:2:3:4:5:6",":",$M1)
STRSEPARATE("a1:b2:c3:d4:e5:f6",":",$M2)
// и т. д.
Title: Re: задание элементов массива строкой
Post by: algirdas on August 20, 2017, 09:20:55 PM
большое спасибо, этот раздел в справке относил только к строкам, массивы не приметил
Title: Re: задание элементов массива строкой
Post by: algirdas on August 20, 2017, 10:39:13 PM
Вообще из help не очевидно, что входная строка может быть не только из строковых переменных, но и чисел.
Разбираясь с эти вопросом дошел до ручки: пример из help не работает
$var[0] = 1
$var[1] = 2
$var[2] = 3
$result = 0
for($i, $i < 3)
   $result = $result + $var[ $i+1 ]
end_cyc
print( $result )
// ошибка при интерпретации строки
 $result = $result + $var[ $i+1 ]
весь скрипт взят копированием из help
что может быть ?
Title: Re: задание элементов массива строкой
Post by: dramster on August 20, 2017, 11:15:46 PM
в справке ошибка. тут подробнее, почитай http://crapware.aidf.org/forum/index.php?topic=3104.msg20718#msg20718

и ты вроде и из справки с ошибкой скопировал, в справке [ $i-1 ], а у тебя плюс. и так и так не правильно  :D

правильный вариант
Code: (clickermann) [Select]
// массив из трех элементов
$var[0] = 1
$var[1] = 2
$var[2] = 3

$result = 0 // накапливаемая сумма

// перебор через цикл элементов массива [0 .. 2]
for($i=0, $i < 3)
  $result = $result + $var[ $i ]
end_cyc

// вывод суммы элементов
print( $result )
halt
Title: Re: задание элементов массива строкой
Post by: algirdas on August 20, 2017, 11:46:05 PM
Спасибо, вот и день не зря прожит ...