Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.05.2019, 01:10   #1
хатабыч
Пользователь
 
Аватар для хатабыч
 
Регистрация: 15.03.2016
Сообщений: 44
Счастье Задачка PHP

Решил эту задачку примитивно как смог сам Ведь если бы этот массив был из десятков внутренних массивов. задрался бы я его так писать(((. Понимаю что его можно прогнать через цикл но какой на ум не приходит. Хотелось бы увидеть более грамотный код . Всем заранее спасибо.
Дан двухмерный массив с числами, например [[1, 2, 3], [4, 5], [6]]. Найдите сумму элементов этого массива. Массив, конечно же, может быть произвольным.
Код:
    $arr = [[1, 3, 5], [2, 4, 6], [7, 8, 9]];
        $arr[0] = array_sum($arr[0]);
        $arr[1] = array_sum($arr[1]);
        $arr[2] = array_sum($arr[2]);
     echo array_sum($arr);
хатабыч вне форума Ответить с цитированием
Старый 26.05.2019, 09:07   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

Цитата:
Сообщение от хатабыч Посмотреть сообщение
Дан двухмерный массив с числами
если вложенности глубже нет, ну так, как у Вас - элементы массива - это простые одинарные массивы, тогда используйте foreach или map()
Serge_Bliznykov вне форума Ответить с цитированием
Старый 26.05.2019, 12:47   #3
хатабыч
Пользователь
 
Аватар для хатабыч
 
Регистрация: 15.03.2016
Сообщений: 44
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
если вложенности глубже нет, ну так, как у Вас - элементы массива - это простые одинарные массивы, тогда используйте foreach или map()
Блин мозгов не хватает записать правильно или понять никак не могу как это правильно записать. Вроде понятно а комп не понимает чего я от него хочу.
Код:
$arr = [[1, 3, 5], [2, 4, 6], [7, 8, 9]];
      foreach($arr as $num){
          $num =[];
          foreach($num as $sum){
                echo array_sum($sum);
          }
      }
хатабыч вне форума Ответить с цитированием
Старый 26.05.2019, 13:10   #4
хатабыч
Пользователь
 
Аватар для хатабыч
 
Регистрация: 15.03.2016
Сообщений: 44
По умолчанию

Цитата:
Сообщение от хатабыч Посмотреть сообщение
Блин мозгов не хватает записать правильно или понять никак не могу как это правильно записать. Вроде понятно а комп не понимает чего я от него хочу.
Код:
$arr = [[1, 3, 5], [2, 4, 6], [7, 8, 9]];
      foreach($arr as $num){
          $num =[];
          foreach($num as $sum){
                echo array_sum($sum);
          }
      }
Данный цикл выводит сумму внутренних массивов по очереди 9 12 24.
Я их попытался записать в массив и проделать еще раз тоже самое. Но эти числа попадают не в значение массива а в их ключ. в итоге не работает(((
хатабыч вне форума Ответить с цитированием
Старый 26.05.2019, 15:08   #5
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

Код:
<?php

$arr = [[1, 3, 5], [2, 4, 6], [7, 8, 9]];
$sum = 0;
      foreach($arr as $num){
          $sum += array_sum($num);
      }
echo $sum;
?>
Serge_Bliznykov вне форума Ответить с цитированием
Старый 26.05.2019, 19:16   #6
хатабыч
Пользователь
 
Аватар для хатабыч
 
Регистрация: 15.03.2016
Сообщений: 44
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
Код:
<?php

$arr = [[1, 3, 5], [2, 4, 6], [7, 8, 9]];
$sum = 0;
      foreach($arr as $num){
          $sum += array_sum($num);
      }
echo $sum;
?>
Спасибо. Хрен бы когда догадался так сделать. Но смысл разобрал и понял))
Никак не могу привыкнуть и запомнить такую вещь . Что цикл делает несколько проходов и после каждого прохода оставляет в переменной записанное значение, и то что этим нужно пользоваться.

Последний раз редактировалось хатабыч; 26.05.2019 в 19:26.
хатабыч вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задачка PHP хатабыч Помощь студентам 6 23.05.2019 18:07
Задачка на С++ Kir555 Помощь студентам 1 27.10.2013 11:37
Задачка ! Viento Microsoft Office Excel 4 31.01.2009 12:19
Задачка SunKnight Паскаль, Turbo Pascal, PascalABC.NET 3 03.09.2008 20:44
Задачка для ума 2 ZORRO2005 Microsoft Office Excel 6 19.04.2008 10:45