Problema 01
Implemente un método que remplace el último número par por el primer impar
Ejemplo
Inicio
(Remplazante) (Remplazado)
21 17 27 29 47 19 66 78
0 1 2 3 4 5 6 7
Fin
21 17 27 29 47 19 66 21
0 1 2 3 4 5 6 7
Solución
n[ pos_remplazado] = num_remplazante
n[7 ] =21
public int metodo(){
//pos_remplazado
int pos_remplazado;
for(int i = x.length-1; i>=0 ;i--){
if(n[i]%2==0){
pos_remplazado = i;
break;
}
}
//num_remplzante
int num_remplazante;
for(int i = 0; i<x.length ; i++){
if(n[i]%2!=0){
num_remplazante = n[i];
break;
}
}
//remplazo
n[ pos_remplazado] = num_remplazante;
}
Problema 02
Implemente un método que remplace el segundo número impar por el penúltimo número cuya cifra sumen 8
Ejemplo
Inicio
(Remplazante) (Remplazado)
18 17 27 29 17 19 26 15
0 1 2 3 4 5 6 7
Fin
18 17 17 29 17 19 26 15
0 1 2 3 4 5 6 7
public int metodo(){
//pos_remplazado: segundo impar
int pos_remplazado, cont1=0;
for(int i = 0; i<x.length ; i++){
if(n[i]%2!=0 && ++cont1==2){
pos_remplazado = i;
break;
}
}
//num_remplzante: penúltimo número cuyas cifras sume 8
int num_remplazante, cont2=0;
for(int i = x.length-1; i>=0 ;i--){
if( (n[i]/10 + n[i]%10 ==8 ) && ++cont ==2){
num_remplazante = n[i];
break;
}
}
//remplazo
n[ pos_remplazado] = num_remplazante;
}
No hay comentarios:
Publicar un comentario