Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
РГР Сухих Р.О..docx
Скачиваний:
2
Добавлен:
01.04.2025
Размер:
577 Кб
Скачать
☆

Задание 2.

Постановка задачи:

Заполнить массив из 10 элементов случайными числами в интервале [-10..10] и найти в нем два максимальных элемента и их номера.

Таблица 2- Таблица внешних спецификаций

Имя переменной

Назначение переменной

Тип переменной

Входные данные

i

a

индекс элемента массива

массив

integer

integer

Выходные данные

a[imax]

max

imax

k

Максимальный элемент 1

Максимальный элемент 2

Номер максимального элемента 1

Номер максимального элемента 2

integer

integer

integer

integer

Расчет контрольных примеров:

Блок-схема:

Рисунок 2 – Блок-схема к заданию №2

Программная реализация:

program laba1_4;

uses crt;

type

mas=array[1..10] of integer;

var

a:mas;

i,imax,max,k:integer;

begin

clrscr;

randomize;

write('Массив a:');

for i:=1 to 10 do

begin

a[i]:=random(20)-10;

write(a[i]:4);

end;

imax:=1;

for i:=2 to 10 do

if a[i]>a[imax] then imax:=i;

k:=imax;

max:=a[imax];

imax:=1;

for i:=2 to 10 do

if (a[i]>a[imax]) and (a[i]<>max) then imax:=i;

writeln;

writeln('Максимум равен:',a[imax], ' и ',max);

write('Максимальный элемент стоит:',imax,' и ',k);

end.

ОБРАБОТКА ЭЛЕМЕНТОВ ДВУМЕРНОГО МАССИВА

Цель работы: овладение практическими навыками работы с двумерными массивами, особенностями их ввода и вывода, приобретение дальнейших навыков по организации программ циклической структуры с использованием приемов программирования.

Задание 1.

Постановка задачи:

Дана матрица размера M × N. Для каждого столбца матрицы найти произведение его элементов.

Таблица 3 - Таблица внешних спецификаций

Имя переменной

Назначение переменной

Тип переменной

Входные данные

i

j

N

M

A

индекс элемента массива (строка)

индекс элемента массива (столбец)

количество столбцов матрицы

количество строк матрицы

двумерный массив

integer integer

integer

integer

integer

Выходные данные

p

Произведение всех элементов в столбце

integer

Расчет контрольных примеров:

1)

2)

Блок-схема:

Рисунок 3 – Блок-схема к заданию №1

Программная реализация:

program laba2_2;

uses

crt;

var

A:array [1..10,1..10] of integer;

i,j,p,m,n:integer;

begin

clrscr;

write('Введите количество строк M(1<=M<=10): ');

readln(m);

write('Введите количество столбцов N(1<=N<=10): ');

readln(n);

for i:=1 to M do

for j:=1 to N do

A[i,j]:=random(10)-5;

for i:=1 to M do

begin

for j:=1 to N do

write(a[i,j]:4);

writeln;

end;

writeln;

for j:=1 to N do

begin

p:=1;

for i:=1 to M do

p:=p*a[i,j];

write(p:4);

end;

end.

Задание 2.

Постановка задачи:

Дана матрица размера M × N. В каждой ее строке найти количество элементов, меньших среднего арифметического всех элементов этой строки.

Таблица 4 - Таблица внешних спецификаций

Имя переменной

Назначение переменной

Тип переменной

Входные данные

i

j

N

M

A

S

индекс элемента массива (строка)

индекс элемента массива (столбец)

количество столбцов матрицы

количество строк матрицы

двумерный массив

сумма элементов в строке

integer integer

integer

integer

integer

integer

Выходные данные

SRed

k

Среднее арифметическое строки

Количество элементов меньших среднего арифметического

real

integer

Расчет контрольных примеров:

Блок-схема:

Рисунок 4 – Блок-схема к заданию №2

Программная реализация:

program laba2_6;

uses

crt;

var

k,j,i,M,N,S:integer;

a: array [1..10,1..10] of integer;

SRed:real;

begin

clrscr;

write('Введите количество строк M(1<=M<=10): ');

readln(m);

write('Введите количество столбцов N(1<=N<=10): ');

readln(n);

for i:=1 to M do

for j:=1 to N do

A[i,j]:=random(10)-5;

for i:=1 to M do

begin

for j:=1 to N do

write(a[i,j]:4);

writeln;

end;

writeln;

writeln('Ответ:');

for i:=1 to M do

begin

S:=0;

k:=0;

for j:=1 to N do S:=S+a[i,j];

SRed:=S/N;

for j:=1 to N do

begin

if SRed>a[i,j] then k:=k+1;

end;

writeln(i,')');

writeln('Среднее арифметическое: ',SRed);

writeln('количество элементов: ',k );

end;

end.

СИМВОЛЬНЫЕ СТРОКИ

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