Materi Algoritma Pemrograman M7 P1


MINGGU KE-7 : P 1
Materi ALGORITMA DAN PEMROGRAMAN  
 . KONDISIONAL IF-ELSE & SWITCH CASE {done}
 . PERULANGAN FOR {done}, WHILE, DO-WHILE
 . ARRAY, ARRAYLIST, DAN IMPLEMENTASI DI KESEHARIAN
---------------------------------------------------
 KONDISIONAL & LOOPING  
   ->  break, continue, System.exit(int i)
 
FOR, DERET Genap   0  2  4  6  8  10 ..... 
Cara ke-1, definisi Matematika
public class GenapKe1 {  
  public static void main (String[] arg) {
     int batas_n =  100;     
     for (int i =  0; i < batas_n; i++) {        
        if (i % 2 == 0) {
           System.out.print (i + "  ");          
        }
     }
  }
}

Cara ke-2, Komputasi Numerik  
FOR, DERET Genap   0  2  4  6  8  10 ..... 
public class GenapKe2 {  
  public static void main (String[] arg) {
     int batas_n =  100;     
     int awal =  0;
     for (int i =  0; i < batas_n; i++) {
        System.out.print (awal + "  ");
        awal =  awal + 2;
     }
  }
}

Cara ke-3, Deret Aritmatika Un =  a + (n-1)*b 
FOR, DERET Genap   0  2  4  6  8  10 ..... 
a =  0; 
b =  2;
Un =  0 + (n-1) * 2;   =  2n - 2;
public class GenapKe3 {
  public static void main (String[] arg) {
     int batas_n =  100;
     int un;
     for (int i =  0; i < batas_n; i++) {
        un =  2 * (i+1) - 2;
        System.out.print (un + " ");
     }
  }
}

Deret Faktorial DF ->  1  1  2  6  24  120  760  ....
 0! =  1
 1! =  1
 2! =  1 x 2 = 2
 3! =  1 x 2 x 3 =  6, dan seterusnya
 
 int n =  7; 
 int awal =  1; 
 for (int i =  0; i < n; i++) {
   System.out.print (awal + "  ");
   awal =  awal * (i+1);
 }

Deret Pangkat DP ->   1  2  4  8  16  32

DP ->   1  -2  4  -8  16  -32  64  ….

 int n =  7;
 int awal =  1;
 for (int i =  0; i < n; i++) {
   if (i % 2 == 1) {
      System.out.print ("-" + awal + "  ");
   } else { 
      System.out.print (awal + "  ");
   }
   awal =  awal * 2;
 }
 
 int n =  7;
 int awal =  1;
 for (int i =  0; i < n; i++) {
   System.out.print (awal + "  ");
   awal =  awal * 2;
 }
 
 int n =  7; 
 int awal =  1;
 for (int i =  0; i < n; i++) {
   System.out.print (awal + "  ");
   awal =  awal + awal;
 }
Deret Fibbonacci DFi 0  1  1  2  3  5  8  13  21  ....
 int n =  100;
 int a =  0, b =  1, c;
 System.out.print (a + ",  " + b + ",  ");
 for (int i =  0; i < n - 2; i++) {
    c =  a + b;
    System.out.print (c + ",  ");
    a =  b;
    b =  c;
 }

RECURSIVESeries -> browse in ur own browser
1. CARA Rekursif Deret Fibbonacci
2. CARA Rekursif Deret Faktorial, dan lainnya

Fungsi Rekursif secara ringkasnya yakni fungsi yang memanggil dirinya sendiri, hal ini digunakan untuk memangkas proses atau konsumsi memori saat komputasi dilakukan, dan mirip halnya dengan proses perulangan pada umumnya.

 class FibbRekursif {
   int Fibonaci (int x) {
     if (x == 0) {
         return 0;
     } else if (x == 1) {
         return 1;
     } else if (x > 1) {
         return Fibonaci (x-1) + Fibonaci (x-2);
     } 
   }
   public static void main (String[] arg) {
      FibbRekursif fib =  new FibbRekursif();
      System.out.println (fib.Fibonaci(7));
   }
 }

Leave a Reply