Форум программистов, компьютерный форум, киберфорум
PascalABC.NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/16: Рейтинг темы: голосов - 16, средняя оценка - 4.88
 Аватар для Gastello
30 / 16 / 1
Регистрация: 11.04.2010
Сообщений: 534

Подсчитать весь двумерный масив

12.08.2021, 23:15. Показов 3358. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет. Подскажите пожалуйста, как сделать подсчёт всего двумерного массива? Сложить все числа в сумму, и получить результат.

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
const x=5; y=5;
var
  a:array[1..x, 1..y] of Integer;
  i, j: Integer;
  begin
    for i:=1 to x do
    begin
       for j:=1 to y do
       begin
         a[i,j]:=Random(10);
       end;
    end;
 
      for i:=1 to x do
      begin
        for j:=1 to y do
        begin
          Write(' ', a[i,j]);       
        end;
          WriteLn;
      end;
  end.
В данный момент у меня пока просто заполняется двумерный 5 на 5 массив рандомными числами. Мне нужно их все сложить, и получить результат.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
12.08.2021, 23:15
Ответы с готовыми решениями:

Двумерный масив
Дана целочисленая прямоугольная матрица.Опрелелить: 1) Количество строк, не содержащих ни одного нулевого элемента; 2) Максимальное из...

Отсортировать по убыванию элементов последнего столбца целочисленый двумерный масив 5х4
Как ето зделать. Я знаю как просто отсортировать но не знаю как сортировать столбцы и строки.

двумерный масив
в двумерном масиве хранится информация о зарплате 18 человек за каждый месяц года за январь в первом столбце за февраль во втором и.т.д...

12
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
13.08.2021, 02:23
Лучший ответ Сообщение было отмечено Gastello как решение

Решение

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
const n=5;
var a:array[1..n, 1..n] of Integer;
    i, j, s: Integer;
begin
randomize;
s:=0;
for i:=1 to n do
 begin
  for j:=1 to n do
   begin
    a[i,j]:=Random(10);
    write(a[i,j]:3);
    s:=s+a[i,j];
   end;
  writeln;
 end;
writeln('Сумма=',s)
end.
1
 Аватар для Gastello
30 / 16 / 1
Регистрация: 11.04.2010
Сообщений: 534
13.08.2021, 02:29  [ТС]
Благодарю, а что такое:

Pascal
1
a[i,j]:3
:3
0
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
13.08.2021, 02:31
Лучший ответ Сообщение было отмечено Gastello как решение

Решение

Вывод целых чисел с выделением трех позиций под число.
1
 Аватар для Gastello
30 / 16 / 1
Регистрация: 11.04.2010
Сообщений: 534
13.08.2021, 02:37  [ТС]
Спасибо большое! Очень толково и грамотно расписали и помогли.
0
 Аватар для mr-Crocodile
3053 / 1672 / 657
Регистрация: 19.03.2019
Сообщений: 5,380
13.08.2021, 09:10
Gastello, PascalABC.NET же!

Pascal
1
2
3
4
5
const x=5; y=5;
begin
  var b := MatrRandomInteger(x,y,0,10).PrintLn;
  $'Сумма = {b.Cols.Select(x->x.Sum).Sum}'.PrintLn;
end.
0
100 / 74 / 21
Регистрация: 12.04.2017
Сообщений: 269
13.08.2021, 10:32
Я бы так написал:
Pascal
1
2
3
4
##
var (m, n) := ReadInteger2('Количество строк и столбцов (через пробел):');
var a := MatrRandom(m, n, 0, 9); // на [0..9]
a.Println.ElementsByRow.Sum.Print
1
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
13.08.2021, 10:56
Вот нафига здесь x,y и ReadInteger2('Количество строк и столбцов (через пробел):'); если у ТСа квадратная матрица 5х5?
0
100 / 74 / 21
Регистрация: 12.04.2017
Сообщений: 269
13.08.2021, 11:38
ТС писал: "В данный момент у меня пока просто заполняется двумерный 5 на 5 ..."
Я это понимаю так, что сейчас 5х5, но может и поменяться, поэтому проще ввести, чем править код каждый раз.

Ну а если не хочется вводить, можно написать var (m, n) := (5, 5); вместо ввода
1
 Аватар для Gastello
30 / 16 / 1
Регистрация: 11.04.2010
Сообщений: 534
13.08.2021, 15:24  [ТС]
Цитата Сообщение от Puporev Посмотреть сообщение
Вот нафига здесь x,y и ReadInteger2('Количество строк и столбцов (через пробел):'); если у ТСа квадратная матрица 5х5?
а, подскажите пожалуйста, как идёт процесс сложения? По горизонтали срочно, или по вертикале столбцами? Хочу понять процесс сложения.
0
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
13.08.2021, 15:34
Лучший ответ Сообщение было отмечено Gastello как решение

Решение

Вот какая разница как ты сложишь элементы массива?
1 2 3
4 5 6?
Просто складываем от 1 до n*n.
В моем коде по строкам.
1
 Аватар для Gastello
30 / 16 / 1
Регистрация: 11.04.2010
Сообщений: 534
13.08.2021, 15:39  [ТС]
Благодарю.
0
100 / 74 / 21
Регистрация: 12.04.2017
Сообщений: 269
13.08.2021, 19:26
Если использовать a.Println.ElementsByRow.Sum.Print, то там прямо написано ElementsByRow - по строкам, но можно и по колонкам: ElementsByCol.
Но совершенно верно тут было сказано, что если все элементы суммировать - то в любом порядке, хоть зигзагами, если сможете.
По-хорошему, эта конкретная задача с матрицей 5х5 решается в одну строку: ## MatrRandom(5, 5, 0, 9).Println.ElementsByRow.Sum.Print
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
13.08.2021, 19:26
Помогаю со студенческими работами здесь

двумерный масив
Помогите решить задачки Дана целочисленная прямоугольная матрица, определить : 1)количество строк не содержащих ни одного нулевого...

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

Из одномерного в двумерный масив
Здравствуйте, у меня есть такой одномерный масив с выводом максимального элемента по модулю, его необходимо сделать ДВУМЕРНЫМ. const N...

Дан двумерный массив,получить новый масив
Дан двумерный массив размерностью 5*5. Получить новый массив путем деления всех элементов массива на наибольший по модулю элемент

Найти добуток элементов которые меньше 1 (двумерный масив)
Program Masuv; Uses crt; var A:array of integer; i,j,d:integer; begin clrscr; randomize; d:=0; writeln('Vvedite masiv'); ...


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru