Java Iniciante

Java

Lógica de programação

17/07/2019

package aaaaaaaaaa;

import java.util.Scanner;

public class Aaaaaaaaaa {


public static void main(String[] args) {
Scanner read = new Scanner(System.in);
int num[] = new int[4];
int cont;
for(cont=0;cont>4;cont++){
System.out.println("Digite o "+(cont+1)+" número:");
num[cont] = read.nextInt();
}
for(cont=0;cont>4;cont++)
System.out.println("Na posição "+(cont+1)+num[cont]);

}

Quando eu executo, a única coisa que aparece é: run:
CONSTRUÍDO COM SUCESSO (tempo total: 0 segundos)
Samuel

Samuel

Curtidas 0

Respostas

Sadasd

Sadasd

17/07/2019

Amigo, você cometeu um erro de lógica no seu programa, observe o seguinte:
package aaaaaaaaaa;

import java.util.Scanner;

public class Aaaaaaaaaa {


public static void main(String[] args) {
Scanner read = new Scanner(System.in);
int num[] = new int[4];
int cont;
/*Na linha abaixo você diz ao programa que cont é igual a 0, e se cont for maior do que 4 ele deve executar o código entre as chaves, agora fica a dúvida, se cont é igual a 0, e o código só executa se cont for maior do que quatro quando o código será executado? */
for(cont=0;cont>4;cont++){
System.out.println("Digite o "+(cont+1)+" número:");
num[cont] = read.nextInt();
}
//Mesmo erro na linha abaixo, com o adicional de que essa linha é desnecessária, já que efetua o mesmo teste lógico acima
for(cont=0;cont>4;cont++)
System.out.println("Na posição "+(cont+1)+num[cont]);

}
}



Eu recomendaria você substituir seu código por um loop do while, pois ele executa o comando dentro dele ao menos uma vez antes de efetuar o teste lógico. Ficaria assim:

package aaaaaaaaaa;

import java.util.Scanner;

public class Aaaaaaaaaa {


public static void main(String[] args) {
Scanner read = new Scanner(System.in);
int num[] = new int[4];
int cont;
do{
System.out.println("Digite o "+(cont+1)+" número:");
num[cont] = read.nextInt();
System.out.println("Na posição "+(cont+1)+num[cont]);
cont++;
}while(cont>4);
}

GOSTEI 0
POSTAR