ola pessoal novamente eu, queria tirar outra duvida com relação ao algoritimo de um PA, no caso quero
fazer um algoritimo que calcule uma pa, dado uma constante (ou razão), o primeiro termo, ede onde quero começar.
quero que o metodo imprima a seuencia desejada e retorne o ultimo termo calculado.
fiz isso
class PA{
int count = 1;
double an = 0;
public double calculaPa(int x, int n, int c){
while(count <= n){
an = x + (n-1)*c;
count++;
System.out.println("os termos são: " + an);
}
return an;
}
}
mas esta dando errado, esta imprimindo só o ultimo!
certo, então quero dado o parametro
x=1; n = 5; c =2; ou seja, o x é p primeiro termo da sequencia, podia ser qq um que eu queira começar,
o n seria ate quando quero imprimir, no caso seria 5 termos dessa pa, e c seria a razão, então nesse exemplo queria um asaida assim: (1,3,5,7,9) e retronar esse ultimo termo no caso o nove, espero ter sido claro!
int a = 1, b=5 , c=2;
int resultado = 0;
for(int x = 1; x < b; x++){
System.out.println(a);
a = a + c;
resultado = a;
}
System.out.println("final = " + resultado);
se vc entrar com a =1, b=5 e c =2 ele ira imprimir 1,3,5,7, final 9
se vc entrar com a =1, b=6 e c =4 ele ira imprimir, 1,5,9,13,17, final 21
ou seja, o valor a,b e c sao os valores do parametro que vc vai passar…
então tiago mais ou menso isso, seria assim:
Uma progressão aritmética (PA) é uma sequência numérica em que cada
termo, a partir do segundo, é igual à soma do termo anterior com uma
constante c (ou seja, xi+1 = xi +c, para i = 1, …, n-1). quero implementar uma classe em
com um método que permita calcular (e imprimir) os n termos de uma (PA),
sendo fornecidos o primeiro termo (x1), a constante c e a quantidade de termos
desejada (n). Além de imprimir os n termos, o método deve retornar o
último termo calculado.
nao vai ser a melhor forma para vc aprender, mas da uma olhada:
class Recebe {
protected int numeroDeTermos;
protected int primeiroTermo;
public Recebe(int numeroDeTermos, int primeiroTermo) {
numeroDeTermos = numeroDeTermos;
primeiroTermo = primeiroTermo;
}
}
class PA extends Recebe {
private int razao;
public PA(int numeroDeTermos, int primeiroTermo, int condicao) {
super(numeroDeTermos, primeiroTermo);
razao = condicao;
}
public void imprime() {
final int condicaoInicial = 0;
// Loop
for (int parametro = condicaoInicial; parametro < numeroDeTermos; parametro++) {
System.out.print(primeiroTermo + razao * parametro + " ");
}// Fim loop
System.out.print("\n\n aqui");
}
}
public class Teste {
public static void main(String[] args) {
PA calcula = new PA(5, 1, 2);
calcula.imprime();
}
}
valew tiago obrigado pela ajuda consegui fazer de um jeito mais simples ve ai:
class PA{
public double calculaPa(int a1, int n, int c){
int i = 0;
int resultado = 0;
while(i < n){
resultado = a1;
System.out.println(resultado);
a1 = resultado + c;
i++;
}
return resultado;
}
}