Silahkan kunjungi website ini Ariefrestu.web.id
http://www.dreambingo.co.uk/

Struktur Data

Written By Unknown on Rabu, 23 November 2011 | 11/23/2011

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

void input(int x[],int n)

{
for (int i=1;i<=n;i++)
{cout<<”Masukan Nilai “<<i<<” : “;cin>>x[i];}
}

void tinggi(int x[],int n)

{
int max,min;
max = x[1];
min = x[1];
for (int i=2;i<=n;i++)
{
if (max < x[i])
max = x[i];
if (min > x[i])
min = x[i];
}
cout<<”\nNilai tertinggi = “<<max<<”\n”;
cout<<”Nilai terendah = “<<min<<”\n”;
}
double rata(int x[],int n)
{
double a,b;
a = 0;
for (int i=1;i<=n;i++)
{
a = a + x[i];
}
b = a/n;
cout<<”Rata-Rata : “<<a<<”/”<<n<<” = “<<b;
}

void main()
{
int p[50],N;
cout<<”Banyaknya Data : “;cin>>N;
cout<<endl;
input(p,N);
tinggi(p,N);
rata (p,N);
getch();
}


Record
#include <iostream.h>
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#define maxstack 200

struct STACK        //membuat jenis data abstrak 'STACK'
{
    int top;
    char data[maxstack];
};
char dta[maxstack];
struct STACK stackbaru;
void inisialisasi()
{
    stackbaru.top = -1;
}
bool isfull()        //menanyakan penuhkah?
{
                if (stackbaru.top == maxstack-1) return true;
                  else return false;
}
bool isempty()        //menanyakan kosongkah?
{
                 if (stackbaru.top == -1) return true;
                else return false;
}
void push(char dta) //mengisi stack (menyiapkan data)
{
                if (isfull() == false)
    {
                 stackbaru.top++;
                 stackbaru.data[stackbaru.top]=dta;
    }
    else
    {
                puts ("\nMaaf Stack penuh");
    }
}

void pop()            //mengambil isi stack
{
                 while (isempty() == false)
    {
                 cout<<stackbaru.data[stackbaru.top];
                  stackbaru.top--;
    }
}

void print()        //mencetak stack
{
                cout<<"\nKalimat awal : ";
                  for (int i=0; i<=stackbaru.top; i++)
    {
                cout<<stackbaru.data[i];
    }
}

void clear()
{
                 stackbaru.top = -1;
}

void main()
{
                 char kata[200]; //menampung inputan
  printf("Program Pembalik Kalimat \n\n");
                  printf("*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*\n");
                 printf("Masukkan kalimat yang Anda inginkan: \n");
 gets(kata);
 for(int i=0; kata[i]; i++)
                 push(kata[i]);
print();
cout<<"\n*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*\n\n";
cout<<"Balikan dari kalimat Anda : ";
pop();
cout<<"\n";
}


Stack
#include <stdio>
#include <conio>

main()
{
                 struct orang
   {
                 char nama[30],alamat[40];
   };
                 orang org[3];
   printf("Masukan data : \n==================\n\n");
   for (int i=0;i<3;i++)
   {
       printf("Nama\t= ");gets(org[i].nama);
      printf("Alamat\t= ");gets(org[i].alamat);
      printf("===================\n");
   }
   clrscr();
   printf("Data yang telah dimasukan : \n==============================\n\n");
printf("| No. |          Nama                |               Alamat                   |\n");
   for (int i=0;i<3;i++)
   {
      printf("|%5d|",i+1);
       printf("%30s|",org[i].nama);
      printf("%40s|",org[i].alamat);
      printf("\n");
   }
   getch();
}




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

main()
{
    int cek=0, data[20], x, hapus;
    char pil;
    do {
            clrscr();
            cout<<"1. Masukan nomer  Antrian"<<endl;
            cout<<"2. Batalkan Antrian"<<endl;
            cout<<"3. Lihat Antrian sekarang"<<endl;
            cout<<"4. Keluar"<<endl;
         cout<<endl;
            cout<<"Silahkan masukkan pilihan anda = ";
            pil=getche();
         cout<<endl;
if(pil!='1' && pil !='2' && pil !='3' && pil!='4' )
          cout<<"Wooy !! Anda salah mengetikkan inputan";
            else
            {
                if(pil=='1')   //PUSH
                {
                    if(cek==20)
                        cout<<"Antrian Penuh";
                    else
                    {
                    cout<<"Masukkan nilai = ";
               cin>>x;
                        data[cek]=x;
                        cek++;
                    }
                }
                else
                {
                    if(pil=='2')     //POP
                    {
                        if(cek==0)
                            cout<<"Antrian kosong";
                        else
                        {
                            hapus=data[0];
                            for(int v=0;v<cek;v++)
                                data[v]=data[v+1];
                            data[cek-1]=NULL;
                            cek--;
                       cout<<"Data dengan nilai "<<hapus<<" terhapus";
                        }
                        getch();
                    }
                    else
                    {
                        if(pil=='3')   //CEK DATA
                        {
                            if(cek==0)
                                cout<<"Antrian Kosong";

                            else
                            {
                                cout<<endl;
                                for(int z=0;z<cek;z++)
                                {
                                    cout<<" | ";
                                    cout<<" "<<data[z];
                                    cout<<" | ";
                                }

                            }
                            getch();
                        }
                    }
                }
            }

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


0 komentar:

Posting Komentar

 
All About Arief