Hi I was bussy making some exercises for my exams and had to write a program to calculate Taylor series for e^x.
Our prof lecturer gave us the solution but don't understand why he does it like this
import java.util.Locale;
import java.util.Scanner;
public class TaylorReeks{
// versie van het berekenen van een Tailorreeks waarbij de grootte van decimale getallen onder controle wordt gehouden.
public static void main(String[] args){
Scanner scanner = new Scanner(System.in).useLocale(Locale.US);
System.out.println("Geef een getal x in : ");
double x = scanner.nextDouble();
double threshold = 0.1;
int teller = 1;
double component = x;
double exponentVorig = 1.0;
double exponentHuidig = 1 + x;
while (Math.abs(exponentHuidig - exponentVorig) > threshold){
teller = teller + 1;
component = component * x / teller;
exponentVorig = exponentHuidig;
exponentHuidig = exponentVorig + component;
}
System.out.println("De waarde berekend met Math.E is: " + Math.pow(Math.E, x));
System.out.println("De waarde berekend door het algoritme is: " + exponentHuidig + ".");
System.out.println("Het aantal iteraties is:" + teller + ".");
}
}