Над найти расстояние от точки до центра окружности. Прще использовать квадрат расстояния. Если он равен квадрату радиуса, то точка на окружности. Если меньше, то внутри круга. Больше, то вне круга.
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 a:array of integer;
N,i,k:integer;
function f(a:integer):Boolean;
begin
if (a mod 2=0) then f:=True else
f:=False;
end;
BEGIN
k:=0;
writeln('Введите количество элементов массива');
readln(N);
SetLength(A,N);
writeln('Введите массив');
for i:=0 to N-1 do begin
read(a[i]);
if (f(a[i])=True) then k:=k+1;
end;
writeln('Количество чётных элементов массива = ',k);
end.
Вводите с клавиатуры кол-во элементов массива, а затем сам массив.
1) 01101011
2) а)50 б)214
3.а-2, б-1, в-4, г-3
4. <
>
=
5. a)68,105 б) 0,000152 в) 241300
6. а) 0,6711011*10³ б) 0,73211*10⁻³
В программе последовательно определяются номера элементов (num), имеющих знак, противоположный знаку предыдущих (предыдущего) элемента (<span>Dat[k]*m < 0</span>). Переменная num в цикле последовательно будет принимать значения 2, 3, 5, 6, 8, 9. После цикла будет выведено последнее значение num. (У элемента Dat[10] знак совпадает со знаком элемента Dat[9].)
Заполнение случайными числами:
Const N = 20;
Var
A:array[1..N] of real;
i:integer;
R:real;
Begin
Randomize;
R:=0;
For i:= 1 to N do
Begin
A[i]:=random*(2*N+1)-N;
R:=R-A[i];
Write(A[i]:0:1,' ')
End;
WriteLn;
WriteLn('R = ',R);
End.
Ввод с клавиатуры:
Const
N = 20;
Var
A:array[1..N] of real;
i:integer;
R:real;
Begin
R:=0;
For i:= 1 to N do
Begin
Read(A[i]);
R:=R-A[i];
End;
WriteLn('R = ',R);
End.