Задача по массивам

87
26 марта 2022, 19:10

Всем привет!

Только учусь прогать, мне нужно написать программу, которая заполнит массив $triangle следующим обарзом: в первой ячейке должен находиться массив из одного элемента — единицы во второй ячейке должен находиться массив из двух элементов — двоек в третьей ячейке — массив из трех троек

Всего в этом массив должно быть 9 элементов.

После того, как заполните этот массив, нужно вывести его на экран.

Попробовал так, но ничего не работает.

<?php
for ($i=1; $i<=9; $i++)
{
    for ($j=1; $j<=$i; $j++)
        {
        $number[]=$i
        }  
}

$triangle=[$number[$i]]
for ($k=0;$k<10;$k++)
{
    echo $triangle[$k];
    echo "<br>";
}
Answer 1
for($i=0; $i<=9; $i++){
     for ($j=1; $j<=$i; $j++){
        $triangle[$i][] = $i;
    }   
}
print_r($triangle);

Вывод:

Array
(
    [1] => Array
        (
            [0] => 1
        )
    [2] => Array
        (
            [0] => 2
            [1] => 2
        )
    [3] => Array
        (
            [0] => 3
            [1] => 3
            [2] => 3
        )
    [4] => Array
        (
            [0] => 4
            [1] => 4
            [2] => 4
            [3] => 4
        )
    [5] => Array
        (
            [0] => 5
            [1] => 5
            [2] => 5
            [3] => 5
            [4] => 5
        )
    [6] => Array
        (
            [0] => 6
            [1] => 6
            [2] => 6
            [3] => 6
            [4] => 6
            [5] => 6
        )
    [7] => Array
        (
            [0] => 7
            [1] => 7
            [2] => 7
            [3] => 7
            [4] => 7
            [5] => 7
            [6] => 7
        )
    [8] => Array
        (
            [0] => 8
            [1] => 8
            [2] => 8
            [3] => 8
            [4] => 8
            [5] => 8
            [6] => 8
            [7] => 8
        )
    [9] => Array
        (
            [0] => 9
            [1] => 9
            [2] => 9
            [3] => 9
            [4] => 9
            [5] => 9
            [6] => 9
            [7] => 9
            [8] => 9
        )
)
Answer 2

как альтернативный вариант для изучения.

Строим массив:

$data = array_map(function($i){
                    return array_fill(0, $i, $i);
                }, range(1,9));

объединяем в строку и выводим

$result = implode("\n", array_map('implode', $data));
print_r($result);

получаем

1
22
333
4444
55555
666666
7777777
88888888
999999999
READ ALSO
Не отображает блок при условном операторе, переменная оказывается пуста

Не отображает блок при условном операторе, переменная оказывается пуста

Подскажите пожалуйстаСделал сокращённую форму для примера

76
Как работает php

Как работает php

На хабре нашел вот такую информацию:

123
Не работает Функция changeFirstSymbol. Хэлп Гайс

Не работает Функция changeFirstSymbol. Хэлп Гайс

Всем привет! Есть задачка: Дана строкаСделайте заглавным первый символ каждого слова этой строки

269
Изменение состояния кнопок при клике на них при помощи JS

Изменение состояния кнопок при клике на них при помощи JS

Есть массив из кнопок playПри клике на play ему добавляется класс clicked, при повторном клике класс убирается

154