Ver Mensaje Individual
  #1  
Antiguo 30-05-2017
Natyg Natyg is offline
Registrado
NULL
 
Registrado: may 2017
Posts: 3
Reputación: 0
Natyg Va por buen camino
Cómo se escribe una clase Vector en un program?

Buenas a todos!
Recién estoy aprendiendo a programar y he tenido problemas con la escritura.
Estoy intentando crear una clase con funciones y procedimientos en un unit y llamarlos en un program, sin embargo no logro escribir correctamente el program, he adaptado lo que tengo a partir de un código base que me pasaron, y no me compila.
Alguien puede ayudarme a corregir el/los errores?

Este es el Unit: (Ya me compila)

Código PHP:
unit Vector;

interface

uses SysUtils ;

const
MaxE 1024;

type
ConjuntoElementos 
= array[1..MaxEof Integer;
CEMVector = class(Exception);
CVector = class Valor:integer;

private
N:Integer;
Elementos:ConjuntoElementos;

public
constructor Crear;
procedure Dimensionar(Dim:Word);
procedure Poner(Posi:Word;Elem:Integer);
function 
Dimension Word;
function 
ComoString String;
end;

implementation

constructor CVector
.Crear;
begin
N
:=0;
end;

procedure CVector.Dimensionar(Dim:Word);
begin
if Dim<MaxE then
N
:=Dim
else
Writeln('ERROR fuera de rango; digite un numero mas pequeño');
end;

procedure CVector.Poner(Posi:Word;Elem:Integer);
begin
if (Posi 0) and (Posi <= Nthen
Elementos
[Posi]:= Elem
else
// llamar a error “ indice fuera de rango “
end;

function 
CVector.Dimension:Word;
begin
Dimension
:=N;
end;

function 
CVector.ComoString:String;
Var 
S:stringI:integer;
begin
S
:='';
for 
I:=1 to N do

S:=S+inttostr(Elementos[i])+'';
end;


end

Este es el Program: (Seguro que tiene muchos errores me disculpo por eso, una vez logre que compile pasaré el código bien escrito)
El error que me impide seguir corrigiendo es que no encuentra el CVector que escribí en el uses

Código PHP:
program Vector;

{
$APPTYPE CONSOLE}

uses
  SysUtils
CVectorVector in 'Vector.pas';

type
Aplicacion 
= class Valor:integer;
Var
Vec:CVector;


constructor aplicacion.crear;
begin
Vec
:=cvector.crear;
end;

procedure aplicacion.dimesionar;
var 
kinteger;
begin
Writeln
('Digite cantidad de casillas:');
Readln(Dim);
Vec.dimensionar(Dim);
end;

procedure aplicacion.poner;
var
I,k:integer;
begin
for i:= 1 to vec.dimension do
begin
readln
(k);
vec.poner(I,k);
end;
end;
………….
/// completar codigo
begin
End

Les agradezco mucho su ayuda!
Responder Con Cita