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

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

23.10.2013, 17:27. Показов 3115. Ответов 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
Ответ Создать тему
Новые блоги и статьи
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка. Рецензия / Мнение Это мой обзор планшета X220 с точки зрения школьника. Недавно я решила попытаться уменьшить свой. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru