Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Egorova1

.pdf
Скачиваний:
36
Добавлен:
14.02.2015
Размер:
1.67 Mб
Скачать

Программа

*)

 

PROGRAM polinom (I,O);

 

 

VAR a:array[0..10] of real; (* Массив коэф-тов исходного

полинома *)

b:array[0..20] of real; (* Массив коэф-тов полученного полинома *)

n:integer;

(* Степень исходного полинома

*)

m:integer;

(* Степень полученного полинома

*)

i:integer;

(* Индекс

*)

begin

 

 

 

writeln;

 

 

 

(* Ввод исходного полинома *)

 

 

write ( 'Введите степень полинома n (n<=10): ');

 

 

readln (n);

 

 

 

writeln ('Введите ',n+1,' коэффициентов, начиная с a[0]' );

 

for i:=0 to n do read(a[i]);

 

 

(* Формирование и печать нового полинома *)

 

 

m:=2*n;

 

 

 

writeln('Степень полученного полинома m=',m);

 

writeln('Коэффициенты полученного полинома');

 

for i:=0 to m do

 

 

 

begin

 

 

 

if i mod 2 =1

then b[i]:=0 else b[i]:=a[i div 2];

 

 

writeln('b[',i,']=',b[i]:7:2) end

end.

4.3.4 Типовые задачи по обработке двумерных массивов

Пример 1.

(* Сложение двух матриц А и В *)

(* Вид матриц: 3 строки, 4 столбца; обычно обозначается так: A(3*4), B(3*4) *) program Summa;

const k=3;

(* кол-во строк в матрице *)

n=4;

(* кол-во столбцов в матрице *)

var i,j:integer;

(* i - индекс по строка ,j - индекс по столбцам *)

a,b,c:array[1..k,1..n] of integer; (* a,b - исходные матрицы,

begin

c=a+b - результирующая матрица *)

 

writeln;

 

(* Ввод исходных матриц a и b *) writeln('Введите матрицу А(3*4) по строкам:'); for i:=1 to k do

for j:=1 to n do read(a[i,j]);

writeln('Введите матрицу B(3*4) по строкам:');

for i:=1 to k do

 

for j:=1 to n do read(b[i,j]);

 

(* Получение матрицы c=a+b

*)

for i:=1 to k do

 

for j:=1 to n do c[i,j]:=a[i,j]+b[i,j];

(* Вывод полученной матрицы c

*)

writeln('Матрица С=А+B'); for i:=1 to k do

begin

for j:=1 to n do write(c[i,j]:5,' ');

91

writeln;

end;

end.

Пример 2.

(* Транспонирование квадратной матрицы *)

(* При транспонировании матрицы строки становятся столбцами, столбцы - строками.

Например:

 

 

 

 

1 1 1 1

 

1 2 3 4

 

исходная

2 2 2 2

матрица после

1 2 3 4

 

матрица

3 3 3 3

транспонирования 1 2 3 4

 

 

4 4 4 4

 

1 2 3 4

*)

program Transpon;

 

 

 

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

Обрабатываемая матрица

*)

n:integer;

(* Размер матрицы *)

 

 

i,j:integer;

(* Индексы

*)

 

 

k:integer;

(* Вспомогательная переменная для перестановки *)

begin

 

 

 

 

writeln;

 

 

 

 

(* Ввод исходной матрицы

*)

 

 

write('Введите размерность матрицы (не более 10): ');

 

readln(n);

 

 

 

 

writeln('Введите матрицу построчно:');

 

for i:=1 to n do

 

 

 

for j:=1 to n do read(a[i,j]);

 

 

(* Транспонирование матрицы *)

 

 

for i:=1 to n do

 

 

 

for j:=i+1 to n do

 

 

 

begin

 

 

 

 

k:=a[i,j];

 

 

 

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

 

 

 

a[j,i]:=k;

 

 

 

end;

 

 

 

 

(* Вывод матрицы после транспонирования *)

 

for i:=1 to n do

 

 

 

begin

 

 

 

 

for j:=1 to n do write(a[i,j]:5,' ');

 

 

writeln;

 

 

 

 

end;

 

 

 

 

end.

 

 

 

 

Пример 3.

 

 

 

(* Произведение матриц А

и В :

A(n*l) * B(l*m) = C(n*m)

*)

(* Обязательно: число столбцов l в первой матрице А должно быть равно

числу строк l во второй матрице В

*)

program proizv;

 

const n=3; (* Количество строк в первой матрице

*)

l=4; (* Количество столбцов в первой матрице и строк во второй *)

m=2; (* Количество столбцов во второй матрице

*)

var a:array[1..n,1..l] of real; b:array[1..l,1..m] of real; c:array[1..n,1..m] of real; i,j,k:integer;

begin writeln;

(* Ввод исходных матриц a и b *)

92

writeln('Введите матрицу (',n,'*',l,') построчно:');

 

for i:=1 to n do

 

 

 

for j:=1 to l do read(a[i,j]);

 

 

writeln('Введите матрицу (',l,'*',m,') построчно:');

 

for i:=1 to l do

 

 

 

for j:=1 to m do read(b[i,j]);

 

 

(* Умножение матриц: c=a*b

*)

 

for i:=1 to n do

 

 

 

for k:=1 to m do

 

 

 

 

begin

 

 

 

 

c[i,k]:=0;

 

 

 

 

for j:=1 to l do c[i,k]:=c[i,k]+a[i,j]*b[j,k];

 

 

end;

 

 

 

(* Вывод полученной матрицы c

*)

 

for i:=1 to n do

 

 

 

begin

 

 

 

 

for k:=1 to m do write(c[i,k]:7:2,' ');

 

 

writeln;

 

 

 

end;

 

 

 

end.

 

 

 

 

Пример 4.

 

 

 

(* Формирование матрицы по ее внешнему виду

*)

(*

Задание

 

 

 

Построить квадратную матрицу порядка n (n<=10) следующего вида:

 

|

1 2 3 4 ... n

|

 

 

|

2 1 2 3 ... (n-1)

|

 

 

|

4 2 1 2 ... (n-2)

|

 

 

|

8 4 2 1 ... (n-3)

|

 

 

|

. . . . ... . . .

|

 

 

Обозначения

Дано: n - порядок матрицы, 1<=n<=10, integer.

Результат: A[i,k] - элементы матрицы, 1<=i<=n, 1<=k<=n, integer.

Промежуточные данные: i - номер строки, integer;

 

 

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

Метод получения матрицы.

 

Матрицу А

будем получать построчно, в строке - слева направо. Установим закон

получения элемента

A[i,k] по заданным

i и k с использованием предшествующих (уже

полученных) элементов A[j,m],

для которых j<=i, m<=k.

 

 

1,

если i=k

(главная диагональ)

A[i,k] =

 

A[i,k-1]+1,

если i<k

(выше главной диагонали)

 

 

 

 

A[i-1,k]*2,

если i>k

(ниже главной диагонали)

Программа

 

 

*)

 

program Form_Matr;

 

 

var a:array[1..10,1..10] of integer; (* Формируемая матрица *)

n:integer;

(* Размер матрицы *)

 

i,k:integer;

(* Индексы

*)

 

begin

 

 

 

 

writeln;

 

 

 

 

(* Ввод порядка формируемой матрицы

*)

write('Введите размерность матрицы (не более 10): ');

readln(n);

 

 

 

 

(* Формирование матрицы

*)

 

93

for i:=1 to n do for k:=1 to n do

if i=k then a[i,k]:=1

else if i<k then a[i,k]:=a[i,k-1]+1 else a[i,k]:=a[i-1,k]*2;

(* Вывод сформированной матрицы *) writeln;

for i:=1 to n do begin

for k:=1 to n do write(a[i,k]:5,' '); writeln;

end;

end.

4.4. ЛАБОРАТОРНАЯ РАБОТА #4 "МАССИВЫ"

Массив - это упорядоченная по индексам совокупность компонентов одного типа. К необходимости применения массивов мы приходим каждый раз, когда нам необходимо связать вместе и использовать набор родственных величин. Без понятия массива невозможно решить многие вычислительные и другие задачи, и это одно из основных понятий программирования.

Цель лабораторной работы "Массивы" - научиться составлять алгоритмы и писать на языке Паскаль программы, предполагающие обработку массивов, в первую очередь одномерных и двумерных массивов.

Задание к лабораторной работе включает в себя две следующие задачи.

1.Разработать программу по формированию и обработке одномерного массива. Примеры по использованию одномерных массивов см. в п.4.3.3. Вариант конкретного задания следует взять из списка заданий в п.4.4.1.

2.Разработать программу по обработке двумерного массива. Примеры по использованию двумерных массивов см. в п.4.3.4. Вариант конкретного задания следует взять из списка заданий в п.4.4.2.

Замечание. При написании программ рекомендуется распечатывать все промежуточные результаты по формированию и обработке массивов. Полученный "протокол" работы программы позволит легко проанализировать правильность обработки массивов.

4.4.1 Одномерные массивы

ЗАДАНИЕ. Написать программу для формирования, обработки и печати одномерного массива.

 

N1.

b1,b2 ,K,bn ,

n = 18, bi = cosi +1;

 

 

 

 

 

 

 

Дана последовательность

 

 

получить последователь-

ность

вида b1 +b18 , b2 +b17 ,K,b9 +b10

и определить

в

 

 

ней

значение

и номер

максимального элемента.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

N2.

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

Из

последовательности

a ,a

2

,Ka

n

,

n 10, a

k

= sin

 

 

,

получить

новую

k !

 

 

1

 

 

 

 

 

 

 

 

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

N3.

94

Дана

последовательность

a1 ,a2 ,Kan ,ai = sin i,

и

последовательность

b1,b2 ,K,bn , n 10, bi = cos(π +i). Вычислить

(a1 +bn ) (a2 +bn 1) K(an +b1)

и

определить в последовательности a1,a2 ,Kan наибольший

элемент (его

значение

и

номер).

N4.

 

 

 

 

 

 

 

c1 ,c2 ,K,cn , n 20,

ci = i cos(π +i).

 

сi (i=1÷n)

Задана

последовательность

Если

отрицательно, то получить элемент новой последовательности, который равен сумме неотрицательных элементов, предшествующих сi.

N5.

Задана последовательность c1,c2 ,K,cn ,n 15, ci = i sin(π +i) Если сi положительно, то

заменить этот элемент на новый, равный произведению положительных элементов, предшествующих сi, и самого этого элемента сi.

N6.

 

 

 

 

π

 

Получить последовательность c ,c

,K,c

 

,

m 15, c

 

m

= cos

2

i , i =1÷m. Из этой

1 2

 

 

i

 

 

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

N7.

Из последовательности a1,a2 ,Kan , n 10, a1 = 1,a2 = 1,a3 = a1 + a2 ,a4 = a2 + a3,K, получить последовательность: первый элемент её равен a1;второй - a1 a2 ;третий -

a1 a2 a3;K, и посчитать в новой последовательности количество элементов, больших

заданной величины. N8.

Первый и второй члены последовательности равны 1. Третий равен сумме первого и

второго,

четвёртый

 

- сумме

второго и

третьего

и

т.д. Получить m членов

этой

последовательности

(

 

 

)

 

 

 

 

 

 

 

 

 

 

 

m 10 , и найти номер, элемента, который будет первым по порядку

большим некоторого t, t>1.

 

 

 

 

 

 

 

 

 

 

 

 

N9.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Из последовательности c1,c2 ,K,cm ,

m 15,

получить

последовательность

x1, x2,Kпо

правилу

x

= c , x

2

=c

1

+c2 , x

3

= c

+ c2 + c3

,K.

В

последовательности

x , x

2,K

 

1

1

 

2

1

2

3

 

 

 

1

 

определить количество элементов, превышающих заданную величину.

N10.

 

 

 

 

 

 

π

 

 

Последовательность a ,a

 

,Ka

 

, m 15,

a

 

i 2

 

2

m

i

= sin

2

упорядочить в порядке

1

 

 

 

 

 

 

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

N11.

Последовательность t1,t2 ,Ktn ,n 15,ti = i cos2i упорядочить в порядке убывания

значений элементов и найти номер элемента, который будет первым по порядку меньшим некоторого заданного a.

N12.

Из чётных элементов последовательности a1,a2 ,Kan , n 15, получить новую

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

N13.

Каждый элемент последовательности a1,a2 ,Kan , n 10, умножить на его номер и упорядочить полученную последовательность в порядке возрастания элементов.

95

N14.

a1 , a2 ,Kam ,m 15, ai = cos i + 0.5,

упорядочить

в

порядке

Последовательность

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

N15.

Из последовательности x1, x2,Kxn, такой, что x1 = 1, x2 = x1 + 2, x3 = x2 + 3,K,n 20 , получить новую последовательность, элемент которой равен соответствующему элементу

исходной, если косинус его значения отрицателен.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

N16.

 

 

 

 

 

 

 

 

c ,c

 

,K,c

 

,n 10,c

 

= 3k k!, k =1,2,Kn,

 

Получить последовательность

 

 

2

n

k

и определить в

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ней число элементов, не превышающих заданной величины.

 

 

 

 

 

 

 

 

 

 

N17.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

= i 4

 

 

 

 

 

 

Из

последовательности

 

 

a ,a

2

,Ka

n

, n 10, a

i

получить

последовательность:

 

 

a1

 

 

a2

 

 

a3

 

 

 

1

 

 

an

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

b

=

,b

=

,b

=

 

,Kb =

,

 

и

 

найти

 

в

ней

количество

элементов, не

 

 

 

 

 

 

 

1

1!

2

2!

3

3!

 

 

 

n

 

 

 

 

n!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

превышающих заданной величины c.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

N18.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Каждый положительный элемент последовательности a1,a2 ,Kan ,

n 10, заменить его

номером , а затем сделать перестановку вида (an ,an 1,Ka2 ,a1).

 

 

 

 

 

 

 

 

 

N19.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

Последовательность a ,a

 

,Ka

 

 

 

 

n 10,

 

a

 

 

 

 

 

k = 1,2,K,n.

 

2

n

 

,

 

k

= sin

 

 

,

Упорядочить её

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

k

!+1

 

 

 

 

 

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

 

 

 

 

 

N20.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Получить последовательность b1,b2 ,K,bn ,

 

n 50,

если

 

 

-k

, еслиk - нечетно,

 

bk= 2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

k,

еслиk - четно.

Среди элементов с нечётными номерами определить количество элементов, которые меньше заданной величины a, и найти их сумму.

N21.

Получить последовательность z1, z2 ,K, zn ,n 25, zk =

(

π + k

)

, k = 1

÷ n. Из этой

k + sin

 

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

N22.

Из последовательности натуральных чисел z1, z2 ,K, zn ,n 18, получить новую

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

N23.

Каждый положительный элемент последовательности a1,a2 ,Kan , n 10, заменить его

номером, а отрицательные просуммировать и найти их количество. N24.

Из последовательности y1, y2 ,K, ym ,m 40, получить последовательность, заменив в

данной каждый элемент, который по модулю больше 3, на 3,а меньший 3 - на 1. Определить в новой последовательности количество элементов , равных 3.

N25.

Из последовательности t1,t2 ,Ktn ,n 10,tk = k sin 2k , получить новую, взяв в качестве её

элементов неотрицательные элементы исходной последовательности. Определить наибольший элемент полученной последовательности.

N26.

96

Дан массив целых элементов a1,a2 ,Kan , n 10. Поменять местами минимальный и максимальный элементы и найти произведение таких элементов массива, для которых

выполнено условие ai < i!

 

 

N27.

a1,a2 ,Kan ,n 100, ak = sin2 (3k +5)cos(k 2 15),

Дана

последовательность

k = 1,2,K,n, определить, сколько элементов с номерами 1,2,4,8,16,... имеют значение, меньшее 0,25.

N28.

Дана последовательность целых чисел a1,a2 ,Kan , n 50. Расположить в этой

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

N29.

Дана последовательность целых чисел a1,a2 ,Kan , n 10. Если в данной

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

4.4.2 Двумерные массивы

ЗАДАНИЕ. Написать программу для ввода, обработки и печати двумерного массива.

N1.

Дана действительная матрица размера (n×m), n, m10.

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

N2.

Дана действительная матрица размера (n×m), n, m10.

В каждой строке матрицы поменять местами максимальный и минимальный элемент строки. Затем упорядочить (переставить) строки по возрастанию значений первых элементов строк.

N3.

Дана действительная матрица размера (n×m), n, m10.

В каждой столбце матрицы сделать следующие изменения: каждый положительный элемент заменить суммой предшествующих ему в этом столбце положительных элементов и подсчитать число таких замен. Упорядочить (переставить) столбцы матрицы по неубыванию числа замен в столбце.

N4.

Дана действительная матрица размера (n×m), n, m10.

Упорядочить (переставить) строки матрицы по невозрастанию значений наибольших элементов строк. Затем в каждой строке заменить элементы, большие 10 (по модулю), на 10, а меньшие или равные 10 (по модулю)- на номер строки, в которой элемент находится. Подсчитать число замен обоих видов (для всего массива и отдельно для каждой строки).

N5.

Дана целая матрица размера (n×m), n, m10.

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

97

Затем упорядочить (переставить) строки матрицы по возрастанию количества отрицательных элементов в строке.

N6.

Дана действительная матрица размера (n×m), n, m10.

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

Упорядочить (переставить) столбцы матрицы по неубыванию значений максимальных элементов столбцов.

N7.

Дана целая квадратная матрица размера (m×m), m10.

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

N8.

Дана действительная матрица размера (n×m), n, m10

Упорядочить (переставить) строки матрицы по неубыванию значений наименьших элементов строк. В каждой строке матрицы среди элементов, сумма индексов которых нечётна (например, для первой строки: a12, a14, a16,...), определить количество элементов, меньших заданной величины. Определить общее количество таких элементов для всей матрицы.

N9.

Дана действительная матрица размера (n×m), n, m10.

Упорядочить (переставить) строки матрицы по возрастанию количества положительных элементов в одной строке. Затем в каждой найти произведение элементов, сумма индексов которых нечётна (например, для первой строки: a12×a13×a16×...).

N10.

Дана действительная матрица размера (n×m), n, m10.

Упорядочить (переставить) столбцы матрицы по убыванию произведений элементов столбцов. Затем в каждом столбце найти сумму тех элементов, для которых сумма индексов чётна (например, для первого столбца, a11+a31+a51+...).

N11.

Дана целая матрица размера (n×m), n, m10.

В каждой строке матрицы найти количество элементов, кратных трём. Затем упорядочить (переставить) строки матрицы по убыванию найденных для каждой строки величины.

N12.

Дана действительная матрица размера (n×m), n, m10.

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

N13.

Дана действительная матрица размера (n×m), n, m10.

В каждой строке отрицательные элементы заменить номером строки и подсчитать число замен. Упорядочить (переставить) строки матрицы по убыванию числа замен в строке.

N14.

Дана действительная матрица размера (n×m), n, m10.

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

N15.

Сформировать целую матрицу размером (n×m), n, m10, по следующему правилу: первый и второй элементы каждого столбца равны номеру столбца; третий элемент любого

98

столбца равен произведению первого и второго элементов этого столбца и числа (-1); четвёртый элемент - произведению второго, третьего и числа (-1) и т.д.

Упорядочить (переставить) строки матрицы по возрастанию значений последних элементов строк.

N16.

Дана действительная матрица размера (n×m), n, m10.

В каждом столбце матрицы определить количество положительных элементов. Затем упорядочить (переставить) столбцы матрицы по возрастанию количества положительных элементов в столбце.

N17.

Дана квадратная матрица размера (m×m), m10.

В каждой строке матрицы произвести следующие изменения: первый элемент оставить без изменения, второй заменить на произведение первого на второй, третий - на произведение первого, второго и третьего и т. д.(в случае одномерного массива «а» первый элемент - а1, второй - а1 а2, третий - а1 а2 а3). Затем упорядочить (переставить) строки полученной матрицы по возрастанию значения последнего элемента строки.

N18.

Дана целая матрица размера (n×m), n, m10.

Для каждой строки матрицы найти сумму чётных элементов и произведение нечётных. Результаты оформить в виде матрицы (n×2). В полученной матрице упорядочить (переставить) строки по возрастанию второго элемента в строке.

N19.

Дана действительная матрица размера (n×m), n, m10.

Для каждой строки матрицы сделать следующие действия: если первый элемент строки больше некоторой заданной величины, то поставить этот элемент в конец строки; если равен заданной величине, то возвести в квадрат; если меньше - заменить нулём. Затем упорядочить (переставить) строки матрицы по возрастанию значения последнего элемента строки.

N20.

Дана действительная матрица размера (n×m), n, m10.

Упорядочить (переставить) строки матрицы по неубыванию значений первых элементов строк. Для каждой строки матрицы сделать следующие действия: положительные элементы заменить номером строки, а отрицательные просуммировать и найти их количество.

N21.

Дана действительная матрица размера (n×m), n, m10

Упорядочить (переставить) столбцы матрицы по возрастанию значений последних элементов столбцов. Затем в каждом столбце матрицы заменить элементы, по модулю большие номера столбца, на этот номер, и определить количество таких замен.

N22.

Дана квадратная матрица размера (m×m), m10.

В каждой строе матрицы упорядочить элементы по возрастанию. Затем упорядочить (переставить) строки матрицы по возрастанию значений первых элементов строк.

N23.

Дана действительная матрица размера (n×m), n, m10.

Упорядочить (переставить) строки матрицы по невозрастанию сумм элементов строк. Затем в каждой строке матрицы определить количество элементов, которые по модулю больше номера строки.

4.5. КОНТРОЛЬНЫЕ ВОПРОСЫ И ЗАДАНИЯ ПО МОДУЛЮ 4

1.Классификация типов данных в Паскале.

99

2.Отличие типов данных, определяемых программистом, от стандартных типов.

3.Описание перечисляемых переменных. Общий вид, примеры.

4.Упорядоченность констант перечисляемого типа.

5.Описание ограниченных (интервальных).переменных. Общий вид, примеры.

6.Порядковые типы данных. Свойства порядковых типов.

7.Стандартные функции ord, succc, pred. Описание их, примеры.

8.Описание типов в Паскале: сокращенный и полный способ. Общий вид, примеры.

9.Что такое массив ? Примеры массивов.

10.Основные понятия: массив, элемент массива, индекс элемента, количество элементов, размерность массива.

11.Описание массивов в программе на Паскале. Общий вид, примеры.

12.Что такое базовый тип массива и каким он может быть ?

13.Что такое тип индексов массива и каким он может быть ?

100

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]