Problemas com array numerica

9 respostas
W

Galera sou novato em java e tenho o seguinte enunciado

Objetivo:
Construa uma aplicação em Java receba um vetor com 10 números inteiros digitados pelo usuário.
Calcule e imprima os números maiores do que 25 e suas posições.
Imprimir a mensagem "VAZIO" se não existir nenhum número.
Passos:
Construa uma classe pública chamada Exercicio3.
Essa classe possui o método main que deve receber um vetor com 10 números inteiros digitados pelo usuário.
Imprima SOMENTE os números maiores do que 25 e suas posições (Cada um em uma linha).
Se não existir nenhum número imprima VAZIO em letras maiúsculas.
Restrições:
A palavra VAZIO deve ser impressa em letras maiúsculas.
Exemplo
Entrada: [10, 15, 20, 25, 30, 35, 40, 45, 50, 55]
Saída:

30
4
35
5
40
6
45
7
50
8
55
9

estou com o seguinte codigo só que não estou conseguindo imprimir o valor Vazio uma unica vez alguem pode me ajudar??
import javax.swing.*;
public class Exercicio012{
 public static void main (String args[]){
  
   String aux;
   int num [] = new int[10];
   int cont = 0;

   for(int i=0; i<num.length; i++){
   aux = JOptionPane.showInputDialog("Digite um numero:");
   num[i] = Integer.parseInt(aux);

   if(num[i] > 25){
   System.out.println(num[i]);
   System.out.println(i);}
	
       
   }	
  }
 } 
}
[RESOLVIDO]

9 Respostas

E

Você já ouviu falar em variáveis booleanas (ou flags - não sei como é que seu professor ensina as coisas)?
Crie uma variável que indica se você chegou a imprimir algum valor. Se você nunca imprimiu nenhum valor, então você imprime “vazio”.

edmarr

Bem Vindo ao fórum , antes de tudo de uma olhada no seguinte tópico .

http://www.guj.com.br/posts/list/50115.java

criador

Antes de você converter o número para inteiro, você tem que verificar se foi digitado algo pelo usuário.
Se não foi, você imprime a palavra VAZIO e a posição na qual eesta posição pertence.

Exemplo:

if (!aux.isEmpty()) // Este método isEmpty() só existe apartir da versão 6 do java.
{
 // Imprime o número e a posição.
} else {
 System.out.println("VAZIO");
 System.out.println(i);
}

Porém, também teria que garantir que o que foi digitado é um número.
Mas acredito que esta consistência não é importante neste momento.

Abraço!

lina
entanglement:
Você já ouviu falar em variáveis booleanas (ou flags - não sei como é que seu professor ensina as coisas)? Crie uma variável que indica se você chegou a imprimir algum valor. Se você nunca imprimiu nenhum valor, então você imprime "vazio".

Oi,

Tenho apenas 1 perguntas:

É para imprimir VAZIO se não existir números acima de 25 ? ou se não existe nada no array ?

import javax.swing.*;
public class Exercicio012{
 public static void main (String args[]){
  
   String aux;
   int num [] = new int[10];
   boolean existe = false;

   for(int i=0; i<num.length; i++){
   aux = JOptionPane.showInputDialog("Digite um numero:");
   num[i] = Integer.parseInt(aux);

   if(num[i] > 25){
   System.out.println(num[i]);
   System.out.println(i);}
   existe = true;	
       
   }	
  }

  if (!existe) {
      System.out.println("VAZIO");
  }

 } 
}

Tchauzin!

W
lina:
entanglement:
Você já ouviu falar em variáveis booleanas (ou flags - não sei como é que seu professor ensina as coisas)? Crie uma variável que indica se você chegou a imprimir algum valor. Se você nunca imprimiu nenhum valor, então você imprime "vazio".

Oi,

Tenho apenas 1 perguntas:

É para imprimir VAZIO se não existir números acima de 25 ? ou se não existe nada no array ?

import javax.swing.*;
public class Exercicio012{
 public static void main (String args[]){
  
   String aux;
   int num [] = new int[10];
   boolean existe = false;

   for(int i=0; i<num.length; i++){
   aux = JOptionPane.showInputDialog("Digite um numero:");
   num[i] = Integer.parseInt(aux);

   if(num[i] > 25){
   System.out.println(num[i]);
   System.out.println(i);}
   existe = true;	
       
   }	
  }

  if (!existe) {
      System.out.println("VAZIO");
  }

 } 
}

Bom dia ainda não deu Certo, o negocio e o seguinte eu entro com os valores se maior imprime o numero digitado e o indice ate ai tudo bem, mais quando a pessoa não digitar nada ele continua recebendo ate acabar e imprimir a mensagem "VAZIO"...

Tchauzin!

lina

Oi,

Poderia explicar melhor ?

  • Se não existir nenhum número acima de 25 é para apresentar a mensagem VAZIO ?
  • Se o usuário não digitar nenhum número (simplesmente apertar ENTER) em todos os números é para apresentar a msg VAZIO ?

A final, quando deve ser apresentada a msg “VAZIO” ?

Tchauzin!

W

lina:
Oi,

Poderia explicar melhor ?

  • Se não existir nenhum número acima de 25 é para apresentar a mensagem VAZIO ?
  • Se o usuário não digitar nenhum número (simplesmente apertar ENTER) em todos os números é para apresentar a msg VAZIO ?

A final, quando deve ser apresentada a msg “VAZIO” ?

Tchauzin!

Desculpe o imcomodo, e para imprimir vazio quando não digitar, deixar em branco, nenhum valor no indice

lina

Oi,

Você terá que fazer como o usuario Criador falou:

import javax.swing.*;
public class Exercicio012{
 public static void main (String args[]){
  
   String aux;
   int num [] = new int[10];  

   for(int i=0; i<num.length; i++){
   aux = JOptionPane.showInputDialog("Digite um numero:");

   if (aux == null || aux.isEmpty()) {
      System.out.println("VAZIO");
      break;
   }
   else {
      num[i] = Integer.parseInt(aux);

      if(num[i] > 25){
      System.out.println(num[i]);
      System.out.println(i);  
   }       

  }
 } 
}

Tchauzin!

W
lina:
Oi,

Você terá que fazer como o usuario Criador falou:

import javax.swing.*;
public class Exercicio012{
 public static void main (String args[]){
  
   String aux;
   int num [] = new int[10];  

   for(int i=0; i<num.length; i++){
   aux = JOptionPane.showInputDialog("Digite um numero:");

   if (aux == null || aux.isEmpty()) {
      System.out.println("VAZIO");
      break;
   }
   else {
      num[i] = Integer.parseInt(aux);

      if(num[i] > 25){
      System.out.println(num[i]);
      System.out.println(i);  
   }       

  }
 } 
}

Tchauzin!

OBRIGADO voce ajudou-me a responder a questão, desculpa pelas perguntas, apesar de meu cadastro ser batante antigo aqui comecei com java a algumas semanas e estou fazendo um curso online por isso estou com algumas duvidas nesta parte. mais agradeço a Atenção de todos espero chegar um dia ao mesmo nivel da galera valeu..

Criado 26 de outubro de 2009
Ultima resposta 26 de out. de 2009
Respostas 9
Participantes 5