[RESOLVIDO] Progressao aritmetica

import java.util.*;

public class Pa {

public static void main(String args[]){
	
	Pa kjh = new Pa();
	kjh.CalcularPa();
}

public void CalcularPa(){
	
	Scanner gfdt = new Scanner(System.in);
	
	int nTermo; //numero de termo
	float a1; // primeiro termo
	float an; // ultimo termo
	float r; // razao
	
	System.out.println("Digite valor do primeiro termo: ");
	a1 = gfdt.nextFloat();
	
	System.out.println("Digite numero de termos: ");
	nTermo = gfdt.nextInt();
	
	System.out.println("Digite a razao");
	r = gfdt.nextFloat();
	
	an = a1 + ((nTermo-1)*r); 
	System.out.println("o Ultimo termo é: "+an);
	
	for(int progressao = 1; progressao <= nTermo; progressao++){
		
		a1 = a1 + r;
		System.out.print(" "+a1);
	}
	
}

}

bom o problema esta quando vo imprimir a pa com o:

for(int progressao = 1; progressao <= nTermo; progressao++){

		a1 = a1 + r;
		System.out.print(" "+a1);
	}

quando vai imprimir sai 1 valor a mais do que é declarado no a1 que recebe do Scanner
por exemplo: a1 = 1, nTermo = 4, r=2
entao a pa fica 1,3,5,7
quando vai imprimir fica 3,5,7,9

como faço para ficar 1,3,5,7?

for(int progressao = 1; progressao <= nTermo; progressao++){

    a1 = a1 + r;
    System.out.print(" "+a1);
} 

A ordem dos tratores não altera o viaduto?

Então… você está mandando imprimir o valor de a1 depois que você somou com r.

Se você imprimisse antes?

[RESOLVIDO]
[/i] o burrice pqp valeu por responder !![i]

Bora Maiden, seria massa tu saca esse link pra ficar melhor a organização do fórum. Abraços!

http://www.guj.com.br/java/287484-gujnautas-how-to

beleza vo dar uma lida nessa parte!