Como copiar arreglos en Pseint

Hola a todos, hoy os voy a explicar como podemos copiar arreglos en PseInt.

A veces, necesitamos tener una copia de un arreglo para nuestros procesos.

Vamos a tener dos arreglos donde uno de ellos lo rellenaremos con números aleatorios y otro arreglo donde copiaremos los valores.

Os dejo un tutorial para rellenar un arreglo con números aleatorios:

Rellenar un arreglo con números aleatorios en PseInt

Veamos como seria el código:

[code]

Proceso testCopiaArreglos

Dimension arregloOriginal(5);
Dimension arregloCopia(5);
definir i, longitudArreglo, minimo, maximo, arregloOriginal, arregloCopia como numero;
longitudArreglo <- 5;
minimo <- 10;
maximo <- 20;

rellenarArrayAleatorios(arregloOriginal, longitudArreglo, minimo, maximo);

// Copio el array
Para i<-0 Hasta longitudArreglos-1 Con Paso 1 Hacer
arregloCopia(i) <- arregloOriginal(i);
FinPara

Escribir «Arreglo original»;
Para i<-0 Hasta longitudArreglo-1 Con Paso 1 Hacer Escribir «Valor de «, i, » => «, arregloOriginal(i);
FinPara

Escribir «Arreglo copia»;
Para i<-0 Hasta longitudArreglo-1 Con Paso 1 Hacer Escribir «Valor de «, i, » => «, arregloCopia(i);
FinPara

FinProceso

//Genera un numero aleatorio entre el minimo y máximo incluidos
SubProceso numeroAzar <- numeroAleatorioEntre(minimo, maximo)
definir numeroAzar como numero;
numeroAzar <- 0;

Repetir
numeroAzar <- AZAR(maximo+1); Hasta Que numeroAzar >= minimo Y numeroAzar<=maximo

FinSubProceso

//Rellena un arreglo de numeros aleatorios entre un mínimo y un máximo, números mínimo y máximo incluidos.
SubProceso rellenarArrayAleatorios(arreglo, longitudArreglo, minimo, maximo)

definir numeroAzar,i como numero;
numeroAzar <- 0;

Para i<-0 Hasta longitudArreglo-1 Con Paso 1 Hacer

numeroAzar <- numeroAleatorioEntre(minimo, maximo);

arreglo(i) <- numeroAzar;
FinPara

FinSubProceso

[/code]

Este seria el resultado:

copiar arreglos pseint 1 copiar arreglos pseint 2

También lo podemos hacer en subproceso:

[code] //Arreglo1 = arreglo original
//Arreglo2 = arreglo donde se copiaran los datos del arreglo original
//longitudArreglos = La longitud de ambos arreglos, deben ser iguales
SubProceso copiaArreglos (arreglo1, arreglo2, longitudArreglos)

definir i como numero;

Para i<-0 Hasta longitudArreglos-1 Con Paso 1 Hacer

arreglo2(i) <- arreglo1(i);

FinPara

FinSubProceso
[/code]

Así lo adaptaríamos:

[code] Proceso testCopiaArreglos

Dimension arregloOriginal(5);
Dimension arregloCopia(5);
definir i, longitudArreglo, minimo, maximo, arregloOriginal, arregloCopia como numero;
longitudArreglo <- 5;
minimo <- 10;
maximo <- 20;

rellenarArrayAleatorios(arregloOriginal, longitudArreglo, minimo, maximo);

// Copio el array
copiaArreglos(arregloOriginal, arregloCopia, longitudArreglo);

Escribir «Arreglo original»;
Para i<-0 Hasta longitudArreglo-1 Con Paso 1 Hacer Escribir «Valor de «, i, » => «, arregloOriginal(i);
FinPara

Escribir «Arreglo copia»;
Para i<-0 Hasta longitudArreglo-1 Con Paso 1 Hacer Escribir «Valor de «, i, » => «, arregloCopia(i);
FinPara

FinProceso

//Genera un numero aleatorio entre el minimo y máximo incluidos
SubProceso numeroAzar <- numeroAleatorioEntre(minimo, maximo)
definir numeroAzar como numero;
numeroAzar <- 0;

Repetir

numeroAzar <- AZAR(maximo+1); Hasta Que numeroAzar >= minimo Y numeroAzar<=maximo

FinSubProceso

//Rellena un arreglo de numeros aleatorios entre un mínimo y un máximo, números mínimo y máximo incluidos.
SubProceso rellenarArrayAleatorios(arreglo, longitudArreglo, minimo, maximo)

definir numeroAzar,i como numero;
numeroAzar <- 0;

Para i<-0 Hasta longitudArreglo-1 Con Paso 1 Hacer

numeroAzar <- numeroAleatorioEntre(minimo, maximo);

arreglo(i) <- numeroAzar;
FinPara

FinSubProceso

//Arreglo1 = arreglo original
//Arreglo2 = arreglo donde se copiaran los datos del arreglo original
//longitudArreglos = La longitud de ambos arreglos, deben ser iguales
SubProceso copiaArreglos (arreglo1, arreglo2, longitudArreglos)

definir i como numero;

Para i<-0 Hasta longitudArreglos-1 Con Paso 1 Hacer

arreglo2(i) <- arreglo1(i);

FinPara

FinSubProceso
[/code]

Recordar que tenemos más subprocesos útiles en nuestra biblioteca en github.

Y no te olvides que tenemos un curso en udemy de PseInt.

Curso iniciación pseudocodigo con Pseint

Espero que os sea de ayuda. Si tenéis dudas, preguntad. Estamos para ayudarte.

Compartir

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *


Warning: Trying to access array offset on value of type null in /home2/discodur/public_html/discoduroderoer/wp-content/themes/disto/single.php on line 539