Structures and Functions
Урок 5 из 8 курса Структуры в C/C++ на Coddy.
Как только вы создадите структуру в файле C/C++, вы сможете использовать эту структуру в качестве аргумента функции или типа возвращаемого значения.
Например, предположим, что Person — это структура:
void greet(Person p) {
cout << "Hello, " << p.name << endl;
}В языке C перед ней необходимо добавить ключевое слово struct:
void greet(struct Person p) {
printf("Hello, %s\n", p.name);
}Задание
ЛегкоВам предоставлена часть кода, которая создает структуру Point, инициализирует две точки и вычисляет расстояние между ними.
Ваша задача — создать функцию с именем calcDistance, которая принимает две структуры Point в качестве аргументов, вычисляет расстояние и возвращает его (тип int).
Для двух точек p1 и p2 расстояние между ними рассчитывается следующим образом:
(p2.x - p1.x) * (p2.x - p1.x) + (p2.y - p1.y) * (p2.y - p1.y)Вам совсем не нужно изменять функцию main!
Попробуйте сами
#include <stdio.h>
struct Point {
int x;
int y;
};
// Реализуйте calcDistance здесь
int main() {
char tmp[50];
int p1x, p1y, p2x, p2y;
scanf("%s %d %d", &tmp, &p1x, &p1y);
scanf("%s %d %d", &tmp, &p2x, &p2y);
struct Point p1 = {p1x, p1y};
struct Point p2 = {p2x, p2y};
int distance = calcDistance(p1, p2);
printf("Distance between p1 and p2: %d", distance);
return 0;
};