Разместить в созданном заголовочном файле структуру, описывающую прямоугольник - C (СИ)

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

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

Здравствуйте! Мне надо разработать структуру, описывающую прямоугольник с помощью его координат и функции расчёта площади и периметра. Также разработать функцию, позволяющую создавать структуру прямоугольника на основе данных, введённых с консоли. Разместить код функций, рассчитывающих параметры фигуры в отдельном файле исходного текста. Создать заголовочный файл, позволяющий вызывать функции созданного файла исходного текста из других файлов. Разместить в созданном заголовочном файле структуру, описывающую прямоугольник. Предусмотреть в созданном заголовочном файле защиту от повторного включения с помощью Include Guard. Программа запускается и выводит ошибку на вызове функции create_struct в файле main.cpp

файл rectnagle.h

#ifndef RECTANGLE_H
#define REGTANGLE_H 
struct data 
{
    float x1;
    float y1;   
    float x2;
    float y2;
    float x3;
    float y3;
};
 
float square (data rect);
 
float perimetr (data rect);
 
data create_struct (data rect);
 
#endif

файл rectangle.cpp

#ifndef RECTANGLE_CPP
#define RECTANGLE_CPP 
#include <math.h>
#include <stdio.h>
#include "rectangle.h"
 
float square (data rect)
{
    float s = ( sqrt ( pow(rect.x2-rect.x1, 2) + pow(rect.y2-rect.y1, 2) )  * sqrt ( pow(rect.x3-rect.x2, 2) + pow(rect.y3-rect.y2, 2) ));
    return s;
}
 
float perimetr (data rect)
{
    float p = 2 * sqrt ( pow ( rect.x2 - rect.x1, 2 ) + pow ( rect.y2 - rect.y1, 2 ) )  + 2 * sqrt ( pow ( rect.x3 - rect.x2, 2 ) + pow ( rect.y3 - rect.y2, 2 ) );
    return p;   
}
 
data create_struct (data rect)
{
    printf("Write the coordinates of the corner points");
    scanf("%f %f %f %f %f %f", &rect.x1, &rect.y1, &rect.x2, &rect.y2, &rect.x3, &rect.y3 );
    return rect;
}
 
#endif

файл main.cpp

#include <stdio.h>
#include <math.h>
#include "rectangle.h"
 
int main ()
{
    data exz;
    float sq, per;
    exz = create_struct (exz);
    sq = square (exz);
    per= perimetr (exz);
    return 0;
}

Решение задачи: «Разместить в созданном заголовочном файле структуру, описывающую прямоугольник»

textual
Листинг программы
data exz = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0};

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

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

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