PSeint - Arreglos

Arreglos:
Los arreglos son estructura de datos homogéneas (todos los datos son del mismo tipo) que permiten almacenar un determinado número de datos bajo un mismo identificador, para luego referirse a los mismos utilizando uno o más subíndices. Los arreglos pueden pensarse como vectores, matrices, etc.

Para crear un arreglo en PSeInt se utiliza la palabra clave Dimension, seguido del nombre del arreglo (identificador) y su tamaño (numero de subíndices) entre corchetes [].

Dimension identificador [tamaño];

En PSeInt los subíndices (posiciones) de los arreglos empiezan desde 1.

Ejemplo no. 1

Crear un arreglo llamado numeros que almacene los siguientes datos: 20, 14, 8, 0, 5, 19, 4,9,34, y 23



            
Algoritmo ejemplo
	definir M como entero
	dimension vNumero[10] 
	
	Limpiar Pantalla
	
	vNumero[1]<-20
	vNumero[2]<-14
	vNumero[3]<-8
	vNumero[4]<-0
	vNumero[5]<-5
	vNumero[6]<-19
	vNumero[7]<-4
	vNumero[8]<-9
	vNumero[9]<-34
	vNumero[10]<-23
	
	escribir ""
	escribir "se asginaron los números  ... "
	escribir""
	escribir "presione  para continuar ..."
	esperar tecla 
	limpiar pantalla
	
	escribir ""
	Para M<-1 hasta 10 con paso 1 Hacer
		escribir "el elemento en la posición ",M,"  es ",vNumero[M]
	FinPara
	
	escribir ""
	escribir "presione  para continuar ..."
	esperar tecla 
	limpiar pantalla
	
FinAlgoritmo              
            
        


Fíjese que para mostrar el contenido del arreglo utilizamos un ciclo Para que nos permita ver los datos desde el 1 hasta el 7. Si queremos introducir otros numeros al arreglo lo podemos hacer con otro ciclo Para.

Ejemplo no. 2

Crear un arreglo de una cantidad de posiciones definidas por el usuario y llénelo con los números que el usuario desee.

            
Algoritmo ejemplo
	
	Limpiar Pantalla
	
	escribir ""
	escribir "captura de números .."
	escribir ""
	
	definir cantNumeros como entero
	escribir "cuántos números quieres capturar ?" sin saltar
	leer cantNumeros
	
	escribir ""
	
	definir M como entero
	dimension vNumero[cantNumeros] 
	escribir ""
	escribir "captura de números  ... "
	escribir""
	escribir "presione  para continuar ..."
	esperar tecla 
	
	escribir ""
	Para M<-1 hasta cantNumeros con paso 1 Hacer
		escribir "cuál es el elemento en la posición ",M,"  ? " Sin Saltar
		leer vNumero[M]
	FinPara
	
	escribir ""
	escribir "los números capturados son ... "
	escribir""
	escribir "presione  para continuar ..."
	esperar tecla 
	
	
	escribir ""
	Para M<-1 hasta cantNumeros con paso 1 Hacer
		escribir "el elemento en la posición ",M,"  es ",vNumero[M]
	FinPara
	
	
	escribir ""
	escribir "presione  para continuar ..."
	esperar tecla 
	limpiar pantalla
	
FinAlgoritmo
            
        


Un problema con los arreglos en PSeInt es que el tamaño de estos debe ser un número y además positivo. No podemos hacer lo siguiente:

Dimension numero[n];

Ya que el arreglo numero tiene como tamaño n y ésta no es una constante numérica, lo que produciría un error.

Para ello debemos preguntar por la cantidad de elementos que vamos a utilizar

Ejemplo no. 3

Llenar un arreglo con nombres de personas. Preguntar al usuario cuantos nombres desea ingresar.

            
Algoritmo ejemplo
	
	Limpiar Pantalla
	
	escribir ""
	escribir "captura de nombres de personas .."
	escribir ""
	
	definir cantPersonas como entero
	escribir "cuántos nombres de personas quieres capturar ?" sin saltar
	leer cantPersonas
	
	escribir ""
	
	definir M como entero
	dimension vNombre[cantPersonas] 
	escribir ""
	escribir "captura de nombres  ... "
	escribir""
	escribir "presione  para continuar ..."
	esperar tecla 
	
	escribir ""
	Para M<-1 hasta cantPersonas con paso 1 Hacer
		escribir "cuál es el nombre en la posición ",M,"  ? " Sin Saltar
		leer vNombre[M]
	FinPara
	
	escribir ""
	escribir "los nombres capturados son ... "
	escribir""
	escribir "presione  para continuar ..."
	esperar tecla 
	
	
	escribir ""
	Para M<-1 hasta cantPersonas con paso 1 Hacer
		escribir "el nombre en la posición ",M,"  es ",vNombre[M]
	FinPara
	
	
	escribir ""
	escribir "presione  para continuar ..."
	esperar tecla 
	limpiar pantalla
	
FinAlgoritmo
            
        


Ejemplo no. 4

Llenar un arreglo con nombres y edades de personas. Preguntar al usuario cuantos nombres y edades desea ingresar.

            
            Algoritmo ejemplo
	
                Limpiar Pantalla
                
                escribir ""
                escribir "captura de nombres de personas .."
                escribir ""
                
                definir cantPersonas como entero
                escribir "cuántos nombres y edades de personas quieres capturar ?" sin saltar
                leer cantPersonas
                
                escribir ""
                
                definir M como entero
                dimension vNombre[cantPersonas] 
                dimension vEdad[cantPersonas] 
                escribir ""
                escribir "captura de nombres y edades ... "
                escribir""
                escribir "presione  para continuar ..."
                esperar tecla 
                
                escribir ""
                Para M<-1 hasta cantPersonas con paso 1 Hacer
                    escribir ""
                    escribir "cuál es el nombre en la posición ",M,"  ? " Sin Saltar
                    leer vNombre[M]
                    escribir "cuál es la edad en la posición ",M,"  ? " Sin Saltar
                    leer vEdad[M]
                    escribir ""
                FinPara
                
                escribir ""
                escribir "los nombres y edades capturados son ... "
                escribir""
                escribir "presione  para continuar ..."
                esperar tecla 
                
                
                escribir ""
                Para M<-1 hasta cantPersonas con paso 1 Hacer
                    escribir "el nombre y la edad en la posición ",M,"  es ",vNombre[M],", edad = ",vEdad[M]
                FinPara
                
                
                escribir ""
                escribir "presione  para continuar ..."
                esperar tecla 
                limpiar pantalla
                
            FinAlgoritmo

            
        


Regresar