gracias de nuevo Mechanic pero sigue sin funcionar aun el la parte de read se puede escribr n cantidad de caracteres te pego mas o menos el codigo de prueba
uses crt;
var nomb : string [10]; {esto asegura que en la vairable solo se guarden 10 caraceres}
begin
gotoxy (1,10); write ('ingrese nom:');
gotoxy (1,22); write ('apellido');
gotoxy (1,13); Read (nomb);
End.
En la práctica al correr este código el usuario hace lo siguiente
Ingrese Nom: agabsbsodnlsndlnkpellido
es decir ingresa cuantos caracteres quiera sin límite,
la función lenght sólo lee la variable después de que el usuario la ingresa mientras lo esta haciendo no y por eso elusuario puede seguir pniendo los caracteres que le de la gana arruiando la presentacion en pantalla del formulario.
como controlo ese evento el read para que se detenga al llegar a diez es decir algo como esto
ingrese NOmb: adcbscbsns apellido
que quede detenido y los pase al siguiente campo con o sin mensaje de advertencia lo importante es que no pase de 10 y que cuando lohaga intencionalmente (profesores) o accidentalemente (secretaria descuidada) no pueda seguir y no se superponga sobre el siguiente campo.
muchas gracias por la ayuda mechanic