Определить, есть ли у кругов общие точки - C (СИ)

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

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

Пожалуйста исправьте меня, если что то не так. Задание : Точки с координатами (x1, y1) и (x2, y2) являются центрами кругов радиусов r1 и r2 соответственно. Определить, есть ли у этих кругов общие точки.

#include <conio.h>
#include <stdio.h>
#include <math.h>
int main () 
{  
     double s;
    double r2,r1,x1,x2,y1,y2;
    printf ("r1=");
    scanf ("%f",&r1);
    printf ("r2=");
    scanf ("%f",&r2);
    printf ("x1=");
    scanf ("%f",&x1);
    printf ("x2=");
    scanf ("%f",&x2);
    printf ("y1=");
    scanf ("%f",&y1);
    printf ("y2=");
    scanf ("%f",&y2);
    s=sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));
    printf("s=%f\n",&s);
    if(s>(r1+r2))
    printf("net to4ek\n");
    else
    {
        if(s==(r1+r2))
    printf("est' obshie tochki\n");}
  getch (); 
return 0;
 
}

Решение задачи: «Определить, есть ли у кругов общие точки»

textual
Листинг программы
#include <conio.h>
#include <stdio.h>
#include <math.h>
int main ()
{
    float s;
    float  r2,r1,x1,x2,y1,y2;
    printf ("r1=");
    scanf ("%f",&r1);
    printf ("r2=");
    scanf ("%f",&r2);
    printf ("x1=");
    scanf ("%f",&x1);
    printf ("x2=");
    scanf ("%f",&x2);
    printf ("y1=");
    scanf ("%f",&y1);
    printf ("y2=");
    scanf ("%f",&y2);
    s=sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));
 
 
    printf("\ns=%f  ",s);
    if(s>(r1+r2) || s<fabs(r1-r2))
    printf("net to4ek\n");
    else
     printf("est' obshie tochki\n");
  getch ();
return 0;
 
}

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

  1. Подключение необходимых библиотек для работы с математическими и графическими функциями
  2. Объявление переменных: r1, r2, x1, x2, y1, y2 (переменные для хранения радиусов и координат точек)
  3. Ввод значений радиусов и координат точек с помощью функции scanf
  4. Вычисление расстояния между точками по формуле расстояния между двумя точками на плоскости
  5. Вывод значения расстояния на экран с помощью функции printf
  6. Проверка условия: если расстояние больше суммы радиусов или меньше разности радиусов, выводится сообщение net to4ek
  7. В противном случае, выводится сообщение est' obshie tochki
  8. Вызов функции getch для приостановки выполнения программы до нажатия клавиши
  9. Конец программы возвратом значения 0

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


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

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

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