Lógica de Programação (com JAVA)
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
Clique aqui para fazer login e interagir na Comunidade :)