Rabu, 09 November 2011

Algoritma untuk mencari bilangan faktorial

Tracing
  1. Start
  2. Masukkan Input
  3. Check inputan, jika input(N) = interger (angka) lanjut ke step selanjutnya jika tidak kembali ke step 1 (pertama)
  4. Jika input(N) = 0 maka nilai faktorial = 1.
    Jika tidak sama dengan 0 dilanjutkan ke step berikutnya.
  5. Dibuat permisalan F merupakan Input(N) dan M = 1.
  6. Dinyatakan rumus F = F * M
  7. Apakah nilai M = Nilai Input(N) jika tidak dilakukan proses M = M +1, sampai nilai nya sama dengan input(N).
  8. Jika nilai M = nilai input(N), maka Nilai F dicetak
  9. end

Berikut flowchart nya




Berikut coding nya

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package faktorial;

/**
 *
 * @author yellow
 */

import java.io.*;

class faktorial
{
public static void main(String[] args)throws Exception
{
InputStreamReader key = new InputStreamReader(System.in);
BufferedReader input = new BufferedReader(key);

String n;
int i,j,k=1;

System.out.print("Masukkan Nilai =  ");
n=input.readLine();

j=Integer.parseInt(n);
System.out.print(j +" "+"!=");
for(i=j;i>=1;i--)
{
System.out.print(i);
if(i>1)
System.out.print("x");
k=k*i;
}
System.out.print("\n");
System.out.println(j+ " " +"!="+" "+k);





{
    }}
}

Algoritma untuk mencari bilangan prima

Tracing
  1. Start
  2. Masukkan Input
  3. Check inputan, jika input = interger (angka) lanjut ke step selanjutnya jika tidak kembali ke step 1 (pertama)
  4. Check inputan apakah inputan lebih dari sama dengan 2 ( input <= 2 ), jika <= 2 maka ke step selanjutnya. jika tidak maka kembali ke step awal (1).
  5. Kemudian inputan di modulus dengan 2, jika sisa hasil bagi 0 merupakan bilangan genap jika terdapat sisa bilangan ganjil. setelah itu ke step berikutnya.
  6. Memisalkan variable x dengan angka 2 ( x = 2 )
  7. Inputan di Modulus dengan nilai x ( input Mod x )
    Untuk mengetahui bahwa suatu bilangan bisa dibagi atau tidak, paling mudah menggunakan bantuan mod, yang menyatakan sisa hasil bagi. Jika sisa hasil bagi 0 berarti bisa dibagi
  8. Jika sisa hasil bagi = 0 berarti di looping dengan menambahkan X dengan 1 kemudian di Modulus dengan nilai X yang baru.
    Jika sisa hasil bagi tidak sama dengan 0 maka di lanjutkan ke step berikutnya.
  9. input hasil proses tadi jika tidak sama dengan X maka inputannya merupakan Bilangan Prima. Bila sama dengan X maka Bukan Bilangan Prima
  10. Selesai


Berikut Flowchart nya



Berikut coding nya

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package prima;

/**
 *
 * @author yellow
 */

import javax.swing.JOptionPane;



public class prima {
    private static int i;

static boolean prima(int n) {
boolean b = true;
i=0;
if(n < 1) b = false;

if(n > 1) {
for(int i = 2; i <=(n / 2); i++) {
if(n % i == 0) {
b = false;
break;
}
}
}
return b;
}

public static void main(String[] args) {
String numStr = JOptionPane.showInputDialog("Masukkan bilang integer:");
int numInt = Integer.parseInt(numStr);
String cek = " Benar, Bilangan Ganjil dan Prima";
if(!prima(numInt)) cek = "Bukan Prima dan Bukan Ganjil";
JOptionPane.showMessageDialog(null, numStr + "\n" + cek);
}
}