Введение
В этом лабораторном практикуме вы научитесь вычислять обратную косинусную функцию (arccos) в языке C. Практикум охватывает два основных этапа: чтение допустимого входного значения в диапазоне от -1 до 1 и использование функции acos() из математической библиотеки C для вычисления arccos входного значения. Пошаговые инструкции предоставляют исчерпывающее руководство по валидации входных данных и вычислению arccos, обеспечивая прочное понимание этой тригонометрической операции в программировании на языке C.
Чтение значения от -1 до 1
На этом шаге вы узнаете, как читать корректное входное значение для вычисления обратной косинусной (arccos) функции в C. Функция arccos требует входных значений в диапазоне от -1 до 1.
Сначала создайте новый файл C для демонстрации проверки ввода:
cd ~/project
nano arccos_input.c
Теперь добавьте следующий код в файл:
#include <stdio.h>
#include <math.h>
int main() {
double input;
printf("Введите значение от -1 до 1 для вычисления arccos: ");
scanf("%lf", &input);
// Проверка ввода
if (input < -1 || input > 1) {
printf("Ошибка: Входное значение должно быть в диапазоне от -1 до 1\n");
return 1;
}
printf("Корректный ввод: %f\n", input);
return 0;
}
Компилируйте и запустите программу:
gcc arccos_input.c -o arccos_input -lm
Примеры вывода:
Корректный ввод:
Введите значение от -1 до 1 для вычисления arccos: 0.5
Корректный ввод: 0.500000
Некорректный ввод:
Введите значение от -1 до 1 для вычисления arccos: 2
Ошибка: Входное значение должно быть в диапазоне от -1 до 1
Этот код демонстрирует:
- Использование
scanf()для чтения числа с плавающей запятой двойной точности - Проверку ввода, чтобы убедиться, что он находится в допустимом диапазоне для arccos
- Предоставление понятных сообщений об ошибках для некорректных вводов
Использование функции acos()
На этом шаге вы узнаете, как использовать функцию acos() из математической библиотеки C для вычисления обратного косинуса (arccos) заданного входного значения.
Продолжайте работу в той же директории проекта и измените предыдущую программу:
cd ~/project
nano arccos_calculation.c
Добавьте следующий код для реализации вычисления arccos:
#include <stdio.h>
#include <math.h>
int main() {
double input;
printf("Введите значение от -1 до 1 для вычисления arccos: ");
scanf("%lf", &input);
// Проверка ввода
if (input < -1 || input > 1) {
printf("Ошибка: Входное значение должно быть в диапазоне от -1 до 1\n");
return 1;
}
// Вычисление arccos
double angle_radians = acos(input);
printf("Введённое значение: %f\n", input);
printf("Arccos (в радианах): %f\n", angle_radians);
return 0;
}
Компилируйте программу:
gcc arccos_calculation.c -o arccos_calculation -lm
Примеры вывода:
Введите значение от -1 до 1 для вычисления arccos: 0.5
Введённое значение: 0.500000
Arccos (в радианах): 1.047198
Введите значение от -1 до 1 для вычисления arccos: -0.5
Введённое значение: -0.500000
Arccos (в радианах): 2.094395
Ключевые моменты о функции acos():
- Часть библиотеки
<math.h> - Принимает значение от -1 до 1
- Возвращает угол в радианах
- Требует флага
-lmпри компиляции для линковки математической библиотеки
Вывод Угла в Радианах
В этом шаге вы научитесь преобразовывать и выводить угол arccos в различных форматах, включая радианы, градусы и более удобочитаемое представление.
Продолжайте работу в той же директории проекта:
cd ~/project
nano arccos_angle_print.c
Добавьте следующий код для демонстрации вывода угла:
#include <stdio.h>
#include <math.h>
#define PI 3.14159265358979323846
int main() {
double input;
printf("Введите значение от -1 до 1 для вычисления arccos: ");
scanf("%lf", &input);
// Проверка ввода
if (input < -1 || input > 1) {
printf("Ошибка: Входное значение должно быть в диапазоне от -1 до 1\n");
return 1;
}
// Вычисление arccos
double angle_radians = acos(input);
// Преобразование радиан в градусы
double angle_degrees = angle_radians * (180.0 / PI);
// Вывод угла в различных форматах
printf("Введённое значение: %f\n", input);
printf("Угол в радианах: %f\n", angle_radians);
printf("Угол в градусах: %f\n", angle_degrees);
// Вывод описательного представления
printf("Описание угла: %.2f радиан (%.2f градусов)\n",
angle_radians, angle_degrees);
return 0;
}
Компилируйте программу:
gcc arccos_angle_print.c -o arccos_angle_print -lm
Примеры вывода:
Введите значение от -1 до 1 для вычисления arccos: 0.5
Введённое значение: 0.500000
Угол в радианах: 1.047198
Угол в градусах: 60.000000
Описание угла: 1.05 радиан (60.00 градусов)
Введите значение от -1 до 1 для вычисления arccos: -0.5
Введённое значение: -0.500000
Угол в радианах: 2.094395
Угол в градусах: 120.000000
Описание угла: 2.09 радиан (120.00 градусов)
Ключевые моменты:
- Используется константа
PIдля преобразования в градусы - Преобразование радиан в градусы с помощью
angle_radians * (180.0 / PI) - Демонстрация различных вариантов форматирования представления угла
- Используется
%.2fдля точности до двух десятичных знаков
Резюме
В этом лабораторном практикуме вы изучили, как считывать корректное входное значение в диапазоне от -1 до 1 для вычисления обратной функции косинуса (arccos) в языке C. Вы также узнали, как использовать функцию acos() из математической библиотеки C для вычисления arccos и вывода угла в радианах.
Ключевыми моментами этого практикума являются проверка входных данных для обеспечения того, что они находятся в допустимом диапазоне, и использование функции acos() для вычисления arccos заданного значения.



