Использование Var, Integer, Readln.

Процедура Readln используется не только для задержки экрана. Ее основная задача - ввод данных с клавиатуры. В этой статье мы научимся вводить числа с клавиатуры, и потом выводить их на экран. Для этого нам будет необходимо познакомиться с разделом ...

Перевод числа из десятичной системы счисления в шестнадцатеричную.

Напишем программу, которая вводит с клавиатуры целое число в диапазоне от 0 до 15 и преобразует его к шестнадцатеричной системе счисления. Напомню, что в шестнадцатеричной системе счисления числа в диапазоне от 0 до 9 соответствуют таким же числам в ...

Тип данных Boolean. Значения True, False в Pascal.

Мы рассмотрели с Вами целый тип данных (integer), вещественный тип (real), символьный (char). В этом уроке мы рассмотрим тип данных, который имеет большое значение в программировании. Логический типBoolean. Одной из особенностей этого типа данных ...

Циклы и массивы

Программирование циклов. Оператор безусловного перехода.

Цикл — это последовательность операторов, которая может выполняться более одного раза. В языке Паскаль разработано три механизма для конструирования циклов, использующих операторы FOR, WHILE, REPEAT.

...

Вычисление предела последовательности.

Вычисление предела последовательности является типичной задачей на использование итерационного цикла.

Двумерный массив представляет собой массив, в котором положение элементов определяется 2-мя индексами. Фактически, двумерный массив – это обычный (одномерный) массив, элементами которого являются другие одномерные массивы.

Поэтому двумерный массив можно задать следующим образом: b:array[1..n] of array[1..m] of integer.
Однако, подобная запись двумерного массива на практике используется нечасто. Наиболее предпочтительным является следующий вариант: b: array[1..n,1..m] of integer.
Схематично, двумерный массив можно представить в виде матрицы, где первый индекс [1..n] определяет количество строк, а второй индекс [1..m] определяет количество столбцов. Для примера возьмем массив b: array[1..7,1..6] of integer. Схематично его можно представить так:

dvumernihyj massiv
Как видно, такой массив содержит 42 элемента (7?6). Для доступа к элементу массива необходимо указать номер строки и столбца, на пересечении которых этот элемент расположен. Например, на нашем рисунке элемент массива b[3,3] имеет значение 122.
Следующая программа записывает в каждый элемент массива случайное число и затем выводит все эти числа на экран.



program massiv10;
uses crt;
const N=5;
         M=4;
var X:array [1..N, 1..M] of integer;
       I, J:integer;
begin
clrscr;
randomize;
for i:=1 to N do
    for j:=1 to M do
    x [I, J]:=random (100);
for i:=1 to N do
begin
  for j:=1 to M do
    write (' ',x[I,J]);
    writeln
end;
readln
end.


В строке №3 и №4 укажем значение для константы «N» и «M».

В строке№5 запишем область двумерного массива, состоящего из N – строк и M – столбцов.  Он записывается также как и одномерный массив, только в квадратных скобках указывается область хранения двумерного массива.  Таким образом, наш массив будет состоять из 5 строк и 4 столбцов

В строке №6 записываем переменные, для хранения индексов строки и столбца.

Строка №9,10,11,12 – заполняем массив случайными числами (Все строки и столбцы заполнятся случайными числами). Как видно из программы, для того чтобы заполнить элементы двумерного массива различными значениями, необходимо использовать 2 цикла (один цикл вкладывается в другой). Во внешнем цикле счетчиком выступает индекс строки, во внутреннем цикле - индекс столбца. Внешний цикл выполнится один раз только когда внутренний цикл выполнится 4 раза. А так как внешний цикл должен выполниться 5 раз, то внутренний цикл за это время выполнится 20 раз, заполнив при этом все 20 элементов двумерного массива.

Строка №13-№17. Выводим значения всех элементов массива на экран. Причем, как только заполняются все ячейки одной строки массива, проиходит переход на другую строку, и следующая строка массива выводится на другой строке.

dvumernihyj massiv.

dvumernihyj massiv..


Предыдущая статья : Нахождение номера отрицательного элемента в массиве.

Оглавление : Уроки Паскаль.

Следующая статья : Процедуры в Pascal.


Комментарии  

 
-21 # мария 20.11.2012 07:45
Дан двумерный массив. Определить:
А) сумму всех элементов массива;
Б) сумму квадратов всех элементов массива.
Ответить
 
 
+7 # Papa 13.03.2013 06:43
Помогли бы девушке ;)
Ответить
 
 
-5 # Ваймат 07.05.2013 01:18
Произведение всех отрицательных элементовб хелп ми
Ответить
 
 
+7 # dr_alpachino 19.08.2015 17:25
program massiv10;

uses
crt;

const
N = 5;
M = 4;

var
X: array [1..N, 1..M] of integer;
I, summ,summkvad,J : integer;

begin
clrscr;
randomize;
for i := 1 to N do
begin
for j := 1 to M do
begin
x[I, J] := random(5);
summ:= summ + x[I, J];
summkvad := (summkvad + (x[I, J] * x[I, J]));
end;
end;
for i := 1 to N do
begin
for j := 1 to M do
write(' ', x[I, J]);
writeln
end;
writeln('Сумма всех элементов массива ',summ);
writeln('Сумма всех квадратов элемента массива ',summkvad);
end.
Ответить
 
 
-6 # Юлия 13.10.2015 10:39
Записать двухмерный массив 100х100 целых чисел.найти след.
Ответить
 
 
-6 # Надежда 13.10.2015 10:42
дан Массив, который содержит обыкновенные дроби вида -P/Q Где P- целое число, а Q- натуральное , Просуммировать модули дробей.Ответ Представить в виде дроби без сокращение!
помогите)
Ответить
 
 
-4 # Миша 21.12.2015 19:54
В матрице nxm найти найти сумму максимальных элементов столбцов и умножить на это число столбец с минимальным элементом матрицы, помогите пожалуйста
Ответить
 
 
-2 # Миша 21.12.2015 20:10
Аууу
Ответить
 
 
-2 # Sabina 26.02.2016 06:25
Помогитк плииз))))даны две матрицы а(3;4)и в(3;4). Сформировать матрицу С(3;4) по правилу:Cij=max (Aij+Bij) плииз
Ответить
 
 
0 # Ann 19.05.2016 14:13
дано массив A[1..n,1..m]. Найти количество всех чисел кратных 2 и их место в массиве.
помогите пожалуйста..
Ответить
 
 
0 # kiss_a 19.05.2016 14:17
массив A[1..n,1..m]
Нужно заменить все отрицательные елементы на противоположные им числа.
Ответить
 
 
0 # Диззлайк 08.04.2017 05:40
program massiv10;

const
N = 5;
M = 4;

var
X: array [1..N, 1..M] of integer;
I, summ,summkvad,J : integer;

begin
randomize;
for i := 1 to N do
begin
for j := 1 to M do
begin
x[I, J] := random(5);
summ:= summ + x[I, J];
summkvad := (summkvad + (x[I, J] * x[I, J]));
end;
end;
for i := 1 to N do
begin
for j := 1 to M do
write(' ', x[I, J]);
writeln
end;
writeln('Сумма всех элементов массива ',summ);
writeln('Сумма всех квадратов элемента массива ',summkvad);
end.
Ответить
 
 
-4 # Ded1337 10.08.2017 10:23
Вместо того, чтобы людям помочь, они дизлайки ставят...
Ответить
 

Добавить комментарий

Защитный код
Обновить

   ГлавнаяПаскальМассивы в ПаскальПодсчет количества четных элементов в массиве.