FOR não imprimindo saida

6 respostas Resolvido
java
nelsonfonseca

Estou tendo dificuldade com algo relativamente simples. Ao por um for para repetir o estado atual, ele simplesmente não faz nada, independente de onde eu ponha o System.out.println. Acredito que seja mais simples do que eu estou pensando, porém a IDE não acusa erro algum, alguém saberia dizer o que pode estar ocorrendo?

import java.util.Scanner;

public class JohnwallisThread {
    public static void main(String[] args) {
        int a=2, b=1, PI, i;
        double pi;
        pi = 0;
        
        Scanner scan = new Scanner(System.in);
        System.out.print ("Insira um valor a ser calculado: ");
        PI = scan.nextInt();
        
        for (i = 0; i >= PI; i++){
            if (pi == 0) {
                pi = a/b;
            }
            if ((a -1) == b){
                pi = pi * (a/b);
                b = b+2;
            }
            if (a<b){
                pi = pi * (a/b);
                a = a + 2;
            }
            System.out.println ("O pi de "+i+" é: "+pi);
        }
    }
}

A única informação que a IDE mostra é

run:
Insira um valor a ser calculado: 100
BUILD SUCCESSFUL (total time: 1 second)

6 Respostas

lvbarbosa
Solucao aceita

A condição i>=PI vai dar false e o loop não vai ser executado. Você não quis dizer i <= PI?

lucas.sampaio

Onde que PI está sendo declarado? Parece que o PI não existe.

Vale ressaltar que o Java é case sensitive, ou seja, ele diferencia letras maiúsculas das letras minúsculas.

Ex: duas variáreis com o mesmo nome porém uma só com letras minúsculas e outra só com letras maiúsculas são variáveis diferentes.

nelsonfonseca

Foi exatamente isso, arrumei aqui. Confundi o simbolo na hora. Muito obrigado :man_facepalming:t2:

nelsonfonseca

Opa, resolvi aqui. Mas o PI esta sendo declarado como int

lucas.sampaio

Não tinha visto ali que separou as variáveis por vírgula. Falta de atenção minha.

V

O erro está na condição do for… troque de:

para:

for (i = 0; i <= PI; i++){
Criado 6 de março de 2019
Ultima resposta 7 de mar. de 2019
Respostas 6
Participantes 4