Tidak semua yang saya tulis dalam CERPEN adalah saya :)

Welcome to my Blog... Blog ini mengenai tugas kuliah, cerpen, artikel dan beberapa hal tentang saya dan hobi saya :) boleh COPAS, tapi izin dulu yaa, jangan rendahkan dirimu sebagai pelagiat. Terima kasih :)

Selasa, 05 Juni 2012

Struktur Data, Class dalam bahasa C++

Contoh Program Class dalam bahasa C++ :


Contoh Program Class, Menghitung Nilai Huruf Mahasiswa : 

#include<iostream.h>
#include<conio.h>
class mahasiswa
{
char nim[12];
char nama[30];
char alamat[50];

public:
void HitungNilaiAkhir(float tugas, float kuis, float mid, float uas, float &NA);
void mahasiswa::HitungNilaiHuruf(float NA, char*&NH);
};
void mahasiswa::HitungNilaiAkhir(float tugas, float kuis, float mid, float uas, float &NA)
{
NA=0.1*tugas+0.2*kuis+0.3*mid+0.4*uas;
}
void mahasiswa::HitungNilaiHuruf(float NA, char*&NH)
{
if (NA>85)
{
NH="A";
}
else if (NA<=85&&NA>70)
{
NH="B";
}
else if(NA<=70&&NA>55)
{
NH="C";
}
else if(NA<=55&&NA>40)
{
NH="D";
}
else if (NA<40)
{
NH="E";
}
}
void main()
{
clrscr();
mahasiswa mhs;
float NA;
char*NH;
mhs.HitungNilaiAkhir(30,50,56,54,NA);
cout<<"Total Nilai Akhir : "<<NA<<endl;
mhs.HitungNilaiHuruf(NA,NH);
cout<<"Nilai Huruf : "<<NH<<endl;
getch();
}

Struktur Data, Linked List (Senarai Berantai) dalam bahasa C++

Contoh Program Linked List dalam bahasa C++ : 

1. Contoh Program Linked List : 

#include<stdio.h>
#include<stdlib.h>
#include<malloc.h>
#include<conio.h>

typedef struct nod
{
int data;
struct nod *next;
} NOD, *NODPTR;

void CiptaSenarai (NODPTR *s)
{
    *s = NULL;
}
NODPTR NodBaru(int m)
{
   NODPTR n;
   n= (NODPTR) malloc(sizeof(NOD));
   if (n !=NULL)
   {
   n-> data = m;
   n-> next = NULL;
   }

   return n;
}
void SisipSenarai (NODPTR *s, NODPTR t, NODPTR p)
{
if (p==NULL){
       t -> next = *s;
       *s = t;
       }
else{
    t -> next = p -> next;
    p -> next = t;
    }
}

void CetakSenarai(NODPTR s)
{
   NODPTR ps;
   for (ps = s; ps != NULL; ps = ps -> next)
   printf("%d  --> ",ps -> data);
   printf("NULL\n");
getch();
}
//----------------------------------------------------------

int main()
{
clrscr();
    NODPTR pel;
    NODPTR n;
    int i,k, nilai;

    CiptaSenarai(&pel);
    printf("Masukan banyak data= ");
    scanf ("%d", &k);
    for(i=1;i<=k;i++)
    {
      printf ("Masukan datasenarai ke- %d= ",i);
      scanf ("%d", &nilai);
      n = NodBaru (nilai);
      SisipSenarai (&pel, n, NULL);
      }
      CetakSenarai (pel);
      return 0;
      }
      //------------------------------------


2. Contoh Program Single Linked List :
#include <iostream.h>
#include <conio.h>
#include <stdio.h>
#include <alloc.h>

int pil;
void pilih();
void buat_baru();
void tambah_belakang();
void tambah_depan();
void hapus_belakang();
void hapus_depan();
void tampil();

struct simpul
{
    char nim[8], nama [20];
    int umur;
    struct simpul *next;
} mhs, *baru, *awal=NULL, *akhir=NULL,*hapus,*bantu;


int main()
{
    do
    {
        clrscr();
        cout<<"MENU SINGLE LINKEDLIST"<<endl;
        cout<<"1. Tambah Depan"<<endl;
        cout<<"2. Tambah Belakang"<<endl;
        cout<<"3. Hapus Depan"<<endl;
        cout<<"4. Hapus Belakang"<<endl;
        cout<<"5. Tampilkan"<<endl;
        cout<<"6. Selesai"<<endl;
        cout<<"Pilihan Anda : ";
        cin>>pil;
        pilih();
    } while(pil!=6);
    return 0;
}

void pilih()
{
    if(pil==1)
        tambah_depan();
    else if(pil==2)
        tambah_belakang();
    else if(pil==3)
        hapus_depan();
     else if(pil==4)
        hapus_belakang();
      else if(pil==5)
        tampil();
    else
        cout<<"selesai";
}

void buat_baru()
{
    baru=(simpul*)malloc(sizeof(struct simpul));
    cout<<"input nim   : ";cin>>baru->nim;
    cout<<"input nama  : ";cin>>baru->nama;
    cout<<"input umur  : ";cin>>baru->umur;
    baru->next=NULL;
}

void tambah_belakang()
{
    buat_baru();
    if(awal==NULL)
    {
        awal=baru;
    }
    else
    {
        akhir->next=baru;
    }
    akhir=baru;
    akhir->next=NULL;
    cout<<endl<<endl;
    tampil();
}

void tambah_depan()
{
    buat_baru();
    if(awal==NULL)
    {
        awal=baru;
        akhir=baru;
        akhir->next=NULL;
    }
    else
    {
        baru->next=awal;
        awal=baru;
    }
    cout<<endl<<endl;
    tampil();
}

void hapus_depan()
{
    if (awal==NULL)
        cout<<"Kosong";
    else
    {
        hapus=awal;
        awal=awal->next;
        free(hapus);
    }
   cout<<endl<<endl;
    tampil();
}

void hapus_belakang()
{
    if (awal==NULL)
        cout<<"Kosong";
    else if(awal==akhir)
    {
         hapus=awal;
         awal=awal->next;
         free(hapus);
    }
    else
    {
        hapus=awal;
        while(hapus->next!=akhir)
             hapus=hapus->next;
        akhir=hapus;
        hapus=akhir->next;
        akhir->next=NULL;
        free(hapus);
    }
    cout<<endl<<endl;
    tampil();
}

void tampil()
{
     if (awal==NULL)
          cout<<"Kosong";
     else
     {
         bantu=awal;
         while(bantu!=NULL)
         {
            cout<<"nim : "<<bantu->nim;
            cout<<"  nama : "<<bantu->nama;
            cout<<"  umur : "<<bantu->umur<<endl;
            bantu=bantu->next;
         }
     }
     getch();
}

Struktur Data, Stack (Tumpukan) dalam bahasa C++

Contoh Program Stack dalam bahasa C++ :


1. Contoh Program Stack Pembalikan data :
        #include<iostream.h>
        #include<conio.h>

void main()
{
clrscr();
        char a[6]={'s','t','i','k','o','m'};
        int i;

        //Inputan Data
        cout<<"Data Masukkan : "<<a<<endl;

        cout<<endl;

        //Menampilkan data
        cout<<"Pembalikan Data :";
        for(i=6;i>=0;i--)
        {
        cout<<a[i]<<"";
        }
        cout<<endl;

        getch();
        }


2. Contoh Program Stack, membalik kalimat dengan inputan :
#include <stdio.h>
#include <conio.h>
#include <string.h>

//deklarasi var public
const MaxElemen = 255; //batas maksimum elemen
struct Tumpukan
{
      char Isi[MaxElemen];
      int Atas;
} T;

void PUSH(char x);
char POP();


//program utama
void main ()
{
     int I;       // pencacah
     char Kalimat[MaxElemen];   //kalimat yang akan dibalik
     clrscr();
     T.Atas =0;  // niali awal tumpukan
     printf ("Aplikasi Tumpukan untuk Membalik kalimat\n");
     printf ("----------------------------------------\n\n");

     // Inputkan kalimat yang akan dibalik
     printf("Masukkan sembarang kalimat : ");gets(Kalimat);

     clrscr();
     printf("Kalimat Asli : %s\n",Kalimat);

     //Mem-PUSH huruf dari kalimat ke dalam tumpukan
     for(I=0;I<strlen(Kalimat);I++)
     {
      PUSH(Kalimat[I]);
      }

      printf("Kalimat Setelah di Balik : ");

      //Mem-POP sekaligus mencetak isi tumpukan sehingga diperoleh kalimat yang terbalik
      for (I=0;I<strlen(Kalimat);I++)
      {
       printf("%c",POP());
      }
       getch();
    } //Akhir Program Utama


    //sub program PUSH berfungsi memasukkan elemen ke dalam STACK
    void PUSH (char x)
    {
       if(T.Atas == MaxElemen)
       {
printf("Tumpukan Sudah Penuh");
getch();
}
else
{
T.Atas = T.Atas + 1;
T.Isi[T.Atas] = x;
}
    }

    //sub program POP berfungsi mengambil elemen dari STACK
    char POP()
    {
     char hasil;

     if(T.Atas == 0)
     {
       printf("Tumpukan sudah kosong");
       hasil = ' ';
     }
     else
     {
       hasil = T.Isi[T.Atas];
       T.Atas = T.Atas - 1;
     }
      return hasil;
}



3. Contoh Program Stack dengan menggunakan Structure : 
#include<iostream.h>
#include<stdio.h>
#include<conio.h>

struct stack
{
int data[5];
int atas;
}tumpukan;

void masukan();
void keluarkan();
void tampilkan();

void main()
{
int pilihan;
tumpukan.atas = -1;

do
{
clrscr();
cout<<"Program Stack\n\n";
cout<<"1. Masukan Data\n";
cout<<"2. Keluarkan Data\n";
cout<<"3. Tampilkan Data\n";
cout<<"Masukan pilihan :";
cin>>pilihan;
switch(pilihan)
{
case 1:
{

masukan();
break;
}

case 2:
{
keluarkan();
break;
}

case 3:
{
tampilkan();
break;
}
default:
{
cout<<"Bukan pilihan tersedia";
}


}

}
while (pilihan >=1 && pilihan <=3);

getch();
}

void masukan()
{
int baru;
if (tumpukan.atas ==4)
{
cout<<"tumpukan penuh";
getch();
}
else
{
cout<<"Masukan nilai :";
cin>>baru;
tumpukan.atas++;
tumpukan.data[tumpukan.atas] = baru;
}
}

void keluarkan()
{
if (tumpukan.atas == -1)
{
cout<<"Tumpukan Kosong";
getch();
}
else
{
cout<<"Nilai yang dikeluarkan:"<< tumpukan.atas--;//mengurangkan indeks dan menghilangkan data
getch();
}
}

void tampilkan()
{
if (tumpukan.atas == -1)
{
cout<<"Tumpukan kosong";
getch();
}
else
{
cout<<"Data: \n";
for (int i=0;i<=tumpukan.atas; i++)
{
cout<<" "; }
getch();
}
}


4.  Contoh Program Stack dengan Single Linked List :

#include<iostream.h>
#include<conio.h>
class Linked_list_Stack
{
private :
struct node
{
int data;
node*next;
}
;
node *top;
node *entry;
node *print;
node *bottom;
node *last_entry;
node *second_last_entry;

public:
Linked_list_Stack();

void pop();
void push();
void print_list();
void show_working();
};

Linked_list_Stack :: Linked_list_Stack()
{
top=NULL;
bottom=NULL;
}
//-------------------------- push() -----------------------//
void Linked_list_Stack::push()
{
int num;
cout<<"\n\n\n\n\n\t Masukan angkapada Stack : ";
cin>>num;
entry=new node;
if(bottom==NULL)
{
entry->data=num;
entry->next=NULL;
bottom=entry;
top=entry;
}
else
{
entry->data=num;
entry->next=NULL;
top->next=entry;
top=entry;
}
cout<<"\n\n\t *** "<<num<<" sudah masuk dalam stack. "<<endl;
cout<<"\n\n\n\t\t Pres any key to return to Menu. ";
getch();
}
//----------------------------------- pop()-------------------------------- //
void Linked_list_Stack::pop()
{
if(bottom==NULL)
cout<<"\n\n\n\t *** Error : Stack is empty. \n"<<endl;
else
{
for(last_entry=bottom; last_entry->next!=NULL;
last_entry=last_entry->next)
second_last_entry=last_entry;
if(top==bottom)
bottom=NULL;
int poped_element=top->data;
delete top;

top=second_last_entry;
top->next=NULL;
cout<<"\n\n\n\t *** "<<poped_element<<"sudah diambil dari Stack."<<endl;
}
cout<<"\n\\n\t\t Pres any key to return to Menu. ";
getch();
}
//-------------------------- print_list() ---------------------------------//
void Linked_list_Stack::print_list()
{
print=bottom;
if(print!=NULL)
cout<<"\n\n\n\n\n\t Angka-angka ada di Stack adalah : \n"<<endl;
else
cout<<"\n\n\n\n\n\t ** Tidak ada yang ditampilkan. "<<endl;
while(print!=NULL)
{
cout<<"\t"<<print->data<<endl;
print=print->next;
}
cout<<"\n\n\n\t\t Pres any key to return to Menu.";
getch();
}
//---------------------------- show_working()----------------//
void Linked_list_Stack:: show_working()

{
char Key=NULL;
do
{
clrscr();
gotoxy(5,5);
cout<<"********** Implementation of Linked List as a Stack **********"<<endl;
gotoxy(10,8);
cout<<"Pilih salah satu menu : "<<endl;
gotoxy(15,10);
cout<<"- Press\ 'P\' to Masukan data dalam Stack"<<endl;

gotoxy(15,12);
cout<<"- Press \'O\' to Hapus data dari Stack"<<endl;

gotoxy(15,14);
cout<<"- Press \'S\' to tampilkan data dari Stack"<<endl;

gotoxy(15,16);
cout<<"- Press \'E\' to Exit"<<endl;

input :
gotoxy(10,20);
cout<<"              ";

gotoxy(10,20);
cout<<"Masukan Pilihan : ";

Key=getche();
if(int(Key)==27 || Key=='e' || Key=='E')
break;
else if(Key=='p'|| Key=='P')
push();
else if(Key=='o'|| Key=='O')
pop();
else if (Key=='s' || Key=='S')
print_list();
else
goto input;
}
while(1);

}
//-------------------------------- main() --------------------------- //
int main()
{
Linked_list_Stack obj;
obj.show_working();
return 0;
}

Struktur Data, Structure dalam bahasa C++

Contoh Program Structure dalam bahasa C++ :


1. Contoh Program Structure : 

#include<stdio.h>
#include<conio.h>
#include<iostream.h>
 struct mahasiswa
{
char nim[15];
char nama[30];
char alamat[50];
float ipk;
 };
void main()

{
clrscr();
mahasiswa mhs;
cout<<"Nim    : "; cin.getline(mhs.nim,15);
cout<<"Nama   : "; cin.getline(mhs.nama,30);
cout<<"Alamat : "; cin.getline(mhs.alamat,50);
cout<<"IPK    : "; cin>>mhs.ipk;

cout<<endl<<endl;

cout<<"Nim Anda    : "<<mhs.nim<<endl;
cout<<"Nama Anda   : "<<mhs.nama<<endl;
cout<<"Alamat Anda : "<<mhs.alamat<<endl;
cout<<"IPK Anda    : "<<mhs.ipk<<endl;
getch();
}




2. Contoh Program Menampilkan Tahun, Bulan, dan Tanggal lahir
#include<iostream.h>
#include<conio.h>

struct data_tgl
{ int tgl,bln,thn;};

struct teman
{ char nama[20];
char j_kel[1];
struct data_tgl tgl;};

struct teman info;
main()
{
clrscr();
//input data
cout<<"Masukkan nama anda  = ";cin>>info.nama;
cout<<"Jenis kelamin anda  = ";cin>>info.j_kel;
cout<<"Tanggal lahir anda  = ";cin>>info.tgl.tgl;
cout<<"Bulan lahir anda    = ";cin>>info.tgl.bln;
cout<<"Tahun lahir anda    = ";cin>>info.tgl.thn;
cout<<"";
cout<<"_________________________________ \n";
cout<<"";
//output data
cout<<"\nNama          : "<<info.nama;
cout<<"\nKelamin       : "<<info.j_kel;
cout<<"\nTanggal lahir : "<<info.tgl.tgl<<"-"<<info.tgl.bln
<<"-"<<info.tgl.thn;
getch();
}



3. Contoh Program Structure dengan menggunakan Array:

#include<stdio.h>
#include<conio.h>
#include<iostream.h>
main()
{
int i;
struct
{
char nim[15];
char nama[15];
float nilai;
} mhs[5];

clrscr();
for(i=1; i<=2; i++)
{
cout<<"Masukan NIM         = "; cin>>mhs[i].nim;
cout<<"Masukan Nama        = "; cin>>mhs[i].nama;
cout<<"Masukan Nilai Akhir = "; cin>>mhs[i].nilai;
cout<<"\n";
}
cout<<endl;
cout<<"Data Mahasiswa"<<endl;
cout<<"--------------------- ";
cout<<"\n";
for(i=1; i<=2; i++)
{
cout<<"Data Ke - "<<i<<endl;

cout<<"NIM         = "<<mhs[i].nim<<endl;
cout<<"Nama        = "<<mhs[i].nama<<endl;
cout<<"Nilai Akhir = "<<mhs[i].nilai<<endl;
cout<<endl;
}

getch();
}


 

4. Contoh Program Structure dengan menggunakan Function :

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

char* ket(float n);

main()
{
int i, j=1, k=1;
struct
{
char nim[15];
char nama[15];
float nilai;
} mhs[5];

clrscr();
for(i=0; i<2; i++)
{
cout<<"Data Ke - "<<j++<<endl;
cout<<"masukan NIM         = "; cin>>mhs[i].nim;
cout<<"masukan Nama        = "; cin>>mhs[i].nama;
cout<<"masukan Nilai Akhir = "; cin>>mhs[i].nilai;
cout<<endl;
}

clrscr();
for(i=0; i<2; i++)
{
cout<<"Data Ke - "<<k++<<endl;
cout<<"NIM         = "<<mhs[i].nim<<endl;
cout<<"Nama        = "<<mhs[i].nama<<endl;
cout<<"Nilai Akhir = "<<mhs[i].nilai<<endl;
cout<<"Keterangan yang didapat = ";
cout<<ket(mhs[i].nilai)<<endl;
cout<<endl;
}

getch();
}

char* ket(float n)
{
if(n > 65)
cout<< "Lulus";
else
cout<< "Gagal";
}


5. Contoh Program Nested Structure :

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


main()
{
struct dtmhs
{
char nim[15];
char nama[15];
};

struct dtnil
{
float nil1;
float nil2;
};

struct
{
struct dtmhs mhs;
struct dtnil nil;
} nilai;

clrscr();

//-> masukan data
cout<<"masukan NIM       = "; cin>>nilai.mhs.nim;
cout<<"masukan Nama      = "; cin>>nilai.mhs.nama;
cout<<"masukan Nilai UTS = "; cin>>nilai.nil.nil1;
cout<<"masukan Nilai UAS = "; cin>>nilai.nil.nil2;
cout<<endl;

//-> menampilkan hasil masukan
cout<<"NIM = "<<nilai.mhs.nim<<endl;
cout<<"Nama = "<<nilai.mhs.nama<<endl;
cout<<"Nilai UTS = "<<nilai.nil.nil1<<endl;
cout<<"Nilai UAS = "<<nilai.nil.nil2<<endl;
cout<<endl;

getch();
return(0);
}


6. Contoh program menghitung biaya kuliah berdasarkan jumlah SKS. (soal UAS semester 2)

#include <iostream.h>
#include <conio.h>
#include <stdio.h>
struct mahasiswa
{
char nama[25];
char nim[11];
int sks;
float biaya;
};


void main()
{
clrscr();

mahasiswa mhs;
cout<<"Nama       : "; cin.getline(mhs.nama,25);
cout<<"NIM : "; cin.getline(mhs.nim,11);

mhs.sks;
cout<<"Jumlah SKS : "; cin>>mhs.sks;
mhs.biaya=(30000.00*mhs.sks);
cout<<"Biaya           : "<<mhs.biaya<<endl;

cout<<endl;
cout<<endl;
getch();
}



Struktur Data, Queue (Antrian) dalam bahasa C++

Contoh Program Queue dalam bahasa C++ :


1. Contoh Program Queue : Insert, Delete, View, Clear, Exit.

#include <stdio.h>
#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;
}
void Enqueue(int data)
{
if(IsEmpty()==1)
{
antrian.head=antrian.tail=0;
antrian.data[antrian.tail]=data;
printf("%d masuk !",antrian.data[antrian.tail]);

void Tampil();
{
if(IsEmpty()==0)
{
for(int i=antrian.head;i<=antrian.tail;i++)
{
printf("%d ",antrian.data[i]);
}
}
else
 printf("Data Kosong !\n");
}
}
else
if(IsFull()==0)
 {
antrian.tail++;
antrian.data[antrian.tail]=data;
 printf("%d masuk !", 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;
printf("Data Clear");
}

void Tampil()
{
if (IsEmpty()==0)
{
for (int i=antrian.head;i<=antrian.tail; i++)
{ printf("%d ",antrian.data[i]);
}
}
else
{
printf("Data Kosong\n");
}
}
void main()
{
int pil;
int data;
Create();

 do
{
 clrscr();
printf ("\n====================================");
printf ("\n Ujian Akhir Semester (UAS)         ");
printf ("\n====================================");
printf ("\n           Program Queue            ");
printf ("\n====================================");
printf ("\n    Nama  : Nina Narulita Pande     ");
printf ("\n    Kelas : TI2E                    ");
printf ("\n    NIM   : 11142344                ");
printf ("\n====================================\n\n");
printf ("\n============MENU PILIHAN============\n");
printf ("1. Enqueue\n");
printf ("2. Dequeue\n");
printf ("3. Tampil\n");
printf ("4. Clear\n");
printf ("5. Keluar\n");
printf ("--------------------------------------\n");
printf ("Masukkan Pilihan Anda -> ");
scanf("%d",&pil);

switch(pil){
case 1:
printf("Data : ");
scanf("%d",&data);
Enqueue(data);
break;

case 2:
printf("Elemen yang keluar : %d", Dequeue());
break;

case 3:
Tampil();
break;

case 4:
Clear();
break;
case 5:
clrscr();
gotoxy(28,10);printf("    Present By : ");
gotoxy(25,11);printf("\"Nina Narulita Pandela\"\n");
gotoxy(26,12);printf("\"     11142344\"\n");
gotoxy(23,13);printf("\"Teknik Informatika 2E 2012\"");
break;
}
getch();
} while(pil!=5);
}


2. Contoh Program Queue :
#include <stdio.h>
#include <conio.h>
void main()
{
  int cek=0, data[20], x, hapus;
  char pil;
  do {
      clrscr();
      printf("1. Tambah Antrian\n");
      printf("2. Hapus Antrian\n");
      printf("3. Lihat Antrian\n");
      printf("4. Keluar\n");
      printf("Silahkan masukkan pilihan anda...  ");
      pil=getche();


  if(pil!='1' && pil !='2' && pil !='3' && pil!='4' )
      printf("\n\nAnda salah mengetikkan inputan...\n");
      else
      {
    if(pil=='1')   //PUSH
    {
      if(cek==20)
        printf("\nAntrian Penuh\n\n");
        else
        {
          printf("\nMasukkan nilai-->");scanf("%i",&x);
          data[cek]=x;
          cek++;
        }}
        else
        {
          if(pil=='2')     //POP
          {
        if(cek==0)
          printf("\nAntrian kosong\n\n");
          else
          {
            hapus=data[0];
            for(int v=0;v<cek;v++)
            data[v]=data[v+1];
            data[cek-1]=NULL;
            cek--;
            printf("\nData dgn nilai=%i terhapus.",hapus);
          }
          getch();
          }
        else
        {
          if(pil=='3')   //CEK DATA
          {
            if(cek==0)


            printf("\nAntrian Kosong.\n\n");

            else
            {
              printf("\n");
              for(int z=0;z<cek;z++)
              {
            printf(" | ");
            printf("%i",data[z]);
            printf(" | ");
              }

            }
            getch();
            }
          }
        }
          }

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


3. Implementasi Queue dengan Double Linked List :

#include <iostream.h>
#include <conio.h>
class Linked_list_Queue
{
private :
struct node
{
int data;

node *next;
};

node *rear;
node *entry;
node *print;
node *front;

public :
Linked_list_Queue();

void Delete();
void Insert();
void print_list();
void show_working();
};

Linked_list_Queue :: Linked_list_Queue()
{
rear=NULL;
front=NULL;
}

//------------------- Insert () ----------------//
void Linked_list_Queue :: Insert()
{
int num;
cout<<"\n\n\n\n\n\t Masukan angka dalam Queue : ";
cin>>num;

entry=new node;
if(rear==NULL)
{
entry->data=num;
entry->next=NULL;
rear=entry;
front=rear;
}

else
{
entry->data=num;
entry->next=NULL;
rear->next=entry;
rear=entry;
}
cout<<"\n\n\t *** "<<num<<" sudah masuk dalam Queue. "<<endl;
cout<<"\n\n\n\t\t pres any key to return to menu. ";

getch();
}

//------------------------------- Delete() ------------------------//
void Linked_list_Queue:: Delete()
{
if(front==NULL)
cout<<"\n\n\n\t *** Error : Queue is empty. \n"<<endl;
else
{
int deleted_element=front->data;
node *temp;
temp=front;
front=front->next;
delete temp;
cout<<"\n\n\n\t *** "<<deleted_element<<"dihapus dari Queue. "<<endl;
}
cout<<"\n\n\n\t\t pres any key to return to Menu. ";
getch();
}
//------------------------- print_list()---------------------//
void Linked_list_Queue::print_list()
{
print=front;
if(print!=NULL)
cout<<"\n\n\n\n\n\t Angka-angka yang ada dalam Queue adalah : \n"<<endl;
else
cout<<"\n\n\n\n\n\t *** Tidak ada yang ditampilkan. "<<endl;
while (print!=NULL)
{
cout<<"\t"<<print->data<<endl;
print=print->next;
}
cout<<"\n\n\n\t\t Pres any key to return to Menu. ";
getch();
}
//----------------- show_working() ------------------//
void Linked_list_Queue:: show_working()

{
char Key=NULL;
do
{
clrscr();
gotoxy(5,5);
cout<<"********** Implementation of Linked List as a Queue **********"<<endl;
gotoxy(10,8);
cout<<"Pilih salah satu menu : "<<endl;
gotoxy(15,10);
cout<<"- Press\ 'I\' to Masukan data dalam Queue"<<endl;

gotoxy(15,12);
cout<<"- Press \'D\' to Hapus data dari Queue"<<endl;

gotoxy(15,14);
cout<<"- Press \'P\' to tampilkan data dari Queue"<<endl;

gotoxy(15,16);
cout<<"- Press \'E\' to Exit"<<endl;

input :
gotoxy(10,20);
cout<<"              ";

gotoxy(10,20);
cout<<"Masukan Pilihan : ";

Key=getche();
if(int(Key)==27 || Key=='e' || Key=='E')
break;
else if(Key=='i'|| Key=='I')
Insert();
else if(Key=='d'|| Key=='D')
Delete();
else if (Key=='p' || Key=='P')
print_list();
else
goto input;
}
while(1);

}
//-------------------------------- main() --------------------------- //
int main()
{
Linked_list_Queue obj;
obj.show_working();
return 0;
}

Struktur Data, Array (Larik) dalam bahasa C++

Contoh Program Array dalam bahasa C++  :

1. Program Pangkat nilai :
#include <stdio.h>
#include <conio.h>
int main()
{
clrscr();
  int square[100];
  int i; /*loop index*/;
  int k; /*the integer*/

  /*calculate the squares */
  for (i=0; i<10; i++)
  {
    k= i+1;
    square[i]=k*k;
    printf("\nPangkat dari %d adalah %d ", k, square[i]);
  getch();
  }
  return 0;
}


2. Program menghitung mahasiswa baru berdasarkan tahun dan fakultasnya (soal UAS semester 2)
#include <iostream.h>
#include <conio.h>
void main()
{ clrscr();
int mhs_baru[4][3];
int tahun, fakultas;
mhs_baru[0][0]=300;
mhs_baru[0][1]=370;
mhs_baru[0][2]=450;
mhs_baru[1][0]=200;
mhs_baru[1][1]=275;
mhs_baru[1][2]=350;
mhs_baru[2][0]=80;
mhs_baru[2][1]=90;
mhs_baru[2][2]=110;
mhs_baru[3][0]=150;
mhs_baru[3][1]=140;
mhs_baru[3][2]=170;
while(1)
{
  cout<<"Fakultas (0=Ilmu Komputer, 1=Ekonomi, 2=Psikologi, 3=Bahasa & Sastra) : ";cin>>fakultas;
  if((fakultas==0) || (fakultas==1) || (fakultas==2) ||(fakultas==3));
     break;
}
while(1)
{
   cout<<"tahun (2009-2011) : ";cin>>tahun;
   if((tahun>=2009)&&(tahun<=2011))
   {
       tahun=tahun-2009;
      break;
    }
}
cout<<"jumlah mahasiswa baru= "<<mhs_baru[fakultas][tahun];
getch();
}

Sabtu, 02 Juni 2012

UAS (Ujian Akhir Semester) ETIKA PROFESI.


1.  Apakah  Etika Profesi Bidang Komputer ? Jelaskan !
  Jawab : adalah penerapan etika umum pada profesi dibidang komputer atau Teknologi   Informasi (T.I) yang merupakan kesadaran yang harus menjiwai setiap para praktisi T.I.


2. Salah satu prinsip dasar Etika  adalah Prinsip Sikap Baik. Jelaskan mengenai penerapan prinsip ini pada Etika Hacker !
     Jawab : Prinsip sikap baik adalah segala sikap dan perbuatan yang berguna bagi orang  lain, kecuali yang membahayakan kita. Penerapan prinsip sikap baik pada Etika Hacker antara lain tidak memasukan virus, carding, spam, dan lain sebagainya.


3.  Apakah persyaratan seorang Profesional. Jelaskan !
      Jawab :   Persyaratan seorang profesional adalah :
- Pendidikan Khusus yang berakhir dengan suatu gelar dari lembaga pendidikan tinggi.
- Mengakui adanya kewajiban, yaitu adanya jiwa pengabdian terhadap pekerjaannya.
- Memiliki kode etik yang mengikat tiap orang yang menyandang suatu profesi  tertentu.


4.  a.  Apakah Ethos ? jelaskan !
     b. Sebut beberapa  Ethos Kerja Negatif
     c. Apakah Ethos Kerja Negatif dapat diperbaiki, bagaimana caranya? Jelaskan !
    Jawab :
    a. Ethos adalah perilaku/perbuatan manusia yang merupakan sinergi dari 3 (tiga) nilai,   yaitu nilai logika, nilai etika dan nilai estetika, khususnya pada bidang pekerjaan (profesi) digunakan istilah ethos kerja/profesi.
     b.
     c.


5.  Jelaskan tentang  logika, Etika dan Estetika secara lengkap !
     Jawab :
    Logika : Berfikir secara mendalam berdasarkan akal menghasilkan ilmu pengetahuan (science), yaitu tentang nilai kebenaran.
   Etika : Berfikir secara mendalam berdasarkan kemauan menghasilkan moral, yaitu tentang nilai kebaikan.
   Estetika : Berfikir secara mendalam berdasarkan perasaan menghasilkan seni, yaitu tentang nilai keindahan.


6. Salah satu prinsip dasar Etika  adalah Prinsip Sikap Baik. Jelaskan mengenai    
    prinsip ini !
   Jawab : Perinsip sikap baik adalah segala sikap dan perbuatan yang berguna bagi orang lain kecuali yang membahayakan kita.


7. Jelaskan Pengertian Etika dan Moral ! Jelaskan !
    Jawab : Pengertian etika dan moral :
         Etika adalah ilmu tentang moral. Berfikir secara mendalam berdasarkan kemauan menghasilkan moral, yaitu tentang nilai kebaikan.
          Moral adalah kondisi pikiran, perasaan, ucapan, dan perilaku manusia yang terkait dengan nilai-nilai baik dan buruk.


8. Jelaskan Pengertian Etika !
  Jawab : Etika adalah ilmu tentang moral. Berfikir secara mendalam berdasarkan kemauan    menghasilkan moral, yaitu tentang nilai kebaikan.


9. Sebutkan Kriteria-kriteria untuk mengukur suatu perbuatan/tindakan itu
    Etis/Tidak Etis.  Jelaskan !
    Jawab :


10. Sebutkan Etika Hacker yang Saudara Ketahui ?
      Jawab :
      Etika Hecker :
1.   Di atas segalanya, hormati pengetahuan & kebebasan informasi.
2. Memberitahukan sistem administrator akan adanya pelanggaran keamanan/lubang di keamanan yang anda lihat.
3.   Jangan mengambil keuntungan yang tidak fair dari hack.
4.   Tidak mendistribusikan & mengumpulkan software bajakan.
5.   Tidak pernah mengambil resiko yang bodoh
6.   Selalu mengetahui kemampuan sendiri.
7.   Selalu bersedia untuk secara terbuka/bebas/gratis memberitahukan& mengajarkan berbagai informasi & metoda yang diperoleh.
8.   Tidak pernah meng-hack sebuah sistem untuk mencuri uang.
9.   Tidak pernah memberikan akses ke seseorang yang akan membuat kerusakan.
10. Tidak pernah secara sengaja menghapus & merusak file di komputer yangdihack.
11. Hormati mesin yang di hack, dan memperlakukan dia seperti mesin sendiri.


11. Apakah yang dimaksud dengan Hacker?  Jelaskan !
    Jawab : Hecker adalah orang yang mempelajari, menganalisa, memodifikasi, menerobos masuk ke dalam komputer dan jaringan komputer, baik untuk keuntungan atau dimotivasi oleh tantangan.


12. Apakah :
      a. Cyber power !
      b. Cyber space !
      c. Cyber Ethics !
      d. Cybernet
      Jawab :
       a. Cyber power :
     b. Cyber space : Manusia mendigitalkan dirinya (cybernet) dan saling berhubungan (internet) yang merupakan jaringan kerja globalisasi digital tanpa dibatasi dimensi ataupun memiliki daya jangkauan yang sangat luas, ratusan juta komputer yang saling terhubung, memiliki teritori yang sangat luas yang tidak pernah berhenti berkomunikasi satu sama lainnya di alam maya (cyber space).
      c. Cyber ethics : merupakan pagar pengaman untuk tidak dilakukannya pelanggaran / kejahatan di dunia maya.
    d. Cybernet : merupakan representasi dari proses “being digitital” yang dilakukan manusia.  Atau manusia yang mendigitalkan dirinya.


 13. Sebutkan dan jelaskan kriteria profesi !
       Jawab :
       Kriteria profesi :
    1.  Pekerjaan yang meliputi bidang tertentu saja (spesialisasi) : bidang keahlian yang dipelajari dan ditekuni biasanya tidak ada rangkapan dengan pekerjaan di luar keahliannya, contoh: Dokter, Polisi, Sekretaris, Humas (Public Relation).
  2. Pekerjaan yang dilaksanakan berdasarkan keahlian dan keterampilan khusus : pekerjaan tersebut diperoleh melalui pendidikan dan keterampilan, dan ditempuh secara resmi pada lembaga pendidikan/latihan yang diakui oleh pemerintah berdasarkan Undang-Undang. Keterampilan yang diperoleh dibuktikan oleh sertifikasi yang dikeluarkan oleh pemerintah atau lembaga lain yang diakui.
   3.  Bersifat tetap atau terus-menerus : tetap berarti bahwa sekali berkiprah di suatu profesi tertentu seharusnya tetap pada profesi tertentu itu. Terus menerus, berlangsung sampai jangka waktu lama sampai pensiun.
  4.  Adanya jiwa pengabdian : para pemangku pekerjaan tersebut (profesional) lebih mengutamakan pelayanan (pengabdian) dari pada imbalan.


  14. Sebutkan dan jelaskan Tema Penting Etika !
        Jawab :
        Tema penting etika :
    1. Kebebasan dan tanggung jawab : kebebasan dan tanggung jawab saling berkaitan sangat erat karna dalam pengertian kebebasan sudah terkandung pengertian tanggung jawab, dan begitupula sebaliknya. Sehingga semakin manusia itu menjadi bebas berkehendak/berbuat (tidak ada paksaan dari luar diri-nya), maka semakin ia bersedia untuk bertanggung jawab.
   2. Hak dan kewajiban : bahwa diri setiap hak akan timbul kewajiban, begitupula sebaliknya, apabila kewajiban tidak dilaksanakan maka haknya pun menjadi hilang.
      3. Hati nurani, Sumber Kesadaran Moral : dalam hatinurani memainkan peranan baik perasaan (esthetika), kehendak (etika) dan akal (logika), hatinurani juga berdimensi religius. Hatinurani berkembang seirama dengan perkembangan kepribadian seseorang.


 15. Salah satu Thema Pokok Etika Profesi adalah hati Nurani.
       Jelaskan ! (Dapat melalui pendekatan teori Prof. Dr. Sigmund Freud)
       Jawab :


 16. Sebutkan dan jelaskan Kriteria seorang Hacker!
       Jawab :


17. Apakah peranan Etika. Jelaskan !
      Jawab :