Halaman

Sabtu

Tahun Baru 2012



Hmmmm...

Ga krasa udah dipenghujung 2011. Cepet banget waktu ini berlalu guys. Banyak cerita di 2011 ini. senang, sedih, Haru.... Banyak kenangan yang tak terlupakan di 2011 ini. Banyak temen. banyak sodara.

Perasaan baru kemarin januari 2011, sekarang udah desember 2011 *kaget*.. rasanya baru kemarin rayain tahun baruan sekarang udah tahun baru lagi. hmmm waktu berputar cepat.

Harapan 2011 banyak banget yang belum terwujud.. pengen bisa hidup dengan hasil keringat sendiri, pengen bisa buat ibu senyum lebar bangga dengan hasil kerasku. eeitssss... satu lagi harapan 2011 punya calon suami yang sesuai dgn keinginan ibu wkwkwk *LOL . Moga 2012 nanti semuanya dimudahkan, selalu dalam perlindungan-Nya, semoga menjadi lebih baik dari tahun 2011,,, amieeennn ya Rabb....

"Selamat tinggal Kenangan Selamat datang Harapan"


 Happy New yeaaarssss 2012 :)

Aplikasi Belajar Islam dari Dasar

Assalamualaikum wr wb,,
Setelah kurang lebih selama 6 bulan saya tidak menampilkan hal yang baru di blog ini, kini saya beserta tim saya akan kembali menyajikan hal yang fresh bagi teman semua.
Aplikasi baru ini bernama “Belajar Islam dari Dasar” yang dibuat menggunakan bahasa permrograman C++ dengan memakai compiler dev cpp. Aplikasi sederhana ini berisi menu-menu pilihan yang dapat dipilih dengan sesuka hati oleh user.
Apa itu aplikasi Belajar Islam dari Dasar? Dari judulnya saja pasti calon user sudah mengetahui gambaran dari aplikasi ini. Yep, aplikasi ini memang dibuat dengan unsur religius yaitu Islam sebagai keyakinan kami tim pembuat tentunya. Kami merancang dan membuat aplikasi ini khusus untuk tenaga pengajar agama Islam yang mengajar siswa di Sekolah Dasar (SD). Aplikasi ini dapat mempermudah para guru untuk dapat mengajarkan agama Islam yang dasar kepada murid-muridnya yang belum cukup dewasa. Jadi diharap aplikasi ini juga dapat membuat anak didiknya menjadi semangat dalam mempelajari agama Islam sedari mereka masih kecil.
Kami menyediakan link bagi yang ingin mendownload. Jadi bagi kalian yang penasaran dengan aplikasi Belajar Islam dari Dasar ini, tidak perlu khawatir karena kami menyediakan link untuk mendownloadnya yang tertera di bawah ini:

Terimakasih karena telah mendownload aplikasi kami, lalu cobalah gunakan aplikasi ini. Dan kami juga mengharapkan komentar dari user tentang aplikasi kami ini. Apakah cukup bagus, bagus, atau tidak bagus. Silakan tinggalkan komentar kalian di blog ini. Terimakasih.
Wassalamualaikum wr. wb.

Rabu

Queue (antrian) Bank Mandiri

Queue (antrian) adalah struktur data dimana data yang pertama kali dimasukkan adalah data yang pertama kali bisa dihapus. Atau bisa juga disebut dengan struktur data yang menggunakan mekanisme FIFO (First In First Out).Queue dalam kehidupan sehari-hari seperti antrian pada penjualan tiket kereta api, dimana orang yang pertama datang adalah orang yang pertama kali dilayani untuk membeli tiket. Jika ada orang baru yang datang akan membali tiket, maka posisinya berada pada urutan paling belakang dalam antrian tersebut. Orang yang berada pada posisi terakhir dalam antrian adalah yang terakhir kali dapat dilayani dan memperoleh tiket kereta api (kalau kurang beruntung, maka akan kehabisan tiket). Contoh lain adalah nasabah yang antri di teller bank, paket data yang menunggu untuk ditransmisikan lewat internet, antrian printer dimana terdapat antrian print job yang menunggu giliran untuk menggunakan printer, dsb.

          Istilah-istilah yang digunakan dalam queue (antrian) Memasukkan data (insert) disebut juga dengan put, add, atau enqueue. Menghapus data (remove) biasa disebut dengan istilah delete, get, atau dequeue. Bagian belakang queue, dimana data bisa dimasukkan disebut dengan back, tail (ekor), atau end (akhir). Sedangkan bagian depan (front) queue dimana data bisa dihapus juga biasa disebut dengan istilah kepala (head). Circular Queue Di dunia nyata apabila seseorang sedang mengantri (misalnya antri tiket kereta api), apabila telah dilayani dan memperoleh tiket, maka ia akan keluar dari antrian dan orang-orang yang berada di belakangnya akan bergerak maju ke dapan. Kita bisa saja menggerakkan setiap item data ke depan apabila kita menghapus data yang terdepan, tetapi hal ini kurang efektif. 
          Sebaliknya kita tetap menjaga setiap item data di posisinya, yang kita lakukan hanyalah merubah posisi front dan rear saja. Yang menjadi permasalahan adalah apabila posisi rear berada pada bagian akhir dari array (atau pada nomor indeks yang terbesar). Meskipun ada bagian yang kosong di awal-awal array – karena mungkin data telah dihapus, data baru tidak bisa dimasukkan lagi karena rear-nya sudah tidak bisa bergerak lagi. Atau mungkinkah posisi rear nya bisa berpindah? Untuk menghindari permasalahan seperti itu (tidak bisa memasukkan data baru) – meskipun queue-nya belum penuh, maka front dan rear-nya berputar (kembali) ke bagian awal array. Kejadian seperti ini dinamakan dengan circular queue (atau kadang-kadang disebut juga dengan istilah ring buffer).

Berikut contoh programnya :

#include <iostream>
#include <conio.h>
#define MAX 6

typedef struct{
int data[MAX];
int head;
int tail;
}
Queue;
Queue antrian;
void Create(){
antrian.head=antrian.tail=-1;
}

int IsEmpty(){
if(antrian.tail==-1)
return 1;
else
return 0;
}

int IsFull(){
if (antrian.tail==MAX-1) return 1;
else return 0;
}

//fungsi memasukkan data

void Enqueue(int data){
if(IsEmpty()==1){
antrian.head=antrian.tail=0;
antrian.data[antrian.tail]=data;

cout << "\t Silahkan Masuk !! \n" ;
cin >> antrian.data[antrian.tail];
void Tampil();
{
if(IsEmpty()==0){
for(int i=antrian.head;i<=antrian.tail;i++){
cout << antrian.data[i];
}
}else
cout<< "data kosong!";
};
}else
if(IsFull()==0){
antrian.tail++;
antrian.data[antrian.tail]=data;
cout << "\t Silahkan Masuk !! \n" << antrian.data[antrian.tail];
}

}

int Dequeue(){
int i;
int e = antrian.data[antrian.head];
for(i=antrian.head;i<=antrian.tail-1;i++){
antrian.data[i]= antrian.data[i+1];
}
antrian.tail--;
return e;
}


void clear(){
antrian.head=antrian.tail=-1;
cout << "Data Clear" ;
}
void Tampil()
{ int jum;
jum=0;

if(IsEmpty()==0){
for(int i=antrian.head;i<=antrian.tail;i++){
jum++;

cout << antrian.data[i]<< "\n";
}
cout << "\njumlah yang mengantri saat ini : "<< jum << "orang";
}
else
cout << "Data Kosong!\n";
}

//sebagai nasabah
void nasabah()
{
int data;
char lagi;
do{
clrscr();
cout << "\t+=================================+\n";
cout << "\t| menu nasabah |\n";
cout << "\t+=================================|\n";
cout << "\t| tekan (a) untuk masukkan data |\n";
cout << "\t| tekan (b) melihat data antrian |\n";
cout << "\t| tekan (x) keluar |\n";
cout << "\t+=================================|\n";
cout << "pilihan : ";
cin >> lagi;
if((lagi=='x') || (lagi=='X'))
{ cout << "terima kasih\n" ;

break;
}

switch(lagi)
{
case 'a':
cout << "masukkan data: " << &data << " ";
Enqueue(data);
break;
case 'b': Tampil();
break;

}getch();
} while(lagi !='x');
getch();
}

//memasukkan password
void password()
{
char nama[20], id[10], password[4];
int i;
{
clrscr();

atas:
clrscr();
cout << "\t\t+===============================================+\n";
cout << "\t\t| S E L A M A T D A T A N G |\n";
cout << "\t\t| jika anda admin dari teller |\n";
cout << "\t\t|Silahkan masukkan User Name & 3 digit Password |\n";
cout << "\t\t+===============================================+\n";
cout << "\t\t UserName : " ; cin>>nama;
cout << "\t\t No. Identitas : "; cin>>id;
cout << "\t\t Password : " ;
for(i=0; i<=2; i++)
{password[i]=getch();
cout << "\bX";
}
cout << "\n\t\t+=============================================+\n";
if (strcmp(password,"aaa")==0)
{
cout << "\n\n\t\t Anda Masuk Sebagai TEllER\n";
cout << "\t\t User :" << nama << "\n";
cout << "\t\t No. Identitas : " << id << "\n";
cout << "\n\n\t\tTekan Sembarang tombol untuk ke menu teller..!";
goto bawah;
}
else
{
cout << "\t\t\tmaaf password salah!!!\n" ;
cout << "\t\tketik sembarang tombol untuk kembali ke menu: ";
goto atas;

}
bawah:
getch();
}
}

//void teller
void teller()
{char menu;
password();
do{
clrscr();
cout << "\t\t+=================================+\n";
cout << "\t\t| menu pilihan untuk TELLER |\n";
cout << "\t\t+=================================+\n";
cout << "\t\t| tekan (a) untuk menghapus data |\n";
cout << "\t\t| tekan (b) melihat data antrian |\n";
cout << "\t\t| tekan (c) untuk mereset |\n";
cout << "\t\t| tekan (x) untuk keluar |\n";
cout << "\t\t+=================================+\n";
cout << "pilihan : " << menu <<" ";
if((menu=='x') || (menu=='X'))
{ cout << "terima kasih\n";

break;
}

switch(menu)
{
case 'a': cout << "Elemen yang keluar : ";
cin>>Dequeue;
break;
case 'b': Tampil();
break;
case 'c': clear();
break;
}getch();
} while(menu !='x');

}

void main(){
char pil;


Create();
do{
clrscr();
//fflush(stdin);
cout << "\t\t+=====================================+\n";
cout << "\t\t| Bank Mandiri |\n";
cout << "\t\t| jalan Menukan |\n";
cout << "\t\t| Yoggyakarta |\n";
cout << "\t\t+=====================================+\n";
cout << "\t\t| tekan (n) untuk Nasabah |\n";
cout << "\t\t| tekan (t) untuk Teller |\n";
cout << "\t\t| tekan (k) keluar dari program |\n";
cout << "\t\t+=====================================+\n";
cout << "pilihan : ";
cin >> pil >> "" ;
if((pil=='k') || (pil=='k'))
{ cout << "terima kasih";
break;
}

switch(pil)
{
case 'n': nasabah();
break;
case 't': teller();
break;

}

}while(pil!='k');
}

Jumat

Pindah Array 2 dimensi ke 1 dimensi


  1. Menjelaskan  [Pindah] Array 2 dimensi ke 1 dimensi
     2.    Mengidentifikasi input dan output
                Data array 2 dimensi : input
                Data array 1 dimensi : output

     3.     Algoritma untuk mendefinisikan fungsi
          Deklarasi :
                A : [A..O] [A..O] = char
                                Kolom, baris = char
                B : [A..O] = char
          Deskripsi :
                        Tampung = 0
                    For  I ← 0 to baris do
                    For  j ← 0 to do kolom do
                Read : A [i] [j]
                                End for end for
                                For  I ← o to baris do
                                For  i ← 0 to do kolom do
                         B [tampung] ← [i] [j]
                End for
                End for
                                Tamping ← tamping + kolom
                End for
                Write B [i]

     4.     Test fungsi menggunakan Data uji
Misalkan terdapat array 1 dimensi , sebagai berikut : A[15]
A
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O

Disediakan array 2 dimensi B[3][5] sebagai berikut sehingga diharapkan array A dapat dikopikan ke array B seperti berikut :
B
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O

Ilustrasi Proses :
0              1              2          3           4          5           6           7           8          9          10        11        12        13         14
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O

Masuk ke baris-0

Masuk ke baris-1

Masuk ke baris-3

     5.       Penulisan pengkodean
//maaf masih eror

#include <iostream.h>
#include <conio.h>

                int main (){
   int array [10] [10], array 2 [30];
   int baris, kolom;

   cout << "masukkan baris :";
   cin >> baris;
   cout << "masukkan kolom :";
   cin >> kolom;

   for (int i=0; i<baris; i++)
   {
   for (int j=0; j<kolom; j++)
   }
   cout << "data ke : " << i <<","<<j<<"="}
   cin >> array [i][j];}}

   cout << "setelah dikonversikan :" << endl;
   int a=0;
   for (int 1=0; i<baris; i++)
   {
   for (int j=0; j<kolom; j++)
   {
   array 2 [k]= array [i][j];
   a++ ;  }}
   for (int i=0; i<(baris*kolom); i++)
   {
   cout << array 2 [i] << "\t";}

   return 0;
   }

Kamis

Program menghitung Usia

  1.   Menghitung tanggal, bulan dan tahun sekarang. kemudian user memasukan kapan tanggal,bulan dan tahun kelahiran user sendiri. Kemudian program akan memberitahukan umur sebenarnya
  2. Mengidentifikasi input dan output
Input :  Tgl_skrng = integer
            Bln_skrng = integer
            Thn_skrng = integer
            Tgl_lahir = integer
            Bln_lahir = integer
            Thn_lahir = integer
Output : Thn_lahir = integer
               Tahun = integer
               Bulan1 = integer

     3.  Algoritma untuk mendefinisikan fungsi

                   Deklarasi :
tanggal_sekarang     : integer
bulan_sekarang        : integer
thn_skrng                 : integer
tgl_lahir                    : integer
bln_lahir                   : integer
thn_lahir                   : integer
tahun                        : integer
bulan1                      : integer
tgl1                           : integer
            Deskripsi :
                        Baca(tgl_skrng,bln_skrng,thn_skrng,tgl_lahir,bln_lahir,thn_lahir)
tahun bulan1 bulan2 tgl1 tgl2 thn_lahir) and (tanggal_sekarang>=tgl_lahir) and (bulan_sekarang>=bln_lahir)
else
else if(thn_skrng>thn_lahir) and(tgl_lahir>=tanggal_sekarang) and (bln_lahir>=bulan_sekarang)
else if(thn_skrng>thn_lahir) and(tanggal_sekarang>=tgl_lahir) and (bln_lahir>=bulan_sekarang)
else if (thn_skrng>thn_lahir) and (tgl_lahir>=tanggal_sekarang) and (bulan_sekarang>=bln_lahir)
tulis(tahun,bulan1,bulan2,tgl1,tgl2)

   4.      Penulisan pengkodean

#include <conio.h>
#include <iostream.h>

void main()

{
int tgl_skrng,bln_skrng,thn_skrng,tgl_lahir,bln_lahir,thn_lahir,tahun,bulan1,
bulan2,tgl1,tgl2;
cout<<"\t\t------------ Hitung Usia ------------\t\t\t\t"<<endl;
cout<<"Tanggalkah sekarang : ";cin>>tgl_skrng;
cout<<"Bulankah sekarang : ";cin>>bln_skrng;
cout<<"Tahun sekarang : ";cin>>thn_skrng;
cout<<endl;

cout<<"Tanggal anda lahir : ";cin>>tgl_lahir;
cout<<"Bulan anda lahir : ";cin>>bln_lahir;
cout<<"Tahun anda  lahir : ";cin>>thn_lahir;
cout<<endl;

tahun=thn_skrng-thn_lahir;
bulan1=bln_skrng-bln_lahir;
bulan2=bln_lahir-bln_skrng;
tgl1=tgl_skrng-tgl_lahir;
tgl2=tgl_lahir-tgl_skrng;

{
if((thn_skrng>thn_lahir)&&(tgl_skrng>=tgl_lahir)&&(bln_skrng>=bln_lahir))
{
cout<<"Umur anda: "<<tahun<<" tahun "<<bulan1<< " bulan "<<tgl1<< " hari "<<endl;
}
else if((thn_skrng>thn_lahir)&&(tgl_lahir>=tgl_skrng)&&(bln_lahir>=bln_skrng))
{
cout<<"Umur anda: "<<tahun<< " tahun "<<bulan2<< " bulan " <<tgl2<< " hari "<<endl;
}
else if((thn_skrng>thn_lahir)&&(tgl_skrng>=tgl_lahir)&&(bln_lahir>=bln_skrng))
{
cout<<"Umur anda: "<<tahun<<" tahun "<<bulan2<<" bulan "<<tgl1<<" hari "<<endl;
}
else if((thn_skrng>thn_lahir)&&(tgl_lahir>=tgl_skrng)&&(bln_skrng>=bln_lahir))
{
cout<<"Umur anda: "<<tahun<<" tahun "<<bulan1<<" bulan "<<tgl2<<" hari "<<endl;
}
else
{
cout<<"ohh... i'm sorry,,data yang anda masukan salah"<<endl;
}
}

getch();

}