Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Алгоритмизация и языки программирования. Учебно-методический комплекс.pdf
Скачиваний:
0
Добавлен:
06.09.2026
Размер:
1 Мб
Скачать
2. Разработать алгоритм и программу примеров из табл.10.
НОМЕР
ВАРИАНТА
1
Даны два вектора целых чисел А и В. Вычислить вектор С, который содержит нечетные элементы вектора А, которых нет в векторе В.
2
Расположить элементы вектора в обратном порядке. Дополнительный массив не использовать.
3
Найти среднее арифметическое элементов массива х(n), исключив из них максимальное и минимальное значение.
4
Вектор B(n) заменить вектором, у которого элементы образуются делением вектора В на их сумму.
5
Заменить все элементы вектора x(m), стоящие до максимального, нулями.
6
В массиве R(k) найти минимальный элемент среди положи­тельных и максимальный среди отрицательных.
7
В массиве У(n) заменить все его элементы, стоящие после минимального, нулями.
8
Даны массив A(n) целого типа и целое число х. Призвести
порядке, в каком они стояли в массиве.
9
На плоскости на расстоянии s[1],s[2],...,s[10] от центра кругово-го
кольца.
10
Дан вектор Х. Все его элементы не равные нулю, переписать
в конец массива (новый массив не заводить).
11
Даны два вектора А и В. Сформировать вектор С, который содержит элементы, присутствующие в обоих массивах.
12
Имеется n окружностей с центром в начале координат и
между которыми находится точка с координатами (х,у).
13
В векторе х(n) поменять местами максимальный и последний элементы.
14
В векторе У(m) поменять местами максимальный и минимальный элементы.
Массив сформировать из случайных целых чисел.
Содержание отчета
Отчет по лабораторной работе должен содержать условия,
алгоритмы, тексты программ, исходные данные и результаты по двум
примерам.
Таблица 9
УСЛОВИЕ
перестановку элементов массива так, чтобы в начале массива стояли элементы, значения которых меньше х, затем элементы, равные х, а следом элементы, значения которых больше х, в том
кольца с внутренним радиусом r и внешним R расположены точки. Определить количество точек, расположенных внутри
(сохраняя их порядок) в начало массива, а нулевые элементы –
радиусами R[1],R[2],...,R[n]. Определить номера окружностей
141
НОМЕР
ВАРИАНТА
1
Вычислить среднее геометрическое элементов вектора У(k),
2
Определить кратна ли сумма элементов вектора A(x) семи.
3
В векторе D(m) определить количество четных элементов.
4
В векторе У(k) поменять местами первый и минимальный элементы.
5
Из вектора С(n) сформировать вектор А, содержащий четные
6
Произвести сдвиг элементов вектора A(n) на к позиций влево так,
7
Найти среднее геометрическое элементов массива С[k], стоящих на
8
В массиве x(n) поменять местами минимальный и последний
9
В векторе Т(к) заменить все его элементы, стоящие после
10
Найти среднеквадратичное элементов вектора A(n). s=(a[1]*a[1]+a[2]*a[2]+...+a[n]*a[n])/n.
11
Элементы вектора В, удовлетворяющие условию B[i]>10,
12
В векторе Z(m) определить сумму нечетных элементов.
13
Определить индексы четных элементов массива А(к).
14
Определить, кратна ли сумма элементов вектора D(12) пяти.
УСЛОВИЕ
кратных трем.
элементы вектора С и вектор В, содержащий нечетные элементы.
что на место a[1] станет a[k+1], на место a[n-k] станет a[n], на место a[n-k+1] станет a[1], на место a[n-k+2] станет a[2], на место a[n] станет a[k].
четных местах.
Таблица 10
элементы.
максимального, нулями.
переписать в массив х, а элементы, удовлетворяющие условию B[i] <= 10, переписать в массив У.
Тема 7. Создание двумерных массивов и стандартных процедур
Порядок работы
1. Разработать алгоритм и программу для примеров из табл.11.
Выполнить программу, проанализировать результат.
2. Разработать алгоритм и программу для примеров из табл.12.
Матрицу сформировать из случайных целых чисел.
Содержание отчета
Отчет по лабораторной работе должен содержать условия,
алгоритмы, тексты программ, исходные данные и результаты по двум
примерам.
142
Таблица 11
НОМЕР
ВАРИАНТА
1
Для данного целого положительного N создать матрицу A(n,n), в
остальные элементы-нулевые.
2
Для данного целого положительного N сформировать матрицу
остальные элементы-нулевые.
3
В матрице A(n,n) поменять местами две строки с номерами р и q.
4
В матрице A(n,m) поэлементно вычесть последнюю строку из всех строк, кроме последней.
5
В матрице х(k,l) поменять местами максимальный и минимальный элементы.
6
Матрицу A(n,n) сформировать по следующему принципу: по
соответствующих индексов.
7
Задана матрица В(3,5). Получить матрицу V путем удаления из В строки и столбца, в которых содержится минимальный элемент.
8
Дана матрица A(m,n). Дополнить ее (m+1)-й строкой и (n+1)-м
строк или столбцов исходного массива А.
9
Транспонтировать матрицу x(m,n).
10
Из матрицы А(3,4) получить вектор В, элементами которого являются произведения элементов в каждой строке матрицы.
11
Создать вектор М, содержащий количество отрицательных элементов каждого столбца матрицы z(3,4).
12
Сформировать матрицу У(n,n) таким образом, чтобы значения всех элементов 1-го столбца были равны 1, второго - 2, n-го - n.
13
Имеется матрица A(m,n). Найти максимальный из всех
расположено выбранное число.
14
Сформировать диагональную матрицу C(m,m). У диагональной матрицы все элементы равны нулю, кроме диагональных.
15
Из матрицы К(3,4) получить вектор L, содержащий положительные элементы матрицы.
НОМЕР
ВАРИАНТА
1
Найти среднее арифметическое элементов матрицы Х(n,m) и сфор- мировать вектор У из элементов, больших среднего арифметического.
2
Сформировать одномерный массив из элементов, стоящих над
этого массива.
УСЛОВИЕ
которой элементы, стоящие по диагонали, равны единице, а все
A(n,n), в которой элементы диагонали равны номеру строки, а все
диагонали расположены единицы, выше диагонали-нули, а элементы, расположенные ниже диагонали, равны сумме
столбцом, в которых записать суммы элементов соответствующих
минимальных элементов строк. Вывести номер строки, в которой
Таблица 12
УСЛОВИЕ
главной диагональю матрицы K(m,m). Найти сумму элементов
143
3
Из матрицы У(k,k) получить вектор Т, элементами которого
4
5 6
7
8
Вычислить среднее арифметическое четных элементов матрицы У(4,5).
9
Дана матрица X(m,m). Сформировать вектор из
10
Сформировать вектор С из элементов матрицы L(m,n), больших заданного числа Z.
11
Вычислить сумму элементов матрицы X(l,l), расположенных в
12
Найти произведение элементов матрицы T(k,k), расположенных
13
14
являются элементы главной диагонали матрицы. Сформировать матрицу Z(n,n) по следующему правилу:
элементы, расположенные выше диагонали, равны нулю, а остальные элементы имеют произвольные значения.
Заполнить массив A(n,m) целыми случайными числами таким образом, чтобы и в каждой строке и в каждом столбце каждый следующий элемент был не меньше предыдущего элемента.
В матрице X(m,m) найти максимальный диагональный элемент и вывести всю строку, в которой он расположен.
Вычислить сумму элементов двух главных диагоналей матрицы С(5,5).
элементов, расположенных по спирали.
Пример заполнения матрицы (3,3).
закрашенной области.
в закрашенной области.
Сформировать Вектор Т из четных элементов матрицы P(k,l). Найти в нем максимальный элемент.
Найти разность среднего арифметического элементов первых трех и элементов последних трех столбцов матрицы X(5,6).
144
Тема 8. Методы работы со строками и отдельными символами
НОМЕР
ВАРИАНТА
Проверить, является ли строка палиндромом (т.е. читается ли она
Например, шалаш, а роза упала на лапу азора.
2
Проверить, верно ли что в строке чередуются гласные и согласные буквы. Пробелы игнорируются.
3
Проверить, имеется ли в заданном тексте баланс открывающихся и закрывающихся скобок.
4
В заданном предложении указать слово, в котором доля гласных а,е,и,о максимальна.
5
В заданном предложении найти самое короткое и самое длинное слово.
6
Для каждого символа заданного текста указать, сколько раз он
печататься не более одного раза.
7
В заданном тексте удалить символ "," и подсчитать число удаленных символов.
8
В заданном тексте подсчитать количество гласных букв.
9
В заданном тексте заменить каждый символ "а", стоящий на четном месте, на символ "о".
10
Подсчитать количество слов в предложении.
11
Отредактировать заданное предложение, заменяя многоточие точкой.
12
Для каждого слова заданного предложения указать долю согласных.
13
Определить слово в заданном предложении, в котором доля гласных максимальна.
14
Удалить из текста пробелы и подсчитать число удаленных символов.
Порядок работы
1. Разработать алгоритм и программу для примеров из табл.13.
Выполнить контрольный пример.
2. Разработать алгоритм и программу для примеров из табл.14.
Выполнить контрольный пример.
Содержание отчета
Отчет по лабораторной работе должен содержать условия,
алгоритмы, тексты программ, исходные данные и результаты по двум
примерам.
Таблица 13
УСЛОВИЕ
1
одинаково справа налево и слева направо). Пробелы игнорируются.
встречается в тексте. Сообщение об одном символе должно
145
Таблица 14
1
Дан массив из слов А(N). Найти все слова, заканчивающиеся гласной буквой.
2
3
Дан массив из слов Y (к). Найти все слова с нечетным количеством буквы "о".
4
Дан массив из слов A(m). Найти все слова с длиной, не превышающей заданной.
5 6
Дан массив из слов A(k). Найти все слова, начинающиеся и заканчивающиеся одной и той же буквой.
7
Дан массив из слов A(k). Найти все слова с нечетным коли- чеством буквы "о".
8
Дан массив из слов Y (L). Найти все слова, содержащие шипящие.
9
10
Дан массив из слов Y(m). Найти все слова с четным коли­чеством буквы "а".
11
Дан массив из слов Т(к). Найти все слова, начинающиеся или заканчивающиеся буквой "з".
12
Дан массив из слов Т(к). Найти все слова, содержащие заданное количество букв.
13
14
НОМЕР
ВАРИАНТА
УСЛОВИЕ
Дан массив из слов Х(m). Найти все слова четной длины.
Дан массив из слов X(n). Найти все слова, содержащие хотя бы одно вхождение заданной подстроки.
Дан массив из слов A(n). Найти все слова, начинающиеся с заданной буквы.
Дан массив из слов Z(m). Найти все слова, в которых есть две подряд идущие одинаковые буквы.
Дан массив из слов X(k). Найти все слова, длина которых кратна трем.
Тема 9. Задачи классической комбинаторики.
Записи и файлы.
Порядок работы
Составить программу формирования и поиска в файле (табл.15).
Содержание отчета
Отчет по лабораторной работе должен содержать текст про-
граммы, данные для контрольного примера и результат.
146
Таблица 15
Создать файл, содержащий сведения о пациентах поликлиники.
2 3
4
5
6 7
Создать файл, содержащий сведения о компьютерах. Структура
8
НОМЕР
ВАРИАНТА
1
УСЛОВИЕ
Структура записи: ФИО пациента, год рождения, адрес, диагноз. Выбрать информацию о пациентах, обратившихся с диагнозом "грипп".
Создать файл, содержащий сведения о книгах, находящихся в читальном зале библиотеки. Каждая запись должна содержать: фамилию и инициалы автора, название книги, место издания, наименование издательства, год издания, количество страниц. Выбрать зиписи о книгах издательства "Высшая школа", выпущенных после 1990 года.
Создать файл, содержащий информацию о свободных местах в поездах. Запись содержит: дату выезда, номер рейса, конечный пункт назначения, время отправления, число свободных купейных мест, число свободных плацкартных мест. Выдать информацию об имеющихся свободных местах на определенное число.
Разработать программу ("электронную сваху") для поиска женихов и невест. Создать два файла: список женихов и список невест. В каждом списке кандидат (жених или невеста) характе­ризуется записью содержащей порядковый номер кандидата; данные о кандидате (возраст, рост, вес); требования к партнеру (минимальное и максимальное значение соответствующего пара­метра). Сформировать списки пар с учетом требований кандидата.
Создать файл, содержащий сведения об учениках. Каждая запись должна содержать: номер по списку, фамилию, имя, отчество; год рождения; адрес. Выбрать сведения об учениках, проживающих на улице Книповича.
Создать файл, содержащий сведения о предметах, изучаемых в 10 классе. Запись должна содержать: название предмета, общее количество часов на год, количество часов в неделю. Выбрать информацию о предметах, количество часов в неделю для которых больше 4.
записи: тип ПК, тактовая частота, об"ем ОП, об"ем винчестера, стоимость. Выбрать информацию о компьютерах, имеющих об"ем ОП более 2 Мбайт.
Создать файл, содержащий сведения о рейсах самолетов. Для каждого рейса указаны: номер рейса, тип самолета, пункт назначения, время вылета, дни вылета. Выбрать информацию о рейсах на Санкт-Петербург.
147
9
Создать файл, содержащий сведения об итогах сдачи экзамена по
информатике. Каждая запись содержит фамилию и имя учащегося,
информацию об учащихся, повысивших годовую оценку на экзамене.
10
Создать файл, содержащий сведения об учащихся класса.
11
Создать файл, содержащий сведения о результатах чемпионата
"Спартак".
12
Протокол лыжных гонок записать в файл. Для каждого
13
Сформировать файл, содержащий сведения о магазинах округа.
14
Сформировать файл, содержащий сведения о владельцах
НОМЕР
1
В массиве A(n) и B(n) все элементы, следующие за максималь- ным (за первым по порядку, если их несколько), заменить на 1.
2
Дана матрица A(n,m). Упорядочить столбцы по убыванию элементов.
3
Дана матрица X(n,m). Упорядочить строки по возрастанию
элементов.
годовую оценку, оценку за экзамен, итоговую оценку. Выбрать
Каждая запись содержит фамилию и имя учащегося, его адрес, телефон. Выбрать информацию об учащихся имеющих телефон.
по футболу. Структура записи: названия команд, результаты игры. Выбрать информацию о результатах игр команды
участника указывается фамилия, время старта (чч:мм:сс), время финиша. Выбрать сведения об участниках выполнивших норму заданного (1,2,3) разряда.
Структура записи: название магазина, его номер, адрес, фамилия директора. Выбрать информацию о магазинах, расположенных на улице П.Зори.
автомобилей: фамилия владельца, марка автомобиля, номер. Выбрать информацию о владельцах автомобилей, имеющих заданную марку автомобиля.
Тема 10. Процедуры и функции
Порядок работы
Составить алгоритм и программу с использованием подпро-
граммы (процедуры) (табл.16).
Содержание отчета
Отчет по лабораторной работе должен содержать условие задачи, основной и вспомогательный алгоритмы, текст программы, исходные данные для контрольного примера и результат.
ВАРИАНТА
УСЛОВИЕ
Таблица 16
148
4
Дана матрица У(k,l). Получить из нее вектор, содержащий
суммы элементов строк. Отсортировать его в порядке убывания
элементов.
5
6
Вычислить:
7
Вычислить суммы элементов векторов У(k) и X(L),
8
Вычислить:
9
Решить уравнение a*x+b=0, где а - длина вектора У(n), b -
10
Решить уравнение
11
Дана матрица У(к,к). Сформировать вектор, содержащий
12
Решить уравнение
13
Заданы три матрицы A(m,m), B(n,n), C(k,k). Найти минималь-
14
Вычислить:
z
x y
x y
=
+
max max
max max
*
A B C D
A D
i i
i
k k
k
j j
j
* *
*
= =
=
+
1
10
1
5
1
10
5
ax bx c
0+ + =
px qx r
2
0+ + =
A B
C
i
i
j
j
k
k
2
1
8
2
1
10
2
1
9
= =
=
+
Из текста выделить слова и вывести их в алфавитном порядке.
где Xmax - максимальный элемент вектора X(n) Уmax - максимальный элемент вектора У(m).
находящиеся в интервале от а до b.
длина вектора Z(m).
2
где а - произведение элементов целочисленного вектора Т(к), b ­произведение элементов целочисленного вектора D(L), с ­произведение элементов целочисленного вектора R(n).
диагональные элементы матрицы У. Отсортировать его в порядке убывания элементов.
где р - минимальный элемент матрицы A(3,3), q - минимальный элемент матрицы B(4,4), r - минимальный элемент матрицы С(5,5).
ный из всех максимальных элементов главных диагоналей матриц.
149
Тема 13. Динамические переменные. Структуры данных
В ходе работы для всех вариантов необходимо написать подпрограмму создания в ОП связанного однонаправленного списка,
содержащего целые числа в поле данных (числа вводятся с кла­виатуры или из файла по выбору). Также в программах всех вариан-
тов должна быть подпрограмма распечатки списка по адресу его
первого элемента.
Используя эту подпрограмму необходимо вывести список в
наглядной форме после его создания и модификации. Основное содержимое программы должно соответствовать варианту.
Примечание: В конце программы необходимо освободить всю
захваченную память.
1. Написать программу переноса первого элемента списка в его
конец.
2. Написать программу циклического сдвига элементов списка
на одну позицию вправо.
3. Написать программу переноса в начало списка его послед-
него элемента.
4. Написать программу переворачивания списка, т.е. сменить
ссылки так, чтобы его элементы оказались расположенными в
обратном порядке.
5. Написать программу удаления из списка всех положитель-
ных элементов.
6. Найти среднее арифметическое элементов списка
7. Написать программу циклического сдвига элементов списка
влево на одну позицию.
8. Написать программу вставки и удаления элемента в начало
списка.
9. Написать программу вставки и удаления последнего эле-
мента списка.
10. Написать программу, формирующую два списка, запоняя их
числами из файлов. Объединить оба списка в один, вставляя
элементы поочередно то из одного, то из другого списка. (Первый эл­т списка №1; первый эл-т списка №2; второй эл-т списка №1; второй эл-т списка №2 и т.д.).
150
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]