«phpClub» — архив тем ("тредов"), посвящённых изучению PHP и веб-технологий.
Аноним 2018/07/30 11:16:38  №1237663 1
В общем я заебался и не понимаю логики.

Есть массив примерно такой: $array = [1,2,3,4,5,]

Как вывести сумму некоторых его элементов?
например 1 и 5го?

Эта ебучая array_sum может складывать только все элементы.

Как складывать отдельные обращаясь к ним по ключам?

Ответы: >>1237667
Аноним 2018/07/30 11:19:58  №1237667 2
Ответы: >>1237669 >>1237673
Аноним 2018/07/30 11:23:33  №1237673 3
>>1237667
Пиздец, шатала это все.

Так просто это было и даже это я не смог сделать сам.

Ебал я нахуй это все.
Мой удел кидать мешки и коробки похоже.
Аноним 2018/07/30 14:13:01  №1237755 4
>>1237673

Если ты не понимаешь тему, всегда можно попросить дополнительную задачку. Вот, например, тебе задачка на массивы:

Дан массив слов. Надо вывести их в несколько строк, так, что в каждой строке собраны слова, начинающиеся с одной и той же буквы.

На входе: список слов: кот, собака, кит, сова
На выходе:

- кот, кит
- собака, сова

Если решишь эту, можешь попросить еще задачку. И так пока не начнешь понимать, как работать с массивами.
Ответы: >>1237823 >>1243210
Аноним 2018/07/30 16:53:25  №1237823 5
>>1237755
$array = ['кот', 'собака', 'кит', 'сова'];

$a = $array[0] . $array[2];
$b = $array[1] . $array[3];

echo $a;
echo $b;

Только я не пойму как разделение между словами сделать а то у меня слитно все выводится.
Ответы: >>1237831 >>1237877
Аноним 2018/07/30 17:06:33  №1237831 6
>>1237823
>Только я не пойму как разделение между словами сделать а то у меня слитно все выводится.
Вот с костылями, например:
$a = $array[0] . ' ' . $array[2];
$b = $array[1] . ' ' . $array[3];

А вот без костылей:
$a = "$array[0] $array[2]";
$b = "$array[1] $array[3]";
Ответы: >>1237833
Аноним 2018/07/30 17:09:14  №1237833 7
>>1237831
Точно, не то использовал, надо было . ' ' . а не просто точку.

Спс.
Ответы: >>1237853
Аноним 2018/07/30 17:33:19  №1237853 8
>>1237833
А ты понимаешь в чем разница?
Ответы: >>1237986
Аноним 2018/07/30 17:58:01  №1237877 9
>>1237823

Нет, у тебя не решение задачи, так как твой код работает только с указанными в задаче входными данными. А должен работать с любыми. То есть если я поменяю список животных на входе, программа должна сама их отсортировать, а у тебя этого нету. Ты вручную их отсортировал и прописал в коде номера.

Надо, чтобы я мог например прописать "заяц, волк, ворон" и он сам их отсортировал в правильном порядке.

Чтобы вывести названия из массива через запятую, можно использовать implode().
Ответы: >>1237988
Аноним 2018/07/30 20:05:59  №1237986 10
Аноним 2018/07/30 20:06:56  №1237988 11
>>1237877
>То есть если я поменяю список животных на входе, программа должна сама их отсортировать, а у тебя этого нету.

Даже не представляю как это сделать.
Ответы: >>1238006
Аноним 2018/07/30 20:41:55  №1238006 12
>>1237988

Это не так сложно, если разобраться. Нам понадобится массив, где ключом является первая буква, а значением - массив слов на эту букву, вот такого вида:

$byLetter = [
'к' => ['кот'],
'с' => ['собака', 'сова']
];

- мы берем очередное слово из входных данных
- определяем его первую букву
- проверяем, есть ли в byLetter ключ с такой буквой
- если нет - создаем его и кладем туда пустой массив
- добавляем слово в массив под этим ключом

Если мы сделаем так для каждого входного слова, то получим массив, где слова сгруппированы по буквам. Остается только пройтись по нему циклом и вывести группы слов.

Задавай вопросы, если что-то непонятно.

Попроси задачку посложнее, когда решишь.
Ответы: >>1238138
Аноним 2018/07/31 06:48:24  №1238138 13