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

Блок-схема



Читайте также:
  1. Блок-схема
  2. Блок-схема алгоритма
  3. Блок-схема определения затрат на оплату труда работника по параметрам
  4. Блок-схема предоставления муниципальной услуги
  5. Блок-схема противоэпидемических мероприятий в очаге инфекционного заболевания
  6. Блок-схема противоэпидемических мероприятий в очаге инфекционного заболевания.

 

 

 

 

Листинг программы на Pascal

 

program ABC;

const Nmass=10;

var A:array[1..Nmass,1..Nmass] of integer;

ZAMOK:boolean;

N,M,i,j,k,Imax,Jmax,p,Pmax: byte;

buf:integer;

 

begin

cls;

//ручной ввод массива

writeLn('Введите число элементов в массиве A');

readLn(N,M);

writeLn('Вводим элементы массива A:');

for i:=1 to N do

for j:=1 to M do

begin

write('A[',i,',',j,']=');

readLn(A[i,j]);

end;

 

//вывод массива до измененния

 

writeLn('Исходный массив A:');

for i:=1 to N do

begin

for j:=1 to M do

write(A[i,j]:5);

writeLn;

end;

 

// определение столбца, в котором больше положительных элементов

// подсчёт положительных в первом столбце

Pmax:=0;

for i:=1 to N do

if A[i,1]>0 then

Pmax:=Pmax+1;

 

// теперь, зная начальное значение Pmax,

// можем приступить к поиску максимума и

// k-номера столбца,

// содержащего наибольшее число положительных элементов

k:=1;

for j:=2 to M do

begin

p:=0;

for i:=1 to N do

if A[i,j]>0 then

p:=p+1;

if p>Pmax then

begin

Pmax:=p;

k:=j;

end;

end;

writeLn('больше всего положительных элементов в столбце номер ', k);

 

// теперь ищем максимум среди отрицательных в столбцах справа от k-й

if k<M then

begin

ZAMOK:=TRUE;

for j:=k+1 to M do

for i:=1 to N do

if A[i,j]<0 then

if ZAMOK then

begin

Imax:=i;

Jmax:=j;

ZAMOK:=FALSE;

end

else

if A[i,j]>A[imax, jmax] then

begin

Imax:=i;

Jmax:=j;

end;

if ZAMOK then

writeLn('справа от найденного столбца нет отрицательных элементов')

else

begin

buf:=A[1,1];

A[1,1]:=A[Imax,Jmax];

A[Imax,Jmax]:=buf;

end;

end

else

writeLn('справа от найденного столбца нет элементов');

 

//вывод массива поле измененния

writeLn;

writeLn('массив A после изменения:');

for i:=1 to N do

begin

for j:=1 to M do

write(A[i,j]:5);

writeLn;

end;

end.

 

Список задач для лабораторной работы «Двумерные массивы»

 

1. Ввести двумерный массив , вывести его. Если значение суммы элементов его главной диагонали превышает сумму элементов побочной, то квадратом полученной разности заменить отрицательные элементы под побочной диагональю.

2. Ввести двумерный массив , вывести его. Найти максимальный по значению элемент массива и увеличить его в два раза. Все остальные элементы массива уменьшить на значение минимума последней строки массива.

3. Ввести двумерный массив , вывести его. Найти максимальный элемент массива. Если максимум лежит на одной из диагоналей (главной или побочной), то увеличить на его удвоенное значение элементы противоположной диагонали.

4. Ввести двумерный массив , вывести его. Найти сумму положительных элементов массива, исключая при этом те элементы, которые кратны трём. Полученной суммой заменить отрицательные элементы последнего столбца.

5. Ввести двумерный массив , вывести его. Возвести в квадрат те элементы, модуль значения которых принадлежит интервалу . Определить сколько таковых элементов оказалось в массиве.

6. Ввести двумерный массив , вывести его. Если сумма элементов над главной диагональю окажется больше чем сумма элементов под ней, то умножить на два максимальный элемент среди элементов на побочной диагонали, иначе – минимальный элемент среди этих элементов (побочной диагонали) возвести в квадрат.

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

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

9. Ввести двумерный массив , вывести его. Найти среднее арифметическое диагональных элементов (главной и побочной). Все элементы большие найденного значения, расположенные над побочной диагональю возвести в квадрат, а расположенные под ней увеличить на минимум всего массива.

10. Ввести двумерный массив , вывести его. Поменять местами строку, содержащую максимальный элемент со строкой, содержащий минимальный элемент. Если максимум и минимум в одной строке, то заменить эту строку единицами.

11. Ввести целочисленный двумерный массив , вывести его. Найти сумму его чётных элементов, исключая максимальный и минимальный (всего массива). Найденной суммой заменить угловые элементы массива.

12. Ввести целочисленный двумерный массив , вывести его. Заменить единицами сроку и столбец, содержащие максимальный среди тех элементов, значения которых кратны двум.

13. Ввести двумерный массив , вывести его. Найти сумму положительных элементов расположенных одновременно как над главной, так и над побочной диагональю. Найденной суммой заменить элементы, расположенные одновременно под главной и побочной диагоналями.

14. Ввести целочисленный двумерный массив , вывести его. Найти суммы элементов первой и последней строк матрицы. Далее увеличить на значение максимума всей матрицы ту строку (первую или последнюю), чья сумма окажется меньше.

15. Ввести целочисленный двумерный массив , вывести его. Найти минимальный из положительных элементов матрицы и этим значением заменить все нулевые элементы матрицы, если они есть, а если их нет, то заменить найденным минимумом последнюю строку матрицы.

16. Ввести целочисленный двумерный массив , вывести его. Найти максимальный и минимальный элементы массива, среди тех, значения которых кратны двум. Найденные элементы удвоить, а все остальные утроить.

17. Ввести целочисленный двумерный массив , вывести его. Найти сумму положительных угловых элементов. Найденной суммой заменить строку содержащую минимальный элемент и столбец, содержащий максимальный элемент.

18. Ввести двумерный массив , вывести его. Возвести в квадрат все строки расположенные между строкой содержащей максимум матрицы и строкой, содержащей минимум этой матрицы.

19. Ввести целочисленный двумерный массив , вывести его. Найти – количество чётных элементов на главной диагонали. Далее найти максимум в -й строке и заменить его суммой нечётных элементов главной диагонали.

20. Ввести целочисленный двумерный массив , вывести его. Если максимум и минимум массива одновременно являются чётными, то разделить из на два, иначе поменять местами первый и предпоследний столбец массива.

21. Ввести целочисленный двумерный массив , вывести его. Определить – сколько в массиве элементов кратных числу и –сколько кратных , где и – номера строк, содержащих, соответственно, максимальный и минимальный элементы матрицы. Значением заменить положительные, а значением - неотрицательные элементы первой строки.

22. Ввести двумерный массив , вывести его. Все столбцы расположенные правее от столбца, содержащий максимальный элемент матрицы увеличить на минимальный элемент матрицы.

23. Ввести целочисленный двумерный массив , вывести его. Найти произведение тех элементов, которые нечётны и положительны. Если среди этих элементов встретится максимальный элемент всей матрицы, то не учитывать его в произведении. Найденным произведением заменить предпоследнюю строку матрицы.

24. Ввести целочисленный двумерный массив , вывести его. Найти минимальный элемент массива среди тех, значения которых кратны трём. Заменить все строки предшествующие строке содержащей найденный минимум удвоенным произведением максимума и минимума, ранее найденных среди элементов всего массива.

25. Ввести целочисленный двумерный массив , вывести его. Определить – сколько нечётных элементов содержится на диагоналях массива. Далее выяснить координаты максимума среди элементов, расположенных под побочной диагональю и уменьшить этот элемент на .

26. Ввести двумерный массив , вывести его. Найти координаты максимума всего массива. Далее найти минимум среди тех элементов, которые находятся в столбцах левее столбца содержащего найденный максимум. Найденным минимумом заменить найденный максимум.

27. Ввести двумерный массив , вывести его. Найти – количество элементов, чей модуль превышает величину . Если превышает количество (количество отрицательных элементов массива), то заменить отрицательные элементы величиной , в противном случае поменять местами максимум и минимум.

28. Ввести двумерный массив , вывести его. Определить в какой строке больше положительных элементов: в той которая содержит максимум, или в той, которая содержит минимум. В строке, где положительных элементов больше каждый из положительных элементов возвести в квадрат.

29. Ввести двумерный массив , вывести его. Найти сумму угловых элементов матрицы и сравнить её с максимумом всей матрицы. Если сумма окажется больше, то угловые элементы обнулить, если равна, то угловые элементы заменить максимумом, а если меньше, то последний столбец матрицы утроить.

30. Ввести двумерный массив , вывести его. Найти максимум среди элементов над главной диагональю и поменять его с максимумом на побочной диагонали.

31. Ввести двумерный массив , вывести его. Найти максимум в массиве и далее найти минимум среди элементов той строки и того столбца, где содержится найденный максимум. Поменять пару найденных элементов местами.


Дата добавления: 2015-07-11; просмотров: 430 | Нарушение авторских прав






mybiblioteka.su - 2015-2024 год. (0.011 сек.)