Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.87/15: Рейтинг темы: голосов - 15, средняя оценка - 4.87
Заблокирован

Простая но сложная задача-ПОМОГИТЕ! массивы на php

23.10.2013, 17:27. Показов 3190. Ответов 17
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
вот задали, а я только учусь php

ВОТ ОНО:
найти сумму элементов двумерного массива:
1)-по строке,
2)- по столбцу,
3)-по диагонали,
4)-вывести двумерный массив на экран ввиде таблицы, если значение элемента отрицательно, ячейка должна быть синей, если положительно - красной,
5)- сформировать массив элементами которого будут квадраты соотв индексов


cоздала пока вот echo '<br>';
$arr = array( 1=> array('author' => 'Л.Толстой', 'title' => 'Война и мир', 'year' => 2005 ),
2=> array('author' => 'Н.Гоголь', 'title' => 'Мертвые души', 'year' => 2005),
3=> array('author' => 'Г.Уэллс', 'title' => 'Машина времени', 'year' => 2009));

print_r($arr);
понимаю , что делается циклами, но как нАписать условие - Непойму


подскажите хотябы первое как делать, ПЛИИИИЗ, скоро сдаваться...
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
23.10.2013, 17:27
Ответы с готовыми решениями:

Простая, но и сложная задача
Дано х, у принадлежат Х = {-10, -9, …, 0, 1, …, 9, 10}. Какие из указанных ниже отношений на множестве Х являются функциями? Дать...

Вроде простая задача и в то же время сложная
Вот условие: написать программу позволяющую выводить числа начиная от 0.000000001 до 10000000000 с некоторым шагом. Как это можно...

простая задачка , но сложная для меня, помогите плз)
Ввести n строк с консоли. Упорядочить и вывести строки в порядке возрастания их длин, а также значения их длин. Понимаю что нужно...

17
 Аватар для Ukkas
153 / 126 / 39
Регистрация: 02.05.2012
Сообщений: 573
23.10.2013, 17:30
fiedorienko, Вот такой вопрос, а какую сумму можно найти в массиве про Гоголя?
1
Заблокирован
23.10.2013, 17:33  [ТС]
Цитата Сообщение от Ukkas Посмотреть сообщение
fiedorienko, Вот такой вопрос, а какую сумму можно найти в массиве про Гоголя?
я забыла заменить))))))))))

Добавлено через 50 секунд
$var = Array(["2", "3", "4", "5", "6"], ["7", "8", "9", "0", "4"]);
0
Марсианин
 Аватар для MarlboroRed
87 / 87 / 22
Регистрация: 11.10.2012
Сообщений: 333
23.10.2013, 17:38
Цитата Сообщение от fiedorienko Посмотреть сообщение
я забыла заменить))))))))))

Добавлено через 50 секунд
$var = Array(["2", "3", "4", "5", "6"], ["7", "8", "9", "0", "4"]);
А как из "2мерного" массива размером 5х2 определить диагональ?
1
 Аватар для Ukkas
153 / 126 / 39
Регистрация: 02.05.2012
Сообщений: 573
23.10.2013, 17:46
PHP
1
2
3
4
5
6
7
8
9
10
11
$var = Array(["2", "3", "4", "5", "6"], ["7", "8", "9", "0", "4"]);
$summ_stroka = 0;
$n_stroka = 1; //переменная в которой задается номер строки
for ($i=0; $i < count($var); $i++){
   if ($i==$n_stroka){
      for ($j=0; $j < count($var[$i]); $j++){
         $summ_stroka=$summ_stroka+$var[$i][$j];
      }
   }
}
echo $summ_stroka;
1
 Аватар для JxF-TEAM
122 / 122 / 27
Регистрация: 22.10.2013
Сообщений: 425
23.10.2013, 18:00
Цитата Сообщение от fiedorienko Посмотреть сообщение

найти сумму элементов двумерного массива:
1)-по строке,
2)- по столбцу,
3)-по диагонали,
4)-вывести двумерный массив на экран ввиде таблицы, если значение элемента отрицательно, ячейка должна быть синей, если положительно - красной,
5)- сформировать массив элементами которого будут квадраты соотв индексов


5 поясните...
в 4 0 как положительное?( отрицательных в примере вроде вообще нету)
0
Марсианин
 Аватар для MarlboroRed
87 / 87 / 22
Регистрация: 11.10.2012
Сообщений: 333
23.10.2013, 18:00
Ukkas, можно проще
PHP
1
2
3
$var = Array(array("2", "3", "4", "5", "6"), array("7", "8", "9", "0", "4"));
$row=0;
echo array_sum($var[$row]);
$row - номер строки
1
Заблокирован
23.10.2013, 18:04  [ТС]
Цитата Сообщение от MarlboroRed Посмотреть сообщение
А как из "2мерного" массива размером 5х2 определить диагональ?
это буду думать... где бы на примерах все порассматривать?

Добавлено через 3 минуты
Цитата Сообщение от MarlboroRed Посмотреть сообщение
Ukkas, можно проще
PHP
1
2
3
$var = Array(array("2", "3", "4", "5", "6"), array("7", "8", "9", "0", "4"));
$row=0;
echo array_sum($var[$row]);
$row - номер строки
они хотят решение с помощью циклов, блин
0
 Аватар для Ukkas
153 / 126 / 39
Регистрация: 02.05.2012
Сообщений: 573
23.10.2013, 18:07
Цитата Сообщение от fiedorienko Посмотреть сообщение
это буду думать... где бы на примерах все порассматривать?

Добавлено через 3 минуты

они хотят решение с помощью циклов, блин
Вот я именно с циклами написала
1
Марсианин
 Аватар для MarlboroRed
87 / 87 / 22
Регистрация: 11.10.2012
Сообщений: 333
23.10.2013, 18:18
Главная диагональ квадратной матрицы — диагональ, которая проходит через верхний левый и нижний правый углы.
зи википедии

Ключевое слово "квадратной", тоесть: 2х2, 3х3, 4х4 и т.д. У вас же матрица 5х2.

Добавлено через 10 минут
Цитата Сообщение от Ukkas Посмотреть сообщение
$var = Array(["2", "3", "4", "5", "6"], ["7", "8", "9", "0", "4"]);
$summ_stroka = 0;
$n_stroka = 1; //переменная в которой задается номер строки
for ($i=0; $i < count($var); $i++){
* *if ($i==$n_stroka){
* * * for ($j=0; $j < count($var[$i]); $j++){
* * * * *$summ_stroka=$summ_stroka+$var[$i][$j];
* * * }
* *}
}
echo $summ_stroka;
А зачем проходить $i лишний раз, если можно сразу указатать на строку?
PHP
1
2
3
4
5
6
$var = Array(array("2", "3", "4", "5", "6"), array("7", "8", "9", "0", "4"));
$row=1;
foreach ($var[$row] as $value) {
    $sum +=$value;
}
echo $sum;
1
 Аватар для JxF-TEAM
122 / 122 / 27
Регистрация: 22.10.2013
Сообщений: 425
23.10.2013, 18:19
Цитата Сообщение от fiedorienko Посмотреть сообщение
вот задали, а я только учусь php

ВОТ ОНО:
найти сумму элементов двумерного массива:
1)-по строке,
2)- по столбцу,
3)-по диагонали,
4)-вывести двумерный массив на экран ввиде таблицы, если значение элемента отрицательно, ячейка должна быть синей, если положительно - красной,
5)- сформировать массив элементами которого будут квадраты соотв индексов

1 - по строке?

всмысле по 1-й строке сумму ..

2- по столбцу?

по 1-у столбцу?
0
Марсианин
 Аватар для MarlboroRed
87 / 87 / 22
Регистрация: 11.10.2012
Сообщений: 333
23.10.2013, 20:37
Цитата Сообщение от fiedorienko Посмотреть сообщение
2)- по столбцу
PHP
1
2
3
4
5
$var = Array(array("2", "3", "4", "5", "6"), array("7", "8", "9", "0", "4"));
$col=2; //номер столбца (нумерация с 0)
for ($i=0;$i<count($var);$i++)
        $sum += $var[$i][$col]; 
echo $sum;
Добавлено через 45 минут
Цитата Сообщение от fiedorienko Посмотреть сообщение
3)-по диагонали,
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
$var = array(array(1,2,0),array(4,5,6),array(7,8,9)); //квадратный массив 3х3
 
/*
 * Функция sumDiag принимает 2 параметра:
 * 1. массив;
 * 2. укзаывается какую диагональ считать. В матрице их 2, главная и вспомагательная
 */
function sumDiag($arr,$diagonal='main'){
    for ($i=0;$i<count;$i++)
// Если количество столбцов не равно количеству строк вернуть сообщение о не верном массиве
        if (count($arr)!==count($arr[$i]))
            return 'Массив не квадратный';
 
//считаем главную диагональ
    if ($diagonal=='main')
        for ($i=0;$i<count($arr);$i++)
            $sum += $arr[$i][$i];
        
//считаем вспомагательную диагональ
    if ($diagonal=='secondary'){
        $j=  count($arr)-1;
        for ($i=0;$i<count($arr);$i++){
            $sum +=$arr[$i][$j];
            $j--;
        }
    }
    
    return $sum; //возвращаем регультат работы функции
}
 
echo sumDiag($var, 'secondary'); // значение вспомагательной диагонали
echo "<br>";
echo sumDiag($var) //значение главной диагонали
Добавлено через 15 минут
Опс, в 9й строке сразу после начала функции допустил ошибку.
Вместо этого
Цитата Сообщение от MarlboroRed Посмотреть сообщение
for ($i=0;$i<count;$i++)
необходимо это:
PHP
1
for ($i=0;$i<count($arr);$i++)
Добавлено через 52 минуты
Цитата Сообщение от fiedorienko Посмотреть сообщение
5)- сформировать массив элементами которого будут квадраты соотв индексов
Насколько я понял, не стоит начинать с нулевого элемента
$ecount - размер создаваемого массива.
PHP
1
2
3
4
5
$ecount = 5;
for ($i=1;$i<=$ecount;$i++){
     $arr[$i]=$i*$i;
     echo 'идекс '.$i. ' содержит '.$arr[$i].'<br>';
}
1
Заблокирован
23.10.2013, 20:37  [ТС]
Цитата Сообщение от JxF-TEAM Посмотреть сообщение
1 - по строке?

всмысле по 1-й строке сумму ..

2- по столбцу?

по 1-у столбцу?
не знаю, все честно переписала
0
 Аватар для JxF-TEAM
122 / 122 / 27
Регистрация: 22.10.2013
Сообщений: 425
23.10.2013, 20:41
Цитата Сообщение от fiedorienko Посмотреть сообщение
не знаю, все честно переписала
перепешите еще раз абсолютно все что там написано и массив если давался
0
Заблокирован
23.10.2013, 20:51  [ТС]
Цитата Сообщение от JxF-TEAM Посмотреть сообщение
перепешите еще раз абсолютно все что там написано и массив если давался
найти сумму элементов двумерного массива по строке/столбцу.
найти сумму элементов двумерного массива по диагонали.
вывод двумерного массива на экран в виде таблицы. если значения элемента массива отрицательные , ячейка должна быть синей, если положительные - красный.
сформировать массив,элементами которого будут квадраты соответствующих индексов.

все.
0
Марсианин
 Аватар для MarlboroRed
87 / 87 / 22
Регистрация: 11.10.2012
Сообщений: 333
23.10.2013, 20:56
Цитата Сообщение от fiedorienko Посмотреть сообщение
вывод двумерного массива на экран в виде таблицы. если значения элемента массива отрицательные , ячейка должна быть синей, если положительные - красный.
А 0 к чему относить? В этом примере я отнес к положительным
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<html>
    <head>
        <title>Table</title>
    </head>
    <body>
        <table border="1">
            <?
            $var = Array(array("2", "3", "-4", "5", "6"), array("7", "8", "9", "0", "4"));
            foreach ($var as $row) {
                echo "<tr>\n";
                foreach ($row as $val) {
                    if ($val<0) $bgc='blue'; else $bgc='red';
                    echo "<td style='width: 20px; background-color: ".$bgc.";'>".$val."</td>\n";
                }
                echo "</tr>\n";
            }
            ?>
        </table>
    </body>
</html>
Добавлено через 1 минуту
Вспомнил за вечер первый курс. Снова хочу учиться
1
 Аватар для JxF-TEAM
122 / 122 / 27
Регистрация: 22.10.2013
Сообщений: 425
23.10.2013, 20:57
Цитата Сообщение от fiedorienko Посмотреть сообщение
найти сумму элементов двумерного массива по строке/столбцу.
я предполагаю что номер строки / столбца должен гдето вводится?
0
Заблокирован
24.10.2013, 00:10  [ТС]
Цитата Сообщение от JxF-TEAM Посмотреть сообщение
я предполагаю что номер строки / столбца должен гдето вводится?
наверняка
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
24.10.2013, 00:10
Помогаю со студенческими работами здесь

Простая сложная задача по чтению файла и использованию switch
Здравствуйте. Есть простая задача, которая ставит меня в тупик. Есть конструктор, в нем семь параметров, которые должны быть прочитаны с...

Задача простая на массивы
Подсчитать произведение элементов одномерного массива , заданного генератором случайных чисел

Внимание! Знатокам css сложная простая задачка!
Есть сайт, playgrad.ru Там так интресно замудрено все сделано - вообщем, за стиль ссылок отвечают следующие классы: a...

Простая авторизация на php и mysql, очень простая!
В базе данных таблица с двумя строками: id, user, password. На странице есть два поля для ввода (имени и пароля) и кнопка входа. По...

Сложная zadacha на массивы,(надо на зачет) :)
Пусть известны данные многолетних наблюдений за количеством выпавших осадков на определенной территории в каждый из дней периода. Они...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
18
Ответ Создать тему
Новые блоги и статьи
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru