ProgressionGeometrique.java 1.18 KB
import java.util.*;

public class ProgressionGeometrique {

    ArrayList<Double> termes;
    double raison;
    int rang;
    
    
    public ProgressionGeometrique(double terme1, double raison){
        termes = new ArrayList<Double>();
        termes.add(terme1);
        this.setRang(0);
        this.setRaison(raison);
    }
    
    public int getRang(){
        return this.rang;
    }
    
     public void setRang(int rang){
        this.rang = rang;
    }
    
     public double getRaison(){
        return this.raison;
    }
    
     public void setRaison(double raison){
        this.raison = raison;
    }
    
    
    void next(){
        double d = this.termes.get(getRang());
        d *= raison;
        termes.add(d);
        rang++;
    }
    
    
    /**
    Calcul les n prochaines itérations
    */
    void next(int n){
        for(int i =0; i<n;i++){
            next();
        }
    }
    
    /**
    Récupère le dernier terme
    */
    public double getTerme(){
        return termes.get(getRang());
    }

    public String toString(){
        String res  ="progression:";
        for (Double d: termes) {
            res+= " "+d;
        }
        return res;
    }
}