package javaapplication9;
public class JavaApplication9 {
public static void main(String[] args) {
int impares = 1;
int ordem;
double soma = 0;
for (ordem = 1; ordem <= 50; ordem++) {
soma += (double) impares / ordem;
impares = impares + 2;
}
System.out.println(soma);
}
}
Perceba que você não está mandando o algoritmo subtrair valor algum, apenas somar.
Exatamente. Tem como eu dividir, subtrair e somar em um único laço?
Você pode fazer o que quiser dentro de um laço. 
Exemplo de como resolver seu problema:
public class JavaApplication9 {
public static void main(String[] args) {
double soma = 0;
int sinal = 1;
for (int dividendo = 1, divisor = 1; divisor <= 50; dividendo += 2, divisor += 1) {
if (divisor > 1) {
System.out.print(sinal < 0 ? "-" : "+");
}
System.out.printf("%d/%d", dividendo, divisor);
soma += sinal * (dividendo / (double) divisor);
sinal = -sinal;
}
System.out.printf(" = %f\n", soma);
}
}
1 curtida
Entendi, cada vez que laço é executado a variável sinal troca de sinal. Muito obrigado.
1 curtida