---------------------------------------------------------Pseint -----------------------------------------------------
Generar un vector de N números enteros aleatorios entre 0 y 100. Recorra el vector y clasifique en dos grupos: números primos y números compuestos. Presente todos los elementos del vector y los dos grupos de números.
Ayuda por favor y gracias por su tiempo.
Respuestas
Respuesta:
Escribir "Numeros alaeatorios"
Escribir "Digite la dimension del arreglo:"
leer num;
Dimension x[num]
Para i<-1 Hasta num Con Paso 1 Hacer
cont=0
v<-azar(100)+0
Para j<-1 Hasta v Con Paso 1 Hacer
Si v mod j=0 Entonces
cont=cont+1
FinSi
Fin Para
Si cont=2 Entonces
Escribir v," es primo"
Escribir ""
SiNo
Escribir v," es compuesto:"
Escribir ""
Fin Si
x[i]<-v
Fin Para
Escribir "Arreglo:"
Para i<-1 Hasta num Con Paso 1 Hacer
Escribir i,".)",x[i]
Fin Para
Explicación: la verdad es lo unico que se me ocurrio para cumplir con lo que pedias, espero te sirva
El algoritmo en PSeint que a partir de un vector generado al azar que a su vez genera otros dos vectores de números primos y compuestos es:
Funcion salida <- EsPrimo (num)
salida <- 1
Si num < 2 Entonces
salida <- 0
FinSi
Para i<-2 Hasta num-1 Con Paso 1 Hacer
Si num mod i = 0 Entonces
salida <- 0
FinSi
FinPara
Fin Funcion
Algoritmo vector_Primos
Escribir "Ingrese cantidad de numeros: " Sin Saltar
Leer N
Dimension numbers(N)
Dimension primos(N)
Dimension compuestos(N)
j <- 1
k <- 1
Para i<-1 Hasta N Con Paso 1 Hacer
numbers(i) <- azar(100)+1
Si EsPrimo(numbers(i)) = 1 Entonces
primos(j) <- numbers(i)
j <- j + 1
SiNo
compuestos(k) <- numbers(i)
k <- k + 1
FinSi
Fin Para
Escribir "El vector es: "
Para i<-1 Hasta N Con Paso 1 Hacer
Escribir numbers(i), ", " Sin Saltar
Fin Para
Escribir ""
Escribir "Los primo son: "
Para i<-1 Hasta j-1 Con Paso 1 Hacer
Escribir primos(i), ", " Sin Saltar
Fin Para
Escribir ""
Escribir "El resto son"
Para i<-1 Hasta k-1 Con Paso 1 Hacer
Escribir compuestos(i), ", " Sin Saltar
Fin Para
FinAlgoritmo
El diagrama de flujo de la función esPrimo se encuentra en imagen adjunta:
Recuerda: Un número primo es aquel que solo se divide exactamente entre 1 y el mismo, por lo que usamos el operador mod para obtener el residuo
Una función interesante es:
numbers(i) <- azar(100)+1
Permite generar valores al azar o aleatorios y se asignan al vector llamado numbers.