Senin, 06 November 2017

Algoritma Perulangan

Assalamu'alikum.Wr.Wb

Hai....ketemu lagi dengan saya, di sini saya akan menjelaskan tentang for to do, while do, repat until dan contoh perogramnya juga, langsung saja :

Laping/perulangan di bagi menjadi 3 :

1. For to do

     For to do adalah struktur pengulangan dimana aksi dilakukan sebanyak hitungan pencacahan pengulangan, pencacahan pengulangan dapat di set sesuai dengan nilai yang ingin kita mulai.
Contoh Program For to do :

PROGRAM FORTODO;
USES CRT;
VAR
    A:INTEGER;
BEGIN
    FOR A :=1 TO 10 DO
    WRITELN (A);
    READLN;
END.

ini hasil program For to do :


2. While do

     While do adalah struktur pengulangan dimana selama kondisi (persyaratan) pengulangan masih benar, maka aksi dikerjakan.
Contoh program while do :

PROGRAM WHILEDO;
USES CRT;
VAR
       B,A:INTEGER;
BEGIN
      A:=1;
      WHILE A <= 10 DO
      BEGIN
          B:= A*2-1;
          WRITELN (B);
          A:= A+1 ;
      END;
      READLN;
END.

ini hasil program while do :


3.  Repeat Until

      Repeat berarti ulangi dan Until berarti sampai, jadi repeat until adalah struktur pengulangan dimana aksi dilakukan hingga kondisi (persyaratan) berhenti terpenuhi.
Contoh Program Repeat Until :

PROGRAM REPEAT_UNTIL;
USES CRT;
VAR
      A:INTEGER;
BEGIN
      A:=1;
      REPEAT
         WRITELN (A);
          A:= A+1;
      WRITELN A >= 10;
      READLN;
END.

ini hasil program Repeat Until :


Perbedaan For To Do, While Do dan Repeat Until sebagai berikut :



For To Do :
Ø  Langsung merupakan perulangan langsung. Program akan langsung mencetak sesuai dengan kondisi yang telah ditetapkan.
Ø  Diletakkan pada main program.




While Do :
Ø  Terdapat harga awal.
Ø  Terdapat operator pembanding (<, >, =, dll).
Ø  Terdapat counter.
Ø Menggunakan blok satatemen baru yaitu begin dan end untuk membaut program proses perulangan.


Repeat Until :
Ø  Terdapat harga awal.
Ø  Terdapat counter.
Ø  Repeat digunakan untuk mengawali program perulangan.
Ø  Until digunakan sebagai kondisi yang letaknya di bawah.
Ø Tidak menggunakan blok statemen begin dan end, karena repeat-until digunakan sebagai pengganti begin dan end.



Sabtu, 04 November 2017

Tugas Flowchart dan Program Div Mod

Assalamu'alikum.Wr.Wb

Disini saya akan memberikan bentuk flowchart bilangan ganjil dan program untuk menampilkan uang kembalian, tidak usah lama langsung saja.

Tugas !!!!!

1.  Buat flowchart untuk menampilkan ket, apakah suatu bilangan itu ganjil / genap ?
2.  Buat program untuk menampilkan uang kembalian ?

Jawab !!!!!

1. Flowchart menampilkan bilangan ganjil / genap
2. Program Kasir Sebagai berikut :

PROGRAM KASIR_KU;
USES CRT;
VAR
        UANG,HARGA,KEMBALIAN:LONGINT;
BEGIN
        CLRSCR;
        WRITE('MASUKKAN UANG = ');READLN(UANG);
        WRITE('MASUKKAN HARGA BARANG = ');READLN(HARGA);
        KEMBALIAN:=UANG-HARGA;
        WRITELN;

        WRITE('PECAHAN DALAM MATA UANG RUPIAH');READLN;
        IF KEMBALIAN>=100000 THEN
        BEGIN
                  HARGA:=KEMBALIAN DIV 100000;
                  WRITELN(HARGA,' SERATUS RIBUH RUPIAH');
                  KEMBALIAN:=KEMBALIAN MOD 100000;
        END;
        BEGIN
                  HARGA:=KEMBALIAN DIV 50000;
                  WRITELN(HARGA,' LIMAH PULUH RIBUH RUPIAH');
                  KEMBALIAN:=KEMBALIAN MOD 50000;
        END;
        BEGIN
                  HARGA:=KEMBALIAN DIV 20000;
                  WRITELN(HARGA,' DUA PULUH RIBUH RUPIAH');
                  KEMBALIAN:=KEMBALIAN MOD 20000;
        END;
        BEGIN
                  HARGA:=KEMBALIAN DIV 10000;
                  WRITELN(HARGA,' SEPULUH RIBUH RUPIAH');
                  KEMBALIAN:=KEMBALIAN MOD 10000;
        END;
        BEGIN
                  HARGA:=KEMBALIAN DIV 5000;
                  WRITELN(HARGA,' LIMAH RIBUH RUPIAH');
                  KEMBALIAN:=KEMBALIAN MOD 5000;
        END;
        BEGIN
                  HARGA:=KEMBALIAN DIV 2000;
                  WRITELN(HARGA,' DUA RIBUH RUPIAH');
                  KEMBALIAN:=KEMBALIAN MOD 2000;
        END;
        BEGIN
                  HARGA:=KEMBALIAN DIV 1000;
                  WRITELN(HARGA,' SERIBUH RUPIAH');
                  KEMBALIAN:=KEMBALIAN MOD 1000;
        END;
        BEGIN
                  HARGA:=KEMBALIAN DIV 500;
                  WRITELN(HARGA,' LIMAH RATUS RUPIAH');
                  KEMBALIAN:=KEMBALIAN MOD 500;
        END;
        BEGIN
                  HARGA:=KEMBALIAN DIV 200;
                  WRITELN(HARGA,' DUA RATUS RUPIAH');
                  KEMBALIAN:=KEMBALIAN MOD 200;
        END;
        BEGIN
                  HARGA:=KEMBALIAN DIV 100;
                  WRITELN(HARGA,' SERATUS RUPIAH');
                  KEMBALIAN:=KEMBALIAN MOD 100;
        END;
        WRITELN;

        WRITE('TERIMA KASIH ^-^ ');
        WRITELN;
        READLN;
END.

Gambar hasil keluaran :



Terima Kasih
Wa'alaikumsalam.Wr.Wb