Над найти расстояние от точки до центра окружности. Прще использовать квадрат расстояния. Если он равен квадрату радиуса, то точка на окружности. Если меньше, то внутри круга. Больше, то вне круга.
var xm,ym,xc,yc,r:real; begin writeln('Введите координаты точки Xm, Ym'); readln(xm,ym); writeln('Введите координаты центра окружности Xc, Yc'); readln(xc,yc); writeln('Введите радиус окружности R'); readln(r); if sqr(r)=sqr(xm-xc)+sqr(ym-yc) then writeln ('На окружности') else if sqr(r)>sqr(xm-xc)+sqr(ym-yc) then writeln ('Внутри круга') else writeln('Снаружи круга'); end.
Тест №1 Введите координаты точки Xm, Ym 4 2 Введите координаты центра окружности Xc, Yc 2 2 Введите радиус окружности R 2 На окружности
Тест №2 Введите координаты точки Xm, Ym 3 1 Введите координаты центра окружности Xc, Yc 2 2 Введите радиус окружности R 2 Внутри круга
Тест №3 Введите координаты точки Xm, Ym -1 -3 Введите координаты центра окружности Xc, Yc 2 2 Введите радиус окружности R 2 Снаружи круга
var xm,ym,xc,yc,r:real;
begin
writeln('Введите координаты точки Xm, Ym');
readln(xm,ym);
writeln('Введите координаты центра окружности Xc, Yc');
readln(xc,yc);
writeln('Введите радиус окружности R');
readln(r);
if sqr(r)=sqr(xm-xc)+sqr(ym-yc) then writeln ('На окружности') else
if sqr(r)>sqr(xm-xc)+sqr(ym-yc) then writeln ('Внутри круга') else
writeln('Снаружи круга');
end.
Тест №1
Введите координаты точки Xm, Ym
4 2
Введите координаты центра окружности Xc, Yc
2 2
Введите радиус окружности R
2
На окружности
Тест №2
Введите координаты точки Xm, Ym
3 1
Введите координаты центра окружности Xc, Yc
2 2
Введите радиус окружности R
2
Внутри круга
Тест №3
Введите координаты точки Xm, Ym
-1 -3
Введите координаты центра окружности Xc, Yc
2 2
Введите радиус окружности R
2
Снаружи круга
1) выписываем остатки (те что в скобках 1 или 0 с последнего числа полученного при делении )
104 / 2 = 52 остаток (0)
52 / 2 = 26 остаток (0)
26 / 2 = 13 остаток (0)
13 / 2 = 6 остаток (1)
6 / 2 = 3 остаток (0)
3 / 2 = 1 (<== начинаем выписывать с этого числа) остаток (1) <= следующее
ответ: 1101000
2)
510 / 2 = 255 остаток (0)
255 / 2 = 127 остаток (1)
127 / 2 = 63 остаток (1)
63 / 2 = 31 остаток (1)
31 / 2 = 15 остаток (1)
15 / 2 = 7 остаток (1)
7 / 2 = 3 остаток (1)
3 / 2 = 1(<== первое число) остаток (1)
ответ : 111111110
3)
634 / 2 = 317 остаток (0)
317 / 2 = 158 остаток (1)
158 / 2 = 79 остаток (0)
79 / 2 = 39 остаток (1)
39 / 2 = 19 остаток (1)
19 / 2 = 9 остаток (1)
9 / 2 = 4 остаток (1)
4 / 2 = 2 остаток (0)
2/ 2 = 1 (<== первое число)остаток (1)
ответ : 1101111010
4) число 731 попробуйте сделать сами для понимания
II)
1)
10111 нумеруем все цифры с права налево (первый номер-0)
1(4) 0(3) 1(2) 1(1) 1(0)
далее схема такая 1*2 в четвёртой степени(4) + 0 * 2 в третьей(3)+1*2 во второй(2) + 1*2 в первой(1) +1*2 в нулевой (0)
и так мы получаем 16+0+4+2+1=23
2) 110011 нумеруем 1(5) 1(4) 0(3) 0(2) 1(1) 1(0)
1*2 в пятой +1*2 в четвёртой +1*0 в третьей +1*0 во второй +1*2 первой +1*2 в нулевой=32+16+0+0+2+1=51
два других сделайте сами для тренировки