Escreva um algoritmo em Java que leia um número natural (Z) e apresente todos os números existentes entre 1 a Z, respectivamente nesta sequencia.
Onde, Z é número natural '1 <= Z <= 1000
tentei dessa forma mas não esta indo.
import java.util.Scanner;
public class number {
public static void main(String[] args) {
Scanner leia = new Scanner(System.in);
int n= 0;
n = leia.nextInt();
while (n++ <=n) {
System.out.println(n);
}
}
o laço for foi criado justamente para a ampla maioria dos casos de loop (onde podemos identificar a condição inicial, condição e incremento )
se vc quer fazer um while, tudo bem. se não der certo vc tem a escolha de usar a metodologia PPADD ( Passei Por Aqui Driven Development ) onde vc tenta imprimir o que aconteceu em cada passo desse loop. se o loop não executa então vc tenta imprimir antes o valor das variaveis e da primeira expressão exemplo
System.out.Println("Ola! eu li o numero " + n );
System.out.Println("Agora eu vou executar while(" + (n++ <=n) + ") { ... }");
ai vc começa a ter pistas do que esta acontecendo.
eu não usaria loop while para este caso pq eu preciso lembrar da ordem de prioridade das expressões. no caso do n++ eu não lembro se ele retorna o valor anterior ou posterior ( até pq existe a operação ++n ) então como eu tenho mais o que fazer da vida, eu vou fazer aquele velho laço for (i = 0; i < N ; i++ ) que essa variavel extra não arranca pedaço.
public static void main(String[] args) {
Scanner leia = new Scanner(System.in);
int n =1 , i;
n = leia.nextInt();
for (i = 1; i <= n ; i++ ) {
System.out.println(i);
}
}
public static void main(String[] args) {
Scanner leia = new Scanner(System.in);
int n =1 , i;
n = leia.nextInt();
for (i = 1; i <= n ; i++ ) {
System.out.println(i);
}
}
Dica: Você pode declarar as variáveis só no momento em que precisa delas, não precisa ser no início do método.
Exemplo:
public static void main(String[] args) {
Scanner leia = new Scanner(System.in);
int n = leia.nextInt();
for (int i = 1; i <= n ; i++ ) {
System.out.println(i);
}
}