Студопедия — Алгоритмы формирования одномерного массива
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Алгоритмы формирования одномерного массива






Задача 1. Дан двумерный массив размерностью 5х6, заполненный целыми числами. Сформировать одномерный массив, каждый элемент которого соответственно равен сумме элементов строк. Оба массива вывести на экран.

USES Crt;

VAR

H:ARRAY[0..5,0..6] OF INTEGER; K:ARRAY[0..5] OF INTEGER;

I,J:BYTE; S:INTEGER;

BEGIN

ClrScr; Randomize;

{ Заполнение двумерного массива случайным образом и вывод в виде прямоугольной матрицы }

WriteLn(' Значения двумерного массива');

FOR I:=1 TO 5 DO Begin

FOR J:=1 TO 6 DO Begin

H[I,J]:=Random(23); Write(H[I,J]:3);

End; WriteLn;

End; WriteLn;

{ Нахождение суммы элементов строк и заполнение одномерного массива }

WriteLn(' Значения одномерного массива');

FOR I:=1 TO 5 DO Begin

S:=0;

FOR J:=1 TO 6 DO

S:=S+H[I,J];

K[I]:=S; Write(K[I]:4);

End;

END.

Задача 2. Дана квадратная матрица порядка n, заполненная целыми числами. Получить одномерный массив, элементами которого являются первый положительный элемент соответствующей строки матрицы.

USES Crt;

LABEL M1;

CONST N=5;

VAR

H:ARRAY[0..N,0..N] OF INTEGER; B:ARRAY[0..N] OF INTEGER;

I,J:BYTE;

BEGIN

ClrScr; Randomize;

{ Заполнение двумерного массива случайным образом и вывод в виде прямоугольной матрицы }

WriteLn(' Значения элементов двумерного массива');

WriteLn;

FOR I:=1 TO N DO Begin

FOR J:=1 TO N DO Begin

H[I,J]:=Random(25)-10; Write(H[I,J]:3);

End; WriteLn;

End; WriteLn;

WriteLn(' Значения первых положительных элементов соответствующих строк');

WriteLn;

FOR I:=1 TO N DO Begin

FOR J:=1 TO N DO

IF H[I,J]>0 THEN Begin B[I]:=H[I,J]; GOTO M1; End;

M1: Write(B[I]:3);

End;

END.

Задача 3. Дан двумерный массив размерностью NхM, заполненная целыми числами. Получить одномерный массив, элементами которого являются сумма первого и последнего элементов соответствующих строк двумерного массива.

USES Crt;

CONST N=5; M=7;

VAR

A:ARRAY[0..N,0..M] OF INTEGER; B:ARRAY[0..N] OF INTEGER;

I,J:BYTE;

BEGIN

ClrScr; Randomize;

{ Заполнение двумерного массива случайным образом и вывод в виде прямоугольной матрицы }

WriteLn(' Значения элементов двумерного массива');

WriteLn;

FOR I:=1 TO N DO Begin

FOR J:=1 TO M DO Begin

A[I,J]:=Random(30); Write(A[I,J]:3);

End; WriteLn;

End; WriteLn;

WriteLn(' Cумма первого и последнего элементов соответствующих строк');

WriteLn;

FOR I:=1 TO N DO Begin

B[I]:=A[I,1]+A[I,M]; Write(B[I]:3);

End;

END.

Задача 4. Дан двумерный массив размерностью 5х6, заполненный целыми числами. Сформировать одномерный массив каждый элемент которого равен произведению четных положительных элементов соответствующего столбца.

USES Crt;

VAR

M:ARRAY[0..5,0..6] OF INTEGER; F:ARRAY[0..6] OF INTEGER;

I,J:BYTE; P:LongInt;

BEGIN

ClrScr; Randomize;

{ Заполнение двумерного массива случайным образом и вывод в виде прямоугольной матрицы }

WriteLn(' Значения элементов двумерного массива');

FOR I:=1 TO 5 DO Begin

FOR J:=1 TO 6 DO Begin

M[I,J]:=Random(20)-5; Write(M[I,J]:3);

End; WriteLn;

End; WriteLn;

{ Формирование одномерного массива}

WriteLn(' Значения элементов одномерного массива');

FOR J:=1 TO 6 DO Begin

P:=1;

FOR I:=1 TO 5 DO

IF (M[I,J]>0) AND (M[I,J] mod 2 =0) THEN P:=P*M[I,J];

IF P=1 THEN F[J]:=0 ELSE F[J]:=P;

Write(F[J]:4);

End;

END.

Задача 5. Дан двумерный массив размерностью 4х6, заполненный целыми числами. Сформировать одномерный массив, каждый элемент которого равен количеству элементов соответствующей строки, больших данного числа N.

USES Crt;

VAR

A:ARRAY[0..4,0..6] OF INTEGER; G:ARRAY[0..6] OF INTEGER;

I,J,K:BYTE; N:INTEGER;

BEGIN

ClrScr; Randomize;

{ Заполнение двумерного массива случайным образом и вывод в виде прямоугольной матрицы }

WriteLn(' Значения элементов двумерного массива');

FOR I:=1 TO 4 DO Begin

FOR J:=1 TO 6 DO Begin

A[I,J]:=Random(45); Write(A[I,J]:3);

End; WriteLn;

End; WriteLn;

Write(' Введите значение числа '); ReadLn(N);

{ Формирование одномерного массива}

WriteLn(' Значения элементов одномерного массива');

FOR I:=1 TO 4 DO Begin

K:=0;

FOR J:=1 TO 6 DO

IF A[I,J] > N THEN K:=K+1;

G[I]:=K; Write(G[I]:2);

End;

END.

Задача 6. Дан двумерный массив размерностью 4х5, заполненный целыми числами. Сформировать одномерный массив, каждый элемент которого равен количеству отрицательных элементов, кратных 3 или 5, соответствующей строки.

USES Crt;

VAR

A:ARRAY[0..4,0..5] OF INTEGER; G:ARRAY[0..6] OF INTEGER;

I,J,K:BYTE;

BEGIN

ClrScr; Randomize;

{ Заполнение двумерного массива случайным образом и вывод в виде прямоугольной матрицы }

WriteLn(' Значения элементов двумерного массива');

FOR I:=1 TO 4 DO Begin

FOR J:=1 TO 5 DO Begin

A[I,J]:=Random(45)-20; Write(A[I,J]:3);

End; WriteLn;

End; WriteLn;

{ Формирование одномерного массива}

WriteLn(' Значения элементов одномерного массива');

FOR I:=1 TO 4 DO Begin

K:=0;

FOR J:=1 TO 5 DO

IF (A[I,J] < 0) AND ((A[I,J] mod 3=0) OR (A[I,J] mod 5 =0)) THEN K:=K+1;

G[I]:=K; Write(G[I]:2);

End;

END.

.....................................................................................................................................

Практические задания

.....................................................................................................................................

1. Дан двумерный массив размерностью 6х5, заполненный целыми числами, введенными с клавиатуры. Сформировать одномерный массив, каждый элемент которого равен первому четному элементу соответствующего столбца, если такого нет, то равен нулю.

2. Дан двумерный массив размерностью 5х6, заполненный целыми числами. Сформировать одномерный массив, каждый элемент которого равен произведению четных положительных элементов соответствующего столбца.

3. Дана квадратная матрица размерностью NхN, заполненная целыми числами и величина А. Сформировать одномерный массив, каждый элемент которого равен элементу, расположенному на главной диагонали, умноженному на величину А.

4. Дан двумерный массив размерностью 6х8, заполненный целыми числами, введенными с клавиатуры. Сформировать одномерный массив, каждый элемент которого равен количеству элементов соответствующих строк матрицы, значения которых находятся в интервале(-2, 10).

 







Дата добавления: 2015-09-19; просмотров: 1001. Нарушение авторских прав; Мы поможем в написании вашей работы!



Практические расчеты на срез и смятие При изучении темы обратите внимание на основные расчетные предпосылки и условности расчета...

Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...

Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...

Вычисление основной дактилоскопической формулы Вычислением основной дактоформулы обычно занимается следователь. Для этого все десять пальцев разбиваются на пять пар...

Неисправности автосцепки, с которыми запрещается постановка вагонов в поезд. Причины саморасцепов ЗАПРЕЩАЕТСЯ: постановка в поезда и следование в них вагонов, у которых автосцепное устройство имеет хотя бы одну из следующих неисправностей: - трещину в корпусе автосцепки, излом деталей механизма...

Понятие метода в психологии. Классификация методов психологии и их характеристика Метод – это путь, способ познания, посредством которого познается предмет науки (С...

ЛЕКАРСТВЕННЫЕ ФОРМЫ ДЛЯ ИНЪЕКЦИЙ К лекарственным формам для инъекций относятся водные, спиртовые и масляные растворы, суспензии, эмульсии, ново­галеновые препараты, жидкие органопрепараты и жидкие экс­тракты, а также порошки и таблетки для имплантации...

Билиодигестивные анастомозы Показания для наложения билиодигестивных анастомозов: 1. нарушения проходимости терминального отдела холедоха при доброкачественной патологии (стенозы и стриктуры холедоха) 2. опухоли большого дуоденального сосочка...

Сосудистый шов (ручной Карреля, механический шов). Операции при ранениях крупных сосудов 1912 г., Каррель – впервые предложил методику сосудистого шва. Сосудистый шов применяется для восстановления магистрального кровотока при лечении...

Трамадол (Маброн, Плазадол, Трамал, Трамалин) Групповая принадлежность · Наркотический анальгетик со смешанным механизмом действия, агонист опиоидных рецепторов...

Studopedia.info - Студопедия - 2014-2024 год . (0.009 сек.) русская версия | украинская версия