Структуры данных: массивы (PHP): различия между версиями
Перейти к навигации
Перейти к поиску
(не показаны 3 промежуточные версии этого же участника) | |||
Строка 24: | Строка 24: | ||
=== Сделать массив из первых n нечётных чисел === | === Сделать массив из первых n нечётных чисел === | ||
<syntaxhighlight lang="php" line> | <syntaxhighlight lang="php" line> | ||
+ | <?php | ||
+ | $a = []; | ||
+ | $count = 10; | ||
+ | for($i = 0; $i < $count; $i++) { | ||
+ | $item = ($i + 1) * 2 - 1; | ||
+ | $a[] = $item; | ||
+ | echo $item . " "; | ||
+ | } | ||
+ | echo "<br>"; | ||
</syntaxhighlight> | </syntaxhighlight> | ||
=== Сгенерировать массив случайных чисел === | === Сгенерировать массив случайных чисел === | ||
<syntaxhighlight lang="php" line> | <syntaxhighlight lang="php" line> | ||
+ | <?php | ||
+ | $a = []; | ||
+ | $count = 10; | ||
+ | for($i = 0; $i < $count; $i++) { | ||
+ | $item = rand(-100, 100); | ||
+ | $a[] = $item; | ||
+ | echo $item . " "; | ||
+ | } | ||
+ | echo "<br>"; | ||
</syntaxhighlight> | </syntaxhighlight> | ||
=== Вывести все содержащиеся в массиве нечетные числа в порядке возрастания их индексов, а также их количество === | === Вывести все содержащиеся в массиве нечетные числа в порядке возрастания их индексов, а также их количество === | ||
<syntaxhighlight lang="php" line> | <syntaxhighlight lang="php" line> | ||
+ | <?php | ||
+ | $a = []; | ||
+ | $count = 10; | ||
+ | $oddCount = 0; | ||
+ | for($i = 0; $i < $count; $i++) { | ||
+ | $item = rand(-100, 100); | ||
+ | $a[] = $item; | ||
+ | echo $item . " "; | ||
+ | } | ||
+ | echo "<br>"; | ||
+ | |||
+ | for($i = 0; $i < $count; $i++) { | ||
+ | if (abs($a[$i] % 2) == 1) { | ||
+ | echo $a[$i] . " "; | ||
+ | $oddCount++; | ||
+ | } | ||
+ | } | ||
+ | echo "<br>"; | ||
+ | |||
+ | echo "Odd numbers count = " . $oddCount . "<br>"; | ||
</syntaxhighlight> | </syntaxhighlight> | ||
=== Разделить массив на два: на положительные+ноль и отрицательные числа === | === Разделить массив на два: на положительные+ноль и отрицательные числа === | ||
<syntaxhighlight lang="php" line> | <syntaxhighlight lang="php" line> | ||
+ | <?php | ||
+ | $a = []; | ||
+ | $pos = []; | ||
+ | $neg = []; | ||
+ | $count = 10; | ||
+ | |||
+ | for($i = 0; $i < $count; $i++) { | ||
+ | $item = rand(-100, 100); | ||
+ | $a[] = $item; | ||
+ | echo $item . " "; | ||
+ | if ($item >= 0) { | ||
+ | $pos[] = $item; | ||
+ | } else { | ||
+ | $neg[] = $item; | ||
+ | } | ||
+ | } | ||
+ | echo "<br>"; | ||
+ | |||
+ | foreach ($pos as $item) { | ||
+ | echo $item . " "; | ||
+ | } | ||
+ | echo "<br>"; | ||
+ | foreach ($neg as $item) { | ||
+ | echo $item . " "; | ||
+ | } | ||
+ | echo "<br>"; | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Текущая версия на 10:07, 7 июля 2021
Массивы
Задачи
Вывод всех целых чисел массива через пробел циклом For
1 <?php
2 $a = [1, 5, 8, 3, 9, 23, 15];
3
4
5 for($i = 0; $i < count($a); $i++) {
6 echo $a[$i] . " ";
7 }
8 echo "<br>";
9
10 foreach ($a as $item) {
11 echo $item . " ";
12 }
13 echo "<br>";
Сделать массив из первых n нечётных чисел
1 <?php
2 $a = [];
3 $count = 10;
4
5 for($i = 0; $i < $count; $i++) {
6 $item = ($i + 1) * 2 - 1;
7 $a[] = $item;
8 echo $item . " ";
9 }
10 echo "<br>";
Сгенерировать массив случайных чисел
1 <?php
2 $a = [];
3 $count = 10;
4
5 for($i = 0; $i < $count; $i++) {
6 $item = rand(-100, 100);
7 $a[] = $item;
8 echo $item . " ";
9 }
10 echo "<br>";
Вывести все содержащиеся в массиве нечетные числа в порядке возрастания их индексов, а также их количество
1 <?php
2 $a = [];
3 $count = 10;
4 $oddCount = 0;
5
6 for($i = 0; $i < $count; $i++) {
7 $item = rand(-100, 100);
8 $a[] = $item;
9 echo $item . " ";
10 }
11 echo "<br>";
12
13 for($i = 0; $i < $count; $i++) {
14 if (abs($a[$i] % 2) == 1) {
15 echo $a[$i] . " ";
16 $oddCount++;
17 }
18 }
19 echo "<br>";
20
21 echo "Odd numbers count = " . $oddCount . "<br>";
Разделить массив на два: на положительные+ноль и отрицательные числа
1 <?php
2 $a = [];
3 $pos = [];
4 $neg = [];
5 $count = 10;
6
7 for($i = 0; $i < $count; $i++) {
8 $item = rand(-100, 100);
9 $a[] = $item;
10 echo $item . " ";
11 if ($item >= 0) {
12 $pos[] = $item;
13 } else {
14 $neg[] = $item;
15 }
16 }
17 echo "<br>";
18
19 foreach ($pos as $item) {
20 echo $item . " ";
21 }
22 echo "<br>";
23
24 foreach ($neg as $item) {
25 echo $item . " ";
26 }
27 echo "<br>";