Advertisement
pendekar_langit

tabulasi clear

Nov 26th, 2014
180
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.15 KB | None | 0 0
  1. /*
  2.  * To change this license header, choose License Headers in Project Properties.
  3.  * To change this template file, choose Tools | Templates
  4.  * and open the template in the editor.
  5.  */
  6.  
  7. package tabulasi;
  8. import java.util.Scanner;
  9. import java.math.*;
  10. /**
  11.  *
  12.  * @author surya
  13.  */
  14. public class tabulasi_2 {
  15. private static String tampung;
  16. private static double g(double b){
  17. double fx;
  18. fx= Math.exp(-b) - b; //hitung fungsi f(x)
  19. return fx; //kembali ke fungsi fx
  20. }
  21.  
  22.     public static void main(String[] args) {
  23.         Scanner datain = new Scanner (System.in);
  24.         int i,j;
  25.     int MAKS = 150;
  26.     double x[] = null,y[] = new double[MAKS];
  27.     double xb,xa,n,h;
  28.     tampung="\t\tMETODE TABEL\n";
  29.     tampung+="\t\t++++++++++++\n\n";
  30.     tampung+="Menghitung Persamaan Kuadrat";
  31.     tampung+="============================\n";
  32. //menentukan range
  33.     tampung+="Batas bawah (a)\t\t: ";
  34.     xb = datain.nextInt();
  35. //masukkan a
  36.     tampung+="Batas atas (b)\t\t: ";
  37.     xa = datain.nextInt();
  38. //masukkan b
  39.     tampung+="Jumlah pembagi N\t: ";
  40.     n = datain.nextInt(); //masukkan n
  41.     h=(xa-xb)/n; //menghitung step pembagi h
  42.     tampung+="\nNilai h = %.2f\n"+h;
  43.     tampung+="================================================";
  44.     tampung+="|\ti\t|\tx\t|\tF(x)\t|";
  45.     tampung+="================================================";
  46.     for(i=0;i<=n;i++) {
  47.     x[i]=xb+(i*h); //menghitung nilai x
  48.     y[i]= g(x[i]);
  49.     tampung+="|\t%d\t|\t%.3g\t|\t%.3g\t|\n"+i+x[i]+y[i];
  50. //menampilkan hasil
  51. }
  52.     tampung+="================================================";
  53.     for(j=0;j<=n-1;j++) {
  54.     if(y[j]*y[j+1]<0) { //cek apakah y[j]*y[j+1]<0
  55.     tampung+="\nAkarnya adalah diantara %g dan %g\n"+x[j]+x[j+1];
  56. //jika iya print akar
  57.     if(Math.abs(y[j])<Math.abs(y[j+1])) { //maka dimutlakkan
  58.     tampung+="Jadi akar yang lebih dekat adalah %g\n"+x[j];
  59. //menampilakan akar
  60.     tampung+="Nilai error = %g\n"+Math.abs(y[j]); //menampilkan error
  61. }else { //jika tidak
  62.     tampung+="Akar lebih dekat adalah %g\n"+x[j+1]; //menampilkan akar
  63.     tampung+="Nilai error = %g\n"+Math.abs(y[j+1]); //menampilkan nilai error
  64. }
  65. }
  66. }
  67. }
  68.  
  69.  
  70.  
  71.        
  72.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement