[ Foro de Pascal ]
Buenas, gracias por contestar a mi anterior duda. Sigo con ejercicios de arrays para poder manejarlos con soltura.
El ejercicio decía así:
Crea un programa que pida al usuario varios nombres, luego le pregunte tres que quiera borrar (para lo que usará "centinelas") y luego muestre todos los nombres que no se han borrado.
No se si entendí mal el concepto de "centinela", en mi ejercicio resuelto entiendo que el centinela es la posicion que pido para borrar cada una de las veces.
Les dejo el código y así me aconsejan mejor:
Program ArrayBorradoNombres;
uses crt;
var
datos: array[1..10] of string;
cantidad: integer;
i: integer;
posicionBorrar: integer;
DatosBorrados:integer;
begin
writeln ('Teclee el numero de nombres a insertar: ');
readln(cantidad);
for i := 1 to cantidad do
begin
writeln;
writeln('Escriba el nombre: ');
writeln;
readln(datos[i]);
writeln;
end;
DatosBorrados:=0;
repeat
writeln;
writeln ('Introduzca la posisicion a borrar: ');
writeln;
readln (posicionBorrar);
writeln;
for i := posicionBorrar to cantidad-1 do
begin
datos[i] := datos[i+1];
end;
cantidad := cantidad-1;
for i := 1 to cantidad do
begin
write(datos[i], ' ');
writeln;
end;
DatosBorrados:= DatosBorrados + 1;
until(DatosBorrados=3);
writeln;
writeLn('Los datos tras el borrado: ');
writeln;
for i := 1 to cantidad do
write(datos[i], ' ');
readkey;
end.
(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)