Fórum Lógica de Programação (com JAVA) #604844
24/08/2019
0
Estou fazendo um exercício que pede o seguinte:
Leia um vetor de índice 5 (até ai ok!)
mas a cada valor digitado, tenho que verificar se o valor já foi digitado.
resumindo( vetor de números inteiros, porém não posso deixar números repetidos)
segue o código java:
package pf;
import java.util.Scanner;
public class Q0402 {
public static void main(String[] args) {
Scanner read = new Scanner(System.in);
int[] a = new int[5];
for (int i = 0; i < 5; i++) {
System.out.println("Informe o " + (i+1) + "° número: ");
a[i] = read.nextInt();
if(i>0){
int j=0;
while(a[i]==a[j]){
System.out.println("Número repetido");
System.out.println("Informe outro: ");
a[i] = read.nextInt();
j++;
}
}
}
}
}
Leia um vetor de índice 5 (até ai ok!)
mas a cada valor digitado, tenho que verificar se o valor já foi digitado.
resumindo( vetor de números inteiros, porém não posso deixar números repetidos)
segue o código java:
package pf;
import java.util.Scanner;
public class Q0402 {
public static void main(String[] args) {
Scanner read = new Scanner(System.in);
int[] a = new int[5];
for (int i = 0; i < 5; i++) {
System.out.println("Informe o " + (i+1) + "° número: ");
a[i] = read.nextInt();
if(i>0){
int j=0;
while(a[i]==a[j]){
System.out.println("Número repetido");
System.out.println("Informe outro: ");
a[i] = read.nextInt();
j++;
}
}
}
}
}
Samuel
Curtir tópico
+ 0
Responder
Posts
26/08/2019
Alexandre Deus
Samuel, tudo bem?
Pensei no seguinte, após você receber um valor, percorrer o vetor novamente em busca do mesmo.
A cada valor a ser inserido no vetor, a função existeValor checará se o valor existe, recebendo como parâmetro o valor e o indice a ser inserido.
Veja se é isso que você precisa.
Um abraço!
Pensei no seguinte, após você receber um valor, percorrer o vetor novamente em busca do mesmo.
package pf;
import java.util.Scanner;
public class Q0402 {
Scanner read = new Scanner(System.in);
int[] a = new int[5];
int tmp = 0;
public Boolean existeValor(int valor, int i){
for( j = 0; j < i, j++){
if(a[j] == valor){
return True;
}
}
return False;
}
public static void main(String[] args) {
for (int i = 0; i < 5; i++) {
System.out.println("Informe o " + (i+1) + "° número: ");
tmp = read.nextInt();
if(i == 0){
a[i] = tmp;
} else{
while(exiteValor(tmp, i){
System.out.println("Número repetido");
System.out.println("Informe outro: ");
tmp = read.nextInt();
}
a[i] = tmp;
}
}
}
A cada valor a ser inserido no vetor, a função existeValor checará se o valor existe, recebendo como parâmetro o valor e o indice a ser inserido.
Veja se é isso que você precisa.
Um abraço!
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)