Les dejo algunas ideas para que generen el Type para el TAD CUADRADO
Opción 1.
Con la posición de los cuatro vértices en las coordenadas de un plano.
Type
punto = record
x: real;
y: real;
end;
{Definen luego dos puntos, el inferior y el superior}
cuadrado = record
infIzq, infDer, supIzq, supDer: punto
end;
Opción 2
Con la posición de un punto y el tamaño del lado.
Type
punto = record
x: real;
y: real;
end;
cuadrado = record
origen: punto
lado: real;
end;
Ejemplo hacer una función que calcule el área del cuadrado:
Utilizando la opción 2 podría resolverse:
Function Area(c: cuadrado): real;
Area := c.lado * c.lado
End;
Usando la Opción 1:
Function Area(c: cuadrado): real;
Var
lado: real;
begin
{lado es la distancia entre dos puntos}
lado := (c.infIzq.x – infDer.x);
Area: = (lado*lado);
End;