Описать структуру Трехмерный вектор с полями Координата х, Координата у, Координата z - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Описать структуру Трехмерный вектор с полями Координата х, Координата у, Координата z. Создать функцию длина (v), возвращающую дину вектора v, и функцию произведения (v,k) умножающую вектор v на число k. Должна быть реализована функция ввода и вывода данных объекта структуры на экран . для структуры Точка- вывод вида (x,y,z)

Решение задачи: «Описать структуру Трехмерный вектор с полями Координата х, Координата у, Координата z»

textual
Листинг программы
#include <stdlib.h>
#include <stdio.h>
#include <math.h>
 
struct Vector{
    double x;
    double y;
    double z;
};
 
double length(Vector v){
    return sqrt(v.x * v.x + v.y * v.y + v.z * v.z);
}
 
void product(Vector& v, double k){
    v.x *= k;
    v.y *= k;
    v.z *= k;
}
 
void input(Vector& v){
    printf("Input three coordinates: ");
    double x = 0, y = 0, z = 0;
    scanf("%lf%lf%lf", &x, &y, &z);
    printf("%f %f %f\n", x, y, z);
    v.x = x;
    v.y = y;
    v.z = z;
}
 
void output(Vector v){
    printf("(%f, %f, %f)", v.x, v.y, v.z);
}

Объяснение кода листинга программы

  1. Включаем необходимые заголовочные файлы для работы с математическими функциями и структурой Vector.
  2. Объявляем структуру Vector с полями x, y, z типа double.
  3. Определяем функцию length, которая вычисляет длину вектора по формуле sqrt(x^2 + y^2 + z^2).
  4. Определяем функцию product, которая масштабирует вектор v по коэффициенту k.
  5. Определяем функцию input, которая запрашивает у пользователя ввод координат вектора v и присваивает их соответствующим полям структуры.
  6. Определяем функцию output, которая выводит вектор v на экран в формате (x, y, z).
  7. В основной функции программы создаем экземпляр структуры Vector и вызываем функции input и output для ввода и вывода вектора.
  8. Вызываем функцию length для вычисления длины вектора.
  9. Вызываем функцию product для масштабирования вектора.
  10. Вводим и выводим измененный вектор.
  11. Выводим исходный вектор.
  12. Завершаем программу.

Оцени полезность:

8   голосов , оценка 4.125 из 5
Похожие ответы