Program Type1; Var X1, Y1, X2, Y2: Integer; BeginWriteLn('X1 = '); ReadLn(X1); WriteLn('Y1 = '); ReadLn(Y1); WriteLn('X2 = '); ReadLn(X2); WriteLn('Y2 = '); ReadLn(Y2); If (X1 = -X2) And (Y1 = -Y2) Then WriteLn('Точки симметричны относительно начала координат') Else If (X1 = -X2) And (Y1 = Y2) Then WriteLn('Точки симметричны относительно оси Y') Else If (X1 = X2) And (Y1 = -Y2) Then WriteLn('Точки симметричны относительно оси X') Else WriteLn('Точки не симметричны'); ReadLn; End.
Без использования составных условий:
Program Type2; Var X1, Y1, X2, Y2: Integer; Begin WriteLn('X1 = '); ReadLn(X1); WriteLn('Y1 = '); ReadLn(Y1); WriteLn('X2 = '); ReadLn(X2); WriteLn('Y2 = '); ReadLn(Y2); If (X1 + X2 = 0) And (Y1 + Y2 = 0) Then WriteLn('Точки симметричны относительно начала координат') Else If (X1 + X2 = 0) And (Abs(Y1) - Abs(Y2) = 0) Then WriteLn('Точки симметричны относительно оси Y') Else If (Abs(X1) - Abs(X2) = 0) And (Y1 + Y2 = 0) Then WriteLn('Точки симметричны относительно оси X') Else WriteLn('Точки не симметричны'); ReadLn; End.
Program Zadacha; Const n = 10; m = 10; max = 15; Var A: Array [1..n, 1..m] Of Integer; B: Array[1..n] of Integer; C: Array[1..n] of Real; min, sum, count, i, j: Integer; Begin Randomize; For i := 1 To n Do For j := 1 To m Do A[i, j] := Random(max * 2) - max; min := max; For i := 1 To n Do For j := 1 To m Do If A[i, j] < min Then min := A[i, j]; For i := 1 To n Do For j := 1 To m Do If A[i, j] = min Then B[i] := 1; sum := 0; count := 0; For i := 1 To n Do Begin For j := 1 To m Do If (A[i, j] Mod 2 = 0) And (A[i, j] >= 0) Then Begin sum := sum + A[i, j]; count := count + 1; End; C[i] := sum / count; sum := 0;count := 0; End; WriteLn('Массив A:'); For i := 1 To n Do Begin For j := 1 To m Do Write(A[i, j], ' '); WriteLn; End; WriteLn('Массив B:'); For i := 1 To n DoWrite(B[i], ' '); WriteLn; WriteLn('Массив C (среднее арифметиеское положительных четных элементов массива A):'); For i := 1 To n Do Write(C[i]:5:2, ' '); ReadLn; End.