Ayuda por favor, tema: arreglos unidimensionales
Publicado por Marthy (11 intervenciones) el 23/01/2021 23:16:46
Enunciado:
Diseñar un programa que ingrese un arreglo lineal de N numeros enteros de tres cifras
Se pide calcular e imprimir :
El promedio de los numeros cuya cantidad de cifras primo sea mayor igual a 2 (es decir si se ingresa: 243, 578, 863; se sacará el promedio de 243 y 578; por tener digitos primos mayores o iguales al número 2, ya que 863 solo tiene un número primo que es el 3)
HE AVANZADO UN POCO PERO DESPÚES NO SÉ COMO IDENTIFICAR LOS DÍGITOS PRIMOS DE CADA NÚMERO Y ADEMÁS SACAR SU PROMEDIO, O COMO SERÍA EL CODIGO?. GRACIAS.
Diseñar un programa que ingrese un arreglo lineal de N numeros enteros de tres cifras
Se pide calcular e imprimir :
El promedio de los numeros cuya cantidad de cifras primo sea mayor igual a 2 (es decir si se ingresa: 243, 578, 863; se sacará el promedio de 243 y 578; por tener digitos primos mayores o iguales al número 2, ya que 863 solo tiene un número primo que es el 3)
HE AVANZADO UN POCO PERO DESPÚES NO SÉ COMO IDENTIFICAR LOS DÍGITOS PRIMOS DE CADA NÚMERO Y ADEMÁS SACAR SU PROMEDIO, O COMO SERÍA EL CODIGO?. GRACIAS.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
import javax.swing.JOptionPane;
public class Aplicacion0301Pa1b {
static int n=Integer.parseInt(JOptionPane.showInputDialog("Ingrese la cantidad de elementos del arreglo"));
static int num [] = new int[n];
public static void main(String[] args) {
datos();
mostrar();
promprimo();
}
static void datos() {
for(int i=0;i<n;i++)
{
do
{
num[i] = Integer.parseInt(JOptionPane.showInputDialog("Ingrese un numero entero de tres cifras"));
if(num[i]<100 || num[i]>999)
JOptionPane.showMessageDialog(null,"No ingreso un numero de tres cifras. Pruebe otra vez");
}
while(num[i]<99 || num[i]>1000);
}
}
static void mostrar(){
for(int i=0;i<n;i++){
System.out.print(num[i]+" ");
}
System.out.println("");
}
static void promprimo(){
double prom;
int mayor,ultimacifra,cont=0;
boolean primo = false;
for(int i=0;i<n;i++){
if(num[i]>0){
ultimacifra=num[i]%10;
for(int j=ultimacifra;j>0;j--){
if(ultimacifra%j==0){
cont++;
}
}
if(cont==2){
primo=true;
}
num[i]=num[i]/10;
}
}
Valora esta pregunta


0