Написать программу в паскале. : на плоскости даны 2 точки а (х1; у2) и в (х2; у2), определить какая из них находится дальше от начала координат. я поняла, что нужно найти их длины (формулы я знаю), а правильно написать программу не могу
program prog; var x1,x2,y1,y2,i,b:integer; begin; writeln('Введите 4 точки: x1, y1; x2, y2'); readln(x1,y1,x2,y2); i:=abs(x1+y1); b:=abs(x2+y2); if i=b then writeln('Координаты находятся на одной точке') else begin if i>b then writeln('Первая координата дальше') else writeln('Вторая координата дальше'); end; end.
// PascalABC.Net 3.0, сборка 1052 const nn=100; var a:array[1..nn] of integer; p,s:longint; i,n:byte; begin Write('Введите количество элементов в массиве: '); Read(n); Writeln('Вводите целочисленные элементы массива через пробел'); s:=0; p:=1; for i:=1 to n do begin Read(a[i]); if i mod 2 = 0 then p:=p*a[i]; s:=s+a[i] end; Writeln('Произведение элементов с четными номерами: ',p); Writeln('Среднее арифметическое элементов: ',s/n) end.
Тестовое решение: Введите количество элементов в массиве: 10 Вводите целочисленные элементы массива через пробел -4 6 11 8 12 21 7 13 9 -15 Произведение элементов с четными номерами: -196560 Среднее арифметическое элементов: 6.8
// PascalABC.NET 3.3, сборка 1607 от 31.12.2017 // Внимание! Если программа не работает, обновите версию!
type R=sequence of integer;
begin var a:=ArrRandom(ReadInteger('n='),-99,99); a.Println; var P:R->BigInteger:=t->t.Aggregate(BigInteger(1),(p,q)->p*q); if P(a.Where(t->t.IsEven))>P(a.Where(t->t.IsOdd)) then Writeln('Номер максимального элемента: ',a.IndexMax+1) else Writeln('Номер минимального элемента: ',a.IndexMin+1) end.
program prog;
var x1,x2,y1,y2,i,b:integer;
begin;
writeln('Введите 4 точки: x1, y1; x2, y2');
readln(x1,y1,x2,y2);
i:=abs(x1+y1);
b:=abs(x2+y2);
if i=b then writeln('Координаты находятся на одной точке') else begin
if i>b then writeln('Первая координата дальше') else writeln('Вторая координата дальше');
end;
end.