Форум программистов
 
О проблемах, например, с регистрацией пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail, а тут можно восстановить пароль.

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

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

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Ответ
 
Опции темы
Старый 12.05.2020, 06:08   #1
kabargak
Новичок
Джуниор
 
Регистрация: 12.05.2020
Сообщений: 3
По умолчанию Задача на массивы 10 класс.

Помогите пожалуйста решить задачу


11. Дан целочисленный двумерный массив, размерности n х m. Массив вывести на экран. Найти произведение и сумму первого и последнего элемента массива
kabargak вне форума Ответить с цитированием
Старый 12.05.2020, 07:17   #2
kabargak
Новичок
Джуниор
 
Регистрация: 12.05.2020
Сообщений: 3
По умолчанию

или хотя бы разобраться в этом, прошу
kabargak вне форума Ответить с цитированием
Старый 12.05.2020, 09:22   #3
ViktorR
Участник клуба
 
Регистрация: 23.10.2010
Сообщений: 1,620
По умолчанию

1. Опиши две константы: n, m целого типа. Это число строк и столбцов в твоём массиве.
2. Опиши две переменные, которые будут индексами массива и двумерный массив с элементами целого типа. В описании массива используй константы.
3. Опиши две переменные, которые будут хранить сумму и произведение заданных элементов массива.
Эта операция необязательная, так как формулы для суммы и произведения можно вставить в процедуре вывода. Например,
Код:
writeln(M[1,1]+M[n,m]);
3. Сформируй целочисленный массив используя процедуру randomize() и функцию random()
Это надо выполнить через вложенный цикл:
Код:
for i := 1 to n do
   for j := 1 to m do
      M[i,j] := random(<тут что то>);
Ну и Сеть тебе в помощь.

PS: При написании части кода проанализируй, какой индекс отвечает за строки, а какой за столбцы.
Я этого не помню.
Как-то так, ...
ViktorR вне форума Ответить с цитированием
Старый 12.05.2020, 09:52   #4
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 2,613
По умолчанию

Цитата:
Сообщение от ViktorR Посмотреть сообщение
При написании части кода проанализируй, какой индекс отвечает за строки, а какой за столбцы.
А это вообще, по-моему - достаточно условная вещь. Что безусловно - так это то, что при изменении самого правого индекса мы перемещаемся подряд по выделенному участку памяти без "прыжков".
Код:
type
TMas = record
case byte of
1: a = array [0..99] of integer ;
2: b = array [0..9,0..9] of integer
end ;
Тут a[1] = b[0,1], a[2] = b[0,2] и т.д.
А как они распишутся по экрану - вдоль или поперёк - как захотим, так и сделаем. Понятия "строка", "столбец" в синтаксисе языка не определены, есть "1-й, 2-й индекс". Во всяком случае, в сети я встречал оба варианта. В отличие от grid, где это определено.
Я так думаю.

Последний раз редактировалось digitalis; 12.05.2020 в 09:59.
digitalis вне форума Ответить с цитированием
Старый 13.05.2020, 15:46   #5
ViktorR
Участник клуба
 
Регистрация: 23.10.2010
Сообщений: 1,620
По умолчанию

Цитата:
А это вообще, по-моему - достаточно условная вещь.
Да, это так. Это имеет отношение только к способу хранения данных в ОЗУ.
Тут имелось ввиду, что однажды выбранная последовательность индексов не должна меняться.
С другой стороны, принято строить циклы перебирая столбцы (внутренний цикл), а затем строки.
Несложно перепутать эти элементы, например, при выполнении операций с матрицами.
Можно неправильно написать алгоритм ...

PS: И конечно же я обратил на это внимание ТС, так как у меня под рукой всегда есть Сеть
ТС мог бы просто поискать нужную информацию, но плохо видимо этим владеет.
Возможно, что просто лень.
Для поиска в Сети нужно время, включить мозг, а его нет - он музыку слушает, да и мозг напрягать ...
Как-то так, ...
ViktorR вне форума Ответить с цитированием
Старый 14.05.2020, 16:17   #6
newerow1989
Я самый любопытный
Участник клуба
 
Аватар для newerow1989
 
Регистрация: 24.07.2012
Сообщений: 1,807
По умолчанию

Код:
const n=5;
      m=6;
var p:array[1..n,1..m] of integer;
    i,j,z:integer;
begin
   Randomize;
   For i:=1 to n do
   begin
      For j:=1 to m do
      begin
         p[i,j]:=Random(21);
         Write(p[i,j]:3,'  ');
      end;
      Writeln;
   end;
   Writeln;
   z:=p[1,1]+p[n,m];
   Writeln(z);
   z:=p[1,1]*p[n,m];
   Writeln(z);
   Readln;
end.
С запрограммированным приветом, Неверов Евгений!
Сайт: http://newerow1989.narod.ru
[Паскаль] [Delphi]
newerow1989 вне форума Ответить с цитированием
Ответ

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
задача по математике за 5 класс Qaliti Помощь студентам 3 20.03.2016 01:13
Задача по информатике 9 класс. solovey.kurskiy Помощь студентам 18 28.10.2012 18:01
задача - определить Класс Andrew_s Visual C++ 2 13.12.2011 21:58
Класс vector и сложносоставные массивы. вопрос к спецам в STL haruhi Общие вопросы C/C++ 1 19.11.2011 15:32


Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru
Пеллетный котёл Emtas
котлы EMTAS
Здесь нужно купить рекламу за 7 тыс руб в месяц! )
пишите сюда - alarforum@yandex.ru
ИКС 840