Предмет: Информатика,
автор: Maryavatar
запишите на алгоритмическом языке алгоритм построения окружности заданного радиуса r, проходящий через заданные точки А и В
9 класс информатика
ПОМОГИТЕ ПОЖАЛУЙСТААА!!!!!!!!!!!!!
Ответы
Автор ответа:
0
Для начала задачу нужно решить чисто математически, решения приведены на листочках.
Поскольку задача школьная, то вариант совпадения точек не рассматривается
Алгоритмического языка не знаю, но поскольку это вариант псевдокода, то думаю алгоритм вполне понятен
алг Круг_по_двум_точкам_и_радиусу(арг действ Ax, арг действ Ay, арг действ Bx, арг действ By, арг действ r)
дано | A,B,r
надо | нарисовать окружность
нач
ввод Ax, Ay, Bx, By, r
действ dAB = ((Ax - Bx)^2 + (Ay - By)^2)^(0.5) // длина АВ
действ h = (r^2-dAB^2/4)^(0.5) // высота и длина вектора ОМ
// М середина АВ
действ Mx = (Ax + Bx) / 2
действ My = (Ay + By) / 2
//первый круг
действ Ox = Mx + (Ay - By) * h/dAB
действ Oy = My - (Ax - Bx) * h/dAB
нарисовать_круг(Ox, Oy, r)
//второй круг
Ox = Mx - (Ay - By) * h/dAB
Oy = My + (Ax - Bx) * h/dAB
нарисовать_круг(Ox, Oy, r)
кон
Поскольку задача школьная, то вариант совпадения точек не рассматривается
Алгоритмического языка не знаю, но поскольку это вариант псевдокода, то думаю алгоритм вполне понятен
алг Круг_по_двум_точкам_и_радиусу(арг действ Ax, арг действ Ay, арг действ Bx, арг действ By, арг действ r)
дано | A,B,r
надо | нарисовать окружность
нач
ввод Ax, Ay, Bx, By, r
действ dAB = ((Ax - Bx)^2 + (Ay - By)^2)^(0.5) // длина АВ
действ h = (r^2-dAB^2/4)^(0.5) // высота и длина вектора ОМ
// М середина АВ
действ Mx = (Ax + Bx) / 2
действ My = (Ay + By) / 2
//первый круг
действ Ox = Mx + (Ay - By) * h/dAB
действ Oy = My - (Ax - Bx) * h/dAB
нарисовать_круг(Ox, Oy, r)
//второй круг
Ox = Mx - (Ay - By) * h/dAB
Oy = My + (Ax - Bx) * h/dAB
нарисовать_круг(Ox, Oy, r)
кон
Приложения:


Похожие вопросы
Предмет: Английский язык,
автор: sveta6172
Предмет: История,
автор: gunkomaria008
Предмет: Английский язык,
автор: erasil2289732
Предмет: Физика,
автор: skyffal
Предмет: Химия,
автор: стрелка453