Boa tarde pessoal!
E o seguinte, estou quebrando a cabeça aqui com algums trabalhos que o professor "socou" para nos em virtude da gripe suina :x
Estou tendo serias dificuldades em 3 items do programa que se trata da manipulaçao de arrays, são estes:
1- Preciso calcular a media dos numeros impares dentro do array e mostrar a media entre eles. ( Eu ate tentei fazer mas esta dando errado essa zica, como mostra na opçao 4 do codigo ! )
2- Mostrar o menor e maior número armazenado no array e seus elementos.
3- Inverter a posição dos números armazenados no array. ( na minha opiniao e o mais dificil, nao faço ideia por onde começar! )
Pessoal, nao estou querendo a soluçao de mão beijada, ja dei uma boa pesquisada pela internet, mas nao estou compreendendo a semantica das questoes !
Peço humildemente a ajuda de voces pois ainda sou inicialnte em programaçao e estou querendo aprender como todos aqui :D
Segue abaixo o que eu ja fiz no codigo:
import java.util.Scanner;
public class ExeercicioEdson {
public static void main(String args []) {
Scanner input = new Scanner(System.in);
int num [] = new int[31];
int menu;
int somaimpar = 0;
int qtdimpar = 0;
double mediaimpar;
do{
System.out.println(" ******** Exercicio Array ******** " );
System.out.println(" *** Escolha uma opçao abaixo *** ");
System.out.println(" *** 1º- Digite 30 valores para o array *** ");
System.out.println(" *** 2º- Mostrar os numeros do array *** ");
System.out.println(" *** 3º- Alterar valor armazanado no array *** ");
System.out.println(" *** 4º- Mostrar a media dos numeros impares no array *** ");
System.out.println(" *** 5º- Mostrar o menor e o maior numero nos elementos do array *** ");
System.out.println(" *** 6º- Inverter as posiçoes do array *** ");
System.out.println(" *** 7º- Sair. *** ");
menu = input.nextInt();input.nextLine();
switch(menu){
case 1:
System.out.println(" *** Informe os 30 numeros inteiros. *** ");
for (int i=1; i<num.length; i++){
num[i]= input.nextInt();
}
break;
case 2:
System.out.println(" *** Os numeros armazenados no array sao : *** ");
for (int i=1; i<num.length; i++){
System.out.println(i+"-"+num[i]);
}
break;
case 3:
System.out.println(" *** Informe a posiçao que voce deseja informar o novo valor. *** ");
int pos = input.nextInt();
System.out.println(" *** Informe o valor desejado *** ");
int x = input.nextInt();
num[pos]= x;
break;
case 4:
System.out.println(" *** A media dos numeros impares são: *** ");
for(int i=1; i<num.length; i++){
if (num[i]%2 == 1){
somaimpar = somaimpar + num[i];
qtdimpar ++;
}
mediaimpar = somaimpar/qtdimpar;
System.out.println(" *** Media impares: *** " + mediaimpar);
}
break;
case 5:
}
}while(menu != 7);
}
}
Muito obrigado pela atençao! :D

