#include <iostream>
#include <cmath>
#include <random>
using namespace std;
bool check(double x0, double y0, double R, double x, double y){
return abs(x0 - x) <= R + 1e-5 && abs(y0 - y) <= R + 1e-5;
}
double dist(double x0, double y0, double x, double y){
return sqrt(pow(x - x0, 2) + pow(y - y0, 2));
}
signed main(){
srand(time(NULL));
double x0, y0, R, x1, y1,x2,y2;
x0 = rand() / (rand() / 1.5);
y0 = rand() / (rand() / 1.5);
R = rand() / (rand() / 1.5);
cin >> x1 >> y1;
if(!check(x0,y0,R,x1,y1))
cout << "Your point is outside. Try again\n";
cin >> x2 >> y2;
while(!check(x0,y0,R,x2,y2)){
dist(x0,y0,x2,y2) < dist(x0,y0,x1,y1) ? cout << "Nearer than last time but it's outside yet. Try again\n" : cout << "Even not nearer than last time. Try again\n";
x1 = x2;
y1 = y2;
cin >> x2 >> y2;
}
cout << "Congratulations! Your point is inside now!";
}
Поделитесь своими знаниями, ответьте на вопрос:
Рассчитайте объём 1 страницы изображения, если выбраны следующие параметры графики: свыше 16 млн. цветов и разрешение 240 на 160.Укажите правильный вариант ответа:112 Мбайт115 200 бит112, 5 Кбайт921 600 байт75 Кбайт
a, b = map(int, input("Введите два числа: \n").split())
a1,b1 = a,b
o = 0
while a1 != b1:
if a1 > b1:
a1 = a1 - b1
else:
b1 = b1 - a1
o += 1
a2,b2 = a,b
m = 0
while a2 != 0 and b2 != 0:
if a2 > b2:
a2 = a2 % b2
else:
b2 = b2 % a2
m += 1
print(f"НОД ({a},{b}) = {a1}")
print(f"Обычный: {o}")
print(f"Модифицированный: {m}")
Объяснение:
Вводим 2 числа (в строку через пробел)
Вычисляем НОД с обычного алгоритма Евклида и считаем количество шагов цикла
Вычисляем НОД с модифицированного алгоритма Евклида и считаем количество шагов цикла
Выводим результат