Тема «Функции и процедуры». Задания к лабораторным занятиям по курсу «Информатика»
Задания к лабораторным занятиям по курсу «Информатика»
Тема «Арифметические выражения»
1. Дано x. Вычислить
Результат вывести в «привычном виде» вещественного числа, с 2 знаками в целой части, 4 знаками в дробной части.
2. Даны x, y. Вычислить
Результат вывести в экспоненциальном формате с 3 знаками после точки.
3. От начала суток прошло t секунд. t целое, в пределах 86400 (86400 – число секунд в сутках). Определить текущее время (часы, минуты, секунды).
4. Ввести целое число от 1 до 99. Найти его сумму цифр.
Тема «Условные операторы»
1. Даны x, y. Вычислить величины s и t:
2. Даны a, b. Найти решения уравнения ax=b (во всех вариантах: a≠0, a=0).
3. Даны длины трех отрезков a, b, c. Выяснить, существует ли треугольник с такими сторонами, если существует, то вычислить его площадь по формуле Герона: , где . Если не существует, то вывести сообщение «треугольник не существует».
4. Найти вещественные корни уравнения . Задачу сделать в двух вариантах:
а) a¹0;
б) a может быть любым.
Тема «Операторы цикла»
1. Ввести целое число n. Выписать все его делители.
2. Вывести таблицу квадратных корней целых чисел в промежутке:
а) от 1 до 15 с шагом 1;
б) от 2 до 20 с шагом 2.
Оба варианта сделать тремя способами: с помощью циклов for, while и repeat. Таблица должна выходить следующим образом (вид для варианта а)):
x sqrt(x)
1 1.00000
2 1.41421
3 1.73205
..........
x выводится в целочисленном формате, колонка должна быть выровнена по правому краю. выводится с одним знаком в целой части и 5 знаками в дробной части.
3. Дано n. Вычислить
4. Дано x. Вычислить
5. Даны x, n. Вычислить
6. Даны x, n. Вычислить
7. Даны x, e. Вычислить
Суммировать до тех пор, пока очередное слагаемое по модулю не станет меньше e. Результат сравнить (визуально) с .
8. Вычислить величину .
9. Последовательность чисел Фибоначчи определяется следующим образом: x1=x2=1, xn=xn–1+xn–2 (n³3) (числа 1, 1, 2, 3, 5, 8, 13, 21, 34, …). Найти x40. Массивов не использовать.
Тема «Массивы»
1. Дан массив из 12 вещественных элементов. Вычислить:
а) сумму всех элементов;
б) сумму всех положительных элементов;
в) количество положительных элементов;
г) сумму элементов с нечётными индексами.
2. Даны два 10‑элементных массива a и b. Вычислить
3. Даны n, массив a(n) (здесь и далее запись a(n) означает массив a из n элементов). Переставить элементы массива таким образом, чтобы они шли в обратном порядке.
4. Дан массив a(10). Найти индекс первого от начала положительного элемента (в предположении, что положительные элементы в массиве есть).
5. Даны n, массив a(n). Найти в нем:
а) наименьший элемент и его индекс;
б) наименьший среди положительных элементов (в предположении, что хотя бы один положительный элемент в массиве есть);
в) то же, что и в пункте б), но без предположения относительно существования положительных элементов. В случае, если в массиве нет ни одного положительного элемента, вывести сообщение: «положительных элементов нет».
6. Даны n, массив a(n). Заменить нулем максимальный элемент.
7. Даны n точек плоскости (хi, yi). Вывести номера тех точек, которые попадают в круг радиуса 2 с центром в начале координат.
8. Даны n точек плоскости (хi, yi). Найти радиус наименьшего круга с центром в начале координат, содержащего все эти точки.
9. Дан массив A(12). Циклически сдвинуть его элементы на одну позицию:
а) влево;
б) вправо.
20. Дан массив x(55). Вычислить
Тема «Матрицы»
1. Ввести матрицу a(5´4). Найти:
а) сумму всех элементов;
б) сумму элементов 3‑й строки;
в) наибольший элемент 2‑го столбца.
2. Дана матрица a(5´5). Заменить в ней нулями элементы под главной диагональю.
3. Преобразовать матрицу a(n´n) к транспонированному виду (отразить от главной диагонали).
4. Даны m, n, матрица a(m´n). Найти в ней количество отрицательных элементов в нечетных столбцах.
5. В матрице a(n´n) подсчитать количество нулей на обеих диагоналях.
Тема «Файлы»
1. Дана матрица a(m´n) и число x. Заменить в матрице a единицами все элементы, превосходящие x. Исходные данные прочитать из файла. Результаты записать в другой файл.
2. Дана матрица a(m´n). Сформировать массив b(m) из сумм строк матрицы a. Исходные данные прочитать из файла. Результаты записать в другой файл в виде столбца.
3. В матрице a(6´7) упорядочить все строки по возрастанию методом обмена. Исходные данные прочитать из файла. Результаты записать в тот же файл, через пустую строчку.
4. В матрице a(m´n) упорядочить все столбцы по убыванию методом перестановок. Исходные данные прочитать из файла. Результаты записать в другой файл.
5. В матрице a(5´6) найти наибольший элемент и его индексы. Если таких элементов несколько, вывести индексы всех. Исходные данные прочитать из файла. Результаты записать в тот же файл.
6. В матрице a(m´n) заменить на 25 максимальный элемент каждой строки. Исходные данные прочитать из файла. Результаты записать в другой файл.
Тема «Функции и процедуры»
1. Определить функцию, вычисляющую площадь треугольника по трем сторонам (формуле Герона) с предварительной поверкой условия существования треугольника. С помощью этой функции вычислить площадь фигуры
(a, b, c, d – даны).
2. Определить две функции max и min, вычисляющие, соответственно, максимум и минимум из двух величин. С их помощью при данных a, b, c вычислить величину
3. Даны x, y, n. Вычислить величину
,
где . Вычисление f(x, n) оформить как функцию.
4. Сделать то же задание, только вычисление f(x, n) оформить как процедуру.
5. Даны n, массивы x(n), y(n). Определить функцию, вычисляющую их скалярное произведение . С помощью этой функции вычислить величину
6. Логической переменной t присвоить значение true, если уравнения
x2+6,2x+a2=0 и x2+ax+b–1=0
имеют вещественные корни, и при этом оба корня первого уравнения лежат между корнями второго. И присвоить t значение false во всех остальных случаях. Вычисление дискриминанта «абстрактного» квадратного уравнения
ax2+bx+c=0
оформить как функцию, нахождение вещественных корней – как процедуру.