from math import sqrt as sqrt x1, y1, x2, y2, x3, y3 = list(map(int,input().split())) a = sqrt((x2-x1)**2 + (y2-y1)**2) b = sqrt((x3-x2)**2 + (y3-y2)**2) c = sqrt((x1-x3)**2 + (y1-y3)**2) p = (a+b+c)/2 S = sqrt(p*(p-a)*(p-b)*(p-c)) R = round((a*b*c)/(4*S),3) print(R)
Объяснения: 1) Задаём координаты (вводим 6 цифр через пробел) 2) Считаем длины сторон треугольника 3) Находим полупериметр 4) Находим площадь 5) Находим радиус описанной окружности и округляем его до 3 знаков после запятой(если не нужно округлять - оставьте только (a*b*c)/(4*S)) 6) Выводим ответ
from math import sqrt as sqrt
x1, y1, x2, y2, x3, y3 = list(map(int,input().split()))
a = sqrt((x2-x1)**2 + (y2-y1)**2)
b = sqrt((x3-x2)**2 + (y3-y2)**2)
c = sqrt((x1-x3)**2 + (y1-y3)**2)
p = (a+b+c)/2
S = sqrt(p*(p-a)*(p-b)*(p-c))
R = round((a*b*c)/(4*S),3)
print(R)
Объяснения:
1) Задаём координаты (вводим 6 цифр через пробел)
2) Считаем длины сторон треугольника
3) Находим полупериметр
4) Находим площадь
5) Находим радиус описанной окружности и округляем его до 3 знаков после запятой(если не нужно округлять - оставьте только (a*b*c)/(4*S))
6) Выводим ответ
#include <iostream>
using namespace std;
void getN(int &n) {
bool flag;
do {
flag = false;
cin >> n;
if (n > 8 || n < 1) {
cout << "Неправильное число! Повторите ввод: ";
flag = true;
}
}
while (flag);
}
bool canIGo(int x1, int y1, int x2, int y2) {
int dx, dy;
dx = abs(x1 - x2);
dy = abs(y1 - y2);
return (dx == 2 && dy == 1)||(dx == 1 && dy == 2);
}
int main() {
setlocale(LC_ALL, "Russian");
int x1, y1, x2, y2;
cout << "Координаты первой точки через пробел: ";
getN(x1); getN(y1);
cout << "Координаты второй точки через пробел: ";
getN(x2); getN(y2);
cout << ((canIGo(x1, y1, x2, y2)) ? "Можно!" : "Нельзя!") << endl;
system("pause");
return 0;
}