Лабораторная работа 3. Обработка массивов информации
Цель работы:Получить практические навыки всоставлении программ, имеющих модульную структуру.
Задание на работу: Составить компьютерную программу для задач обработки одномерных массивов информации, выделив как процедуры ввод, вывод и решение трех задач: номер первой задачи совпадает с номером студента в списке группы, номера двух следующих задач определяются путем сложения номера первой задачи с числами 17 и 34 соответственно.
Требования к отчетным материалам и документам:Отчет структуру программы, блок-схемы алгоритма преобразования для каждой процедуры,протокол тестирования, листинг программы. Отчет оформляется в электронном виде.
Последовательность выполнения работы.
1.Обсудить применение принципов модульного программирования, для задачи, предложенной преподавателем, определить структуру программы, выбрать алгоритм решения.
2.Синхронное программирование с преподавателем: выполняется кодирование и отладка программы для выбранного алгоритма, обучающиеся работают за индивидуальными компьютерами, преподаватель использует мультимедийное оборудование.
3.Подготовить шаблон модульной программы для задач преобразования одномерных массивов.
4.Составить алгоритмы решения задач в соответствии с индивидуальным вариантом и выполнить кодирование.
5.Подготовить тесты и протокол тестирования.
6.Выполнить отладку и тестирование программы.
Задания для выполнения лабораторной работы в вычислительном зале:
1.В массиве М 17 элементов. Найти сумму элементов, имеющих нечетные номера.
2.В массиве М 17 элементов. Найти сумму отрицательных элементов, имеющих нечетные номера.
3.В массиве М 21 элемент. Найти минимальный среди первых 10 элемент а его индекс.
4.В массиве М 21 элемент. Найти номер и индекс элемента, минимального абсолютной величине.
5.В массиве М 17 элементов. Изменить знак у всех положительных элементов на обратный.
6.В массиве М 9 элементов. Заменить все элементы, начиная с 3-го, элементом М(1), взятым с обратным знаком.
7.В массиве М 14 элементов. Определить сумму его элементов с 4-го по 12-нй.
8.В массиве В 17 элементов. Заменить все положительные элементы начиная с десятого единицами.
9.В массиве А 15 элементов. Найти значение максимального из элементов, имеющих нечетные номера.
10. В массиве М 14 элементов. Изменить знак у всех положительных элементов, имеющих нечетные номера, на обратный.
11. В массиве М 15 элементов. Заменить его элементы, начиная с 3-го по 6-ый, двенадцатым элементом, взятым с обратным знаком.
12. В массиве М 15 элементов. Определить количество элементов, расположенных между максимальным и минимальным.
13. В массиве М 15 элементов. Определить диапазон значений элементов массива (разность между максимальным и минимальным значениями).
14. В массиве М 16 элементов. Присвоить переменной N номер первого по порядку отрицательного элемента. При отсутствии отрицательных элементов, переменной N присвоить нулевое значение.
15. В массиве М 17 элементов. Увеличить положительные элемента на 10, отрицательные уменьшить на 2, а нулевые оставить без изменения.
16. В массиве М 21 элементов. Составить массив М1 из положительных, М2 — из отрицательных элементов исходного массива.
17. Составить массив М1 из элементов исходного массива М, расположив их в обратном порядке.
18. Массив М содержит 15 элементов. Найти максимальный элемент среди последних пяти.
19. Массив М содержит 20 элементов. Найти разность S1-S2 , где S1- сумма первых пяти элементов, S2 — сумма последних пяти.
20. Массив М содержит 16 элементов. Составить массив М1 такого же размера, в котором первый и последний элементы равны нулю, а каждый из остальных равен сумме соответствующего элемента исходного массива и двух соседних (предыдущего и последующего) элементов.
21. Массив М содержит 24 элемента. Из суммы элементов, имеющих нечетные индексы, вычесть произведение элементов с четными индексами.
22. Массив М состоит из 17 элементов. Составить сумму С+Р, где С — сумма положительных элементов, Р — произведение отрицательных.
23. Массив М состоит из 10 элементов. Составить массив М1, каждый элемент массива М1 вычислить как разность между соответствующим элементом массива М и средним арифметическим элементом этого массива.
24. Выяснить, имеются ли в массиве М, состоящем из 10 элементов, отрицательные элементы среди первых 5-ти. Если да, то переменной К присвоить значение I, если нет — 0.
25. Массив М состоит из 16 элементов. Выяснить, сколько элементов, начиная с первого, нужно сложить, чтобы сумма превысила 1000. Соответствующее значение присвоить переменной К. Если сумма всех элементов массива не достигает 1000, то переменной К присвоить значение 0.
26. Массив М содержит 10 элементов. Сравнить сумму элементов первой (С1) и второй (С2) половины массива. Если С1С2, то переменной К присвоить значение I, если нет, то К=0.
27. Массив М содержит 12 элементов. Поменять местами элементы, расположенные в первой и второй половинах массива.
28. Массив М содержит 15 элементов. Вели среди них имеется не менее 10 нулевых, переменной К присвоить значение 0, иначе К=1.
29. Массив М состоит из 80 элементов. Выяснить, есть ли среди них хотя бы 2 одинаковых.
30. Задан массив чисел. Найти количество положительных элементов, расположенных между минимальным и максимальным элементами массива.
31. Преписать элементы целочисленного массива N , кратные 5, подряд в массив М. Если такие элементы отсутствуют, то выдать соответствующее сообщение.
32. Задан массив чисел. Найти количество элементов, расположенных между первым и последним отрицательными элементами массива.
33. Найти максимальное из чисел, встречающихся в заданном массиве более одного раза.
34. Задан массив Х. записать в массив Р подряд первые 10 положительных элемента массива Х.
35. Массивы X[10] и Y[10] задают декартовы координаты точек в пространстве. Определить координаты пары точек, расстояние между которыми максимально.
36. Для массива Р, имеющего положительные и отрицательные элементы, задающие температуру воздуха , вычислить количество положительных, отрицательных и равных нулю элементов.
37. Заданы массивы координат X[10] и Y[10] вершин выпуклого многоугольника в порядке их обхода по часовой стрелке. Найти периметр многоугольника.
38. Задан массив чисел. Найти количество положительных элементов, расположенных между первым и последним отрицательными элементами массива.
39. Массивы X[10] и Y[10] задают декартовы координаты точек в пространстве. Напечатать координаты пары точек, расстояние между которыми минимально.
40. Для массива А целых чисел вычислить количество элементов, расположенных в интервале от 4 до 15, если таких чисел нет вывести соответствующее сообщение.
41. Задан массив чисел. Определить количество элементов кратных 3 и не кратных 5.
42. Задан массив чисел. Определить количество элементов, являющихся квадратами четных чисел.
43. Задан массив чисел. Определить количество элементов, имеющих четные порядковые номера и являющиеся нечетными числами.
44. Задан массив чисел .Определить количество элементов которые при делении на 7 дают остаток 1,2 или 5.
45. Задан массив чисел. Получить сумму тех элементов, которые нечетны и отрицательны.
46. Задан массив чисел. Определить число соседств двух положительных чисел.
47. Задан массив чисел. Определить число соседств двух чисел разного знака.
48. Задан массив чисел. Заменить все большие 7 элементы числом 7. Вычислить количество таких чисел.
49. Задан массив чисел. Определить число соседств двух чисел одного знака, причем модуль первого числа должен быть больше модуля второго числа.
50. Задан массив чисел. Определить имеются ли три идущих подряд нулевых элемента.
51. Задан массив чисел. Поменять местами наибольший элемент и элемент наименьший по абсолютной величине.
Пример
Задан массив целых чисел. Определить количество чисел, которые делятся на 3 и на 7, показать эти числа.
program Pr3;
{$APPTYPE CONSOLE}
uses
SysUtils;
Type
TMas=Array[1..20] of integer;
Var
Mas:TMas;
I,N,Sum:integer;
{Ввод элементов массива}
Procedure Input (N1:byte);
begin
For I:=1 to N1 do
Begin
write(‘Mas[‘,I,’]=’);Readln(Mas[I]);
End;
End;
{Вывод элементов, которые делятся на 3 или на 7 и определение их количества}
Procedure MyProc(N1:byte;Var Summa:integer);
Begin
Summa:=0;
For I:=1 to N1 do
If (Mas[I] mod 3=0)or(Mas[I] mod 7=0) then
Begin
Summa:=Summa+1;
Write(Mas[I]:6);
End;
Writeln;
Readln;
End;
Begin
Write(‘N=’);readln(N);
Input(N);
MyProc(N,Sum);
{Вывод переменной Sum — количества элементов, которые делятся на 3 или на 7}
Writeln(‘Sum=’,Sum);
Readln;
end.
Статьи к прочтению:
- Последствия для мышц и костей
- После мк все слушатели получат раздаточный материал, в котором будут авторские статьи по обработке, часть экшенов и многое другое.
Последовательность/Sequence[McElroy, Ellgin]
Похожие статьи:
-
Рекомендации к выполнению контрольной работы
Дисциплина, изучающая методы обработки информации и компьютерные технологии, входит в учебные план специальности направления. Предусмотрено чтение…
-
Правила выполнения контрольной работы
Оренбургский филиал Федерального государственного образовательного бюджетного учреждения Высшего профессионального образования «Поволжский…