Vectores En PSeint

Creado por brianmay el 08.06.2011 a las 00:59 hs en Developers

Hola Amigos les dejo un ejemplo de vectores en Pseint para aquellos que todavia no se estan familiarizando con Pascal.

Esta claro que en Pseint no se pueden hacer Modulos, pero si se pueden hacer arreglos. Cone so ya basta para hacer un vector con dimensiones que ustedes elijan..

Se los dejo porque es mas facil entender la logica del algoritmo cuando esta en español  :pirata:

Si tiene errores de validacion no importa lo hice solo para que vean como funciona el Vector y algunos de los procedimientos q hay en la teoria solo que estos estan escritos en el Modulo principal.

Mañana si tengo tiempo subo de como seria en Pascal y si me sale lo hago como un programa con botones.

aca el codigo:


Proceso Vectores

Dimension V[200];
Escribir "";
Escribir "Ingresa la cantidad de datos:";
Leer n;

Para i<-1 Hasta n Hacer
Escribir "";
Escribir "Ingresa el dato ",i,":";
Leer V[i];
FinPara

Repetir
Escribir "";
Escribir "Elegi una opcion: ";
Escribir "1- Buscar Numeros pares y Posicion.";
Escribir "2- Buscar Numeros Impares y Posicion.";
Escribir "3- Eliminar un dato.";
Escribir "4- Buscar Mayor y Posicion.";
Escribir "5- Mostrar datos.";
Escribir "6- Agregar datos.";
Escribir "7- Salir.";
Escribir "";
Leer opc;
Segun opc Hacer
1: Para i<-1 Hasta n Hacer
si V[i] mod 2=0 y V[i]<>0 Entonces
Escribir V[i]," en posicion: ",i;
FinSi
FinPara

2: Para i<-1 Hasta n Hacer
si V[i] mod 2<>0 Entonces
Escribir V[i]," en posicion: ",i;
FinSi
FinPara
3: Escribir "1- Dada la posicion."
Escribir "2- Dado el dato.";
Leer opcc;
Segun opcc Hacer
1: Escribir "Ingrese Posicion:"
Leer pos;
Para i<-pos Hasta n-1  Hacer
V[i]<-V[i+1];
FinPara
Escribir "Listo.";
n<-n-1;
2: Escribir "Ingrese dato:";
Leer dat;
Para i<-1 Hasta n Hacer
si V[i]=dat Entonces
pos<-i;
FinSi
FinPara
Para i<-pos Hasta n-1 Hacer
V[i]<-V[i+1];
FinPara
n<-n-1;
Escribir "Listo.";
de Otro Modo:
Escribir "Ingreso Erroneo.";
FinSegun


4: band<-Verdadero;
Para i<-1 Hasta n-1 Hacer

si band Entonces
si V[i]>V[i+1] Entonces
may<-V[i];
band<-no(band);
pos<-i;
Sino
may<-V[i+1];
band<-no(band);
pos<-i
FinSi
Sino
si V[i]>V[i+1] Entonces
may<-V[i];
pos<-i;
Sino
                              si V[i+1]>V[i] entonces
may<-V[i+1];
pos<-i
                              finsi
FinSi
FinSi
Escribir "El mayor es: ",may," en la posicion: ",pos;
FinPara
5: Para i<-1 Hasta n Hacer
Escribir "Posicion: ",i," dato: ",V[i];
FinPara
6: Escribir "Cuantos datos desea agregar:?";
Leer datos;
n<-n+1;
Para i<-n Hasta n+datos-1 Hacer
Escribir "Ingrese Dato ",(i-n+1);
Leer V[i];
FinPara
n<-n-1+datos;
Escribir "Listo.";

de Otro Modo:
si opc<>7 Entonces

Escribir "Ingreso Incorrecto.";
FinSi

FinSegun
Hasta Que opc=7
FinProceso



Atencion: Hay muchas cosas para validar en el algoritmo. No las valide porq se haria muy largo y solo lo hice para que vena el funcionamiento. Pero si ustedes quieren validen todo lo que crean necesario  :idea:


Lo principal del Funcionamiento de este algoritmo es la sentencia "Dimension".. ahi pueden poner la dimension q quieran yo puse 200 por poner un numero. Nose si habran limitaciones para la dimension pero siempre tiene que ser un numero positivo. Espero que los ayude de algo.

  • ¿Fue útil o te gustó mi post?
Posteado por:
brianmay
Recursante



Medallas

2 Comentarios


Cargando comentarios espera un momento...
No tienes permisos para comentar.


Para poder comentar necesitas estar Registrado. O.. ya tienes usuario? Logueate!