ГлавнаяПрограммирование → 4 Лабораторные работы на Pascal

4 Лабораторные работы на Pascal

Задание

ЛАБОРАТОРНАЯ РАБОТА № 1

Задача 1. Даны натуральные n, m. Получить все меньшие n натуральные числа, сумма цифр которых равна m.

Задача 2. Проверить, правильно ли в данной строке расставлены круглые скобки (т.е. находится ли справа от каждой открывающей скобки соответствующая закрывающая скобка, а слева от каждой закрывающей — соответствующая открывающая). Ответ — «да» или «нет». Используйте следующий алгоритм: На каждом шаге цикла во время просмотра строки символов текущее значение количества открывающих скобок больше или равно текущему значению количества закрывающих скобок. После окончания цикла количество открывающих скобок равно количеству закрывающих скобок.

ЛАБОРАТОРНАЯ РАБОТА № 2

Задача 1. Даны натуральное n и (построчно) элементы квадратной вещественной матрицы А четвертого порядка. Вычислить n-ю степень этой матрицы (A1 = A; A2 = A*A; A3 = A2 * A и т.д.). Указания: 1. Определите процедуру mult(a,b,c) для умножения матриц (a*b = c). 2. Для вычисления n-ой степени матрицы поступайте так же, как при вычислении в цикле n-ой степени числа, но вместо умножения чисел используйте процедуру mult. –> решения есть.

Задача 2. Дана строка. В алфавитном порядке напечатайте (по разу) все малые латинские гласные буквы, входящие в эту строку ровно 3 раза. Указание: гласные буквы — а, e, i, o, u; остальные — согласные. Решение задачи простое, если вы будете использовать множества.

ЛАБОРАТОРНАЯ РАБОТА № 3

Задача 1. Дан текстовый файл, в котором строки содержат как латинские буквы, так и цифры. Необходимо создать другой текстовый файл, содержащий строки из первого, преобразованные по следующему принципу: в начале строки расположены все буквы исходной строки, а затем все цифры (в том же порядке). Описать процедуру letter(s,t), которая записывает в текстовый файл t сначала все латинские буквы из строки s, а затем все цифры. Указание: введите исходный файл. Выполните процедуру letter(s,t) и распечатайте элементы файла t.

Задача 2. Дан массив a : array [1..n] of integer; Напишите рекурсивную программу для вычисления произведения 


Указание. Пусть функция f(k) вычисляет произведение a[1]*a[2]*…a[k]. Нам надо вычислить f(n). Определим f(k) рекурсивно: 3) если k=1, то f(k)=a[1]; 4) если k>1, то значение функции равно произведению a[k] и f(k–1).

ЛАБОРАТОРНАЯ РАБОТА № 4

Задача 1. Используйте представление последовательности строк в виде линейного списка и опишите процедуру УДАЛИТЬ(L , i), удаляющую i-ю строку из списка L.

Задача 2. Напишите программу, которая имитирует движение велосипеда. Указание: напишите процедуру отображения велосипеда с параметрами. В качестве параметра возьмите координаты какойнибудь точки велосипеда (например, середина педалей — x1, y1). Назовем данную точку «центральной». Построение велосипеда ведите относительно центральной точки (например, чтобы нарисовать колесо велосипеда, можно воспользоваться следующим действием: circle(x1+50,y1,25)). Перемещение велосипеда по экрану можно получить, реализовав, например, следующий алгоритм:

1. Задаем начальные значения переменным x1 и y1.

2. Рисуем велосипед заданным цветом с данными значениями x1 и y1 (вызываем процедуру рисования велосипеда).

3. Изменяем цвет линий на цвет, соответствующий цвету фона.

4. Рисуем велосипед измененным цветом с теми же значениями x1 и y1 (вызываем процедуру рисования велосипеда).

5. Изменяем координаты x1.

6. Изменяем цвет линий на цвет, соответствующий цвету велосипеда.

7. Рисуем велосипед заданным цветом с новыми значениями x1 и y1 (вызываем процедуру рисования велосипеда).

8. Повторяем действия 2—7.

Детали товара
  • 300 руб.
  • Лабораторная работа
  • Pascal ABC
  • Есть
  • Pascal ABC
  • Есть
Обратите внимание

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

Также если вдруг какая-то работа будет не соответствовать описанию или вы найдете ошибку, то мы всегда готовы исправить проблему в обговорённые с Вами сроки.