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

Тема 4. Одномерные массивы.

Форма проведения: решение задач.

Методические рекомендации: Реализовать обработку одномерного массива, как указано в варианте. Составить блок-схему алгоритма и написать программу.

Варианты заданий:

1. Дан массив размера N. Вывести индексы массива в том порядке, в котором соответствующие им элементы образуют возрастающую последовательность.

2. Дан массив размера N. Вывести вначале его элементы с четными индексами, а затем — с нечетными.

3. Дан целочисленный массив A размера 10. Вывести номер первого из тех его элементов A[i], которые удовлетворяют двойному неравенству: A[1] < A[i] < A[10]. Если таких элементов нет, то вывести 0.

4. Дан целочисленный массив размера N. Преобразовать его, прибавив к четным числам первый элемент. Первый элемент массива не изменять.

5. Дан целочисленный массив размера N. Вывести вначале все его четные элементы, а затем — нечетные.

6. Поменять местами минимальный и максимальный элементы массива размера 10.

7. Заменить все положительные элементы целочисленного массива размера 10 на значение минимального.

8. Дан массив размера 10. Переставить в обратном порядке элементы массива, расположенные между его минимальным и максимальным элементами.

9. Дан массив размера N. Осуществить циклический сдвиг элементов массива влево на одну позицию.

10. Дан массив размера N и число k (0 < k < 5, k < N). Осуществить циклический сдвиг элементов массива вправо на k позиций.

11. Проверить, образуют ли элементы целочисленного массива размера N арифметическую прогрессию. Если да, то вывести разность прогрессии, если нет — вывести 0.

12. Дан массив ненулевых целых чисел размера N. Проверить, чередуются ли в нем четные и нечетные числа. Если чередуются, то вывести 0, если нет, то вывести номер первого элемента, нарушающего закономерность.

13. Дан массив размера N. Найти количество его локальных минимумов.

14. Дан массив размера N. Найти максимальный из его локальных минимумов.

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

Контрольный пример.

Дан массив А(10). Определить все ли элементы массива различны.

program primer4;

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

i,j:integer;

begin

writeln('введите 10 элементов массива');

for i:=1 to 10 do readln( a[i] );

for i:=1 to 9 do begin

for j:=i+1 to 10 do begin

if a[i]=a[j] then break;

end;

if j<10 then break;

end;

if i<9 then writeln('в массиве есть одинаковые элементы')

else writeln('все элементы массива различны');

end.

1ocн[37-43], [97-99]. 2ocн[123-132]. 3ocн[42-59] 4ocн[7-11]

2доп[95-106]

Тема 5. Двумерные массивы.

Форма проведения: решение задач.

Методические рекомендации:Задав двумерный массив вещественных данных (матрицу А), реализовать его обработку, как указано в варианте. Исходные данные задать самостоятельно, учитывая специфику задачи. Составить блок-схему алгоритма и написать программу.

Варианты заданий:

1. Дано число k (0 < k < 11) и матрица размера 4 x 10. Найти сумму и произведение элементов k-го столбца данной матрицы.

2. Дана матрица размера 5 x 9. Найти суммы элементов всех ее четных столбцов.

3. Дана матрица размера 5 x 10. Найти минимальное значение в каждом столбце.

4. Дана матрица размера 5 x 10. В каждой строке найти количество элементов, больших среднего арифметического всех элементов этой строки.

5. Дана матрица размера 5 x 10. Преобразовать матрицу, поменяв местами минимальный и максимальный элемент в каждой строке.

6. Дана матрица размера 5 x 10. Найти минимальное значение среди сумм элементов всех ее столбцов и номер столбца с этим минимальным значением.

7. Дана матрица размера 5 x 10. Найти максимальный среди минимальных элементов каждой строки.

8. Дана целочисленная матрица размера 5 x 10. Вывести номер ее первой строки, содержащей равное количество положительных и отрицательных элементов (нулевые элементы не учитываются). Если таких строк нет, то вывести 0.

9. Дана матрица размера 5 x 10. Вывести номер ее последней строки, содержащей только положительные элементы. Если таких строк нет, то вывести 0.

10. Дана целочисленная матрица размера M x N. Различные строки (столбцы) матрицы назовем похожими, если совпадают множества чисел, встречающихся в этих строках (столбцах). Найти количество столбцов, похожих на последний столбец.

11. Дана целочисленная матрица размера M x N. Найти количество ее строк, все элементы которых различны.

12. Дана целочисленная матрица размера M x N. Вывести номер ее первой строки, содержащей максимальное количество одинаковых элементов.

13. Дана квадратная матрица порядка M. Найти суммы элементов ее диагоналей, параллельных главной (начиная с одноэлементной диагонали A[1,M]).

14. Дана квадратная матрица порядка M. Найти суммы элементов ее диагоналей, параллельных побочной (начиная с одноэлементной диагонали A[1,1]).

15. Дана квадратная матрица порядка M. Вывести максимальные из элементов каждой ее диагонали, параллельной побочной (начиная с одноэлементной диагонали A[1,1]).

Контрольный пример.

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

program primer5;

uses crt;

const n=5;

var a:array[1..n,1..n] of integer;

i,j,s,s1,s2:integer;

begin

clrscr;

for i:=1 to n do

for j:=1 to n do

read(a[i,j]);

s:=0; s1:=0; s2:=0;

for i:=1 to n do

for j:=1 to n do

begin

if i=j then s1:=s1+a[i,j] else

if i+j=n+1 then s2:=s2+a[i,j];

end;

s:=s+s1+s2;

write('s=',s);

end.

3ocн[123-135]. 4ocн[92-105]

5доп[12-14]

Соседние файлы в папке лекции паскаль