30/11/13

Selain sudah saya posting program penjumlahan matriks ada juga nih program perkalian matriks dengan C++.

#include <iostream>
using namespace std;

int main(){
    int CC,ba,ka,bb,kb,i,j,k; 
    double a3[3][3], b3[3][3], c3[3][3]; 
    cout<<"Masukkan jumlah baris matriks A: "; cin>>ba; 
    cout<<"Masukkan jumlah kolom Matriks A: "; cin>>ka; 
    cout<<"Masukkan jumlah baris matriks B: "; cin>>bb; 
    cout<<"Masukkan jumlah kolom Matriks B: "; cin>>kb; 
    if (ka==bb){ 
        // input elemen matriks A 
        cout<<endl<<"Elemen matriks A : "<<endl; 
        for (i=1; i<=ba;i++){ 
            for (j=1;j<=ka;j++){ 
                 cout<<"Elemen matrik A baris ke- "<<i<<" kolom ke- "<<j<<": "; 
                 cin>>a3[i][j]; 
             } 
           } 
        // input elemen matriks B 
        cout<<endl<<"Elemen matriks B : "<<endl; 
        for (i=1; i<=bb;i++){ 
             for (j=1;j<=kb;j++){ 
                 cout<<"Elemen matrik B baris ke- "<<i<<" kolom ke- "<<j<<": "; 
                 cin>>b3[i][j]; 
             } 
        } 
        cout<<endl; 
        // proses perkalian dan pencetakan matriks 
        for (i=1;i<=ba;i++){ 
             for (j=1;j<=ka;j++){ 
                  c3[i][j]=0; 
                  for (k=1;k<=bb;k++){ 
                      CC=a3[i][k]*b3[k][j]; 
                      c3[i][j]=c3[i][j]+CC; 
                  } 
             } 
        } 
        // cetak hasil perkalian 
        cout<<"Element matriks C : "<<endl; 
        for (i=1;i<=ba;i++){ 
             for (j=1;j<=kb;j++){ 
                 cout<<"    "<<c3[i][j]; 
             } 
                 cout<<endl; 
        } 
          cout<<endl<<"=========================================="; 
    }else{ 
        cout<<endl<<"Data tidak dapat diproses !\nAlasan : jumlah kolom Matriks A tidak sama dengan baris Matriks B\n"; 
              cout<<"jumlah Matriks A="<<ka<<" dan kolom Matriks B="<<bb<<"x"<<kb<<endl; 
           cout<<"=========================================="; 
           cout<<endl<<endl;
    } 
}

Hasil Running







Sahabat-sahabatku ini ada contoh program lagi :)

#include <iostream>
using namespace std;
int main()
{
int jam,menit,sisa,detik;
cout<<"berapa detik?  ";
cin>>detik;
jam=detik/3600;
sisa=detik%3600;
menit=sisa/60;
sisa=sisa%60;
cout<<jam<<" jam "<<endl;
cout<<menit<<" menit "<<endl;
cout<<sisa<<" detik"<<endl;
}

Hasil Running

Ini contoh program penjumlahan matriks dengan C++. Pada program ini saya menggunakan software geany, untuk sahabat-sahabatku yang memakai software lain silakan menyesuaikan programnya.

#include <iostream>
using namespace std;
void masukkan(int[100][100],int,int);
void tampilkan(int[100][100],int,int);
void penjumlahan(int[100][100],int[100][100],int,int);
int main()
{
int n,m,matrik1[100][100],matrik2[100][100];
cout<<"SELAMAT DATANG DI PROGRAM PENJUMLAHAN MATRIK"<<endl;
cout<<"masukkan jumlah kolom untuk matrik A dan B"<<endl;
cout<<"--->> ";cin>>n;
cout<<"masukkan jumlah baris untuk matrik A dan B"<<endl;
cout<<"--->> ";cin>>m;
cout<<"Memasukkan nilai untuk matrik A"<<endl;
masukkan(matrik1,m,n);
cout<<"Matrik A"<<endl;
tampilkan(matrik1,m,n);
cout<<endl<<"Memasukkan nilai untuk matrik B"<<endl;
masukkan(matrik2,m,n);
cout<<"Matrik B"<<endl;
tampilkan(matrik2,m,n);
cout<<endl<<"Hasil penjumlahan matrik A dan Matrik B"<<endl;
penjumlahan(matrik1,matrik2,m,n);
}

void masukkan (int mA[100][100],int a,int b)
{
int i,j,k=0,mC[100][100];
for (i=0;i<a;i++)
for (j=0;j<b;j++)
{ cout<<"masukkan nilai baris "<<i+1<<" kolom "<<j+1<<" : ";cin>>mA[i][j]; 
 k=k+1;
 mC[k][k]=mA[i][j]; }
}
void tampilkan (int mA[100][100],int a,int b)
{
int i,j;
for (i=0;i<a;i++)
{ for (j=0;j<b;j++)
cout<<mA[i][j]<<"  ";
cout<<endl;
}
}
void penjumlahan (int mA[100][100],int mB[100][100],int a,int b)
{
int i,j,mC[100][100];
for (i=0;i<a;i++)
for (j=0;j<b;j++)
mC[i][j]=mA[i][j]+mB[i][j];

for (i=0;i<a;i++)
{for (j=0;j<b;j++)
cout<<mC[i][j]<<"  ";
cout<<endl;}
}

Hasil Running

Ini sahabat-sahabatku ada contoh program untuk menebak hari lahir dengan C++. Pada program ini saya menggunakan software geany, untuk sahabat-sahabatku yang memakai software lain silakan menyesuaikan programnya.

#include <iostream>
using namespace std;
int main()
{int tgl,bln,thn,jh,jh1,k,s;
 char nm[20];
 cout<<"     SELAMAT DATANG DI PROGRAM HARI LAHIR ANDA"<<endl;
 cout<<"Isi data di bawah ini untuk mengetahui hari lahir Anda"<<endl;
 cout<<"-------------------------------------------------------"<<endl;
 cout<<"Untuk mengisi Bulan Lahir"<<endl;
 cout<<"(1) Januari    (5) Mei       (9)  September"<<endl;
 cout<<"(2) Februari   (6) Juni      (10) Oktober"<<endl;
 cout<<"(3) Maret      (7) Juli      (11) November"<<endl;
 cout<<"(4) April      (8) Agustus   (12) Desember"<<endl;
 cout<<"-----------<<>>-----------"<<endl;
 cout<<"Masukkan nama jangan pakai spasi :)"<<endl;
 cout<<"Nama panggilan aja"<<endl;
 cout<<"Masukkan nama   --> "; cin>>nm;
 cout<<"Tanggal Lahir   --> "; cin>>tgl;
 cout<<"Bulan Lahir     --> "; cin>>bln;
 cout<<"Tahun Lahir     --> "; cin>>thn;
 cout<<"-----------<<>>-----------"<<endl;

 if (bln==1)
{jh=tgl; jh1=tgl;}
 else
 if (bln==2)
{jh=31+tgl; jh1=31+tgl;}
 else
 if (bln==3)
{jh=59+tgl; jh1=60+tgl;}
 else
 if (bln==4)
{jh=90+tgl; jh1=91+tgl;}
 else
 if (bln==5)
{jh=120+tgl; jh1=121+tgl;}
 else
 if (bln==6)
{jh=151+tgl; jh1=152+tgl;}
 else
 if (bln==7)
{jh=181+tgl; jh1=182+tgl;}
 else
 if (bln==8)
{jh=212+tgl; jh1=213+tgl;}
 else
 if (bln==9)
{jh=242+tgl; jh1=243+tgl;}
 else
 if (bln==10)
{jh=273+tgl; jh1=274+tgl;}
 else
 if (bln==11)
{jh=303+tgl; jh1=304+tgl;}
 else
{jh=334+tgl; jh1=335+tgl;}

 k=(thn-1)/4;

 if ((thn%100==0) && (thn%400==0))
s=(thn+jh1+k)%7;
 else
 if (thn%4==0)
s=(thn+jh1+k)%7;
 else
s=(thn+jh+k)%7;

cout<<"Saudara "<<nm;
 if (s==0)
cout<<" Anda lahir pada hari Jumat"<<endl;
 else
 if (s==1)
cout<<" Anda lahir pada hari Sabtu"<<endl;
 else
 if (s==2)
cout<<" Anda lahir pada hari Minggu"<<endl;
 else
 if (s==3)
cout<<" Anda lahir pada hari Senin"<<endl;
 else
 if (s==4)
cout<<" Anda lahir pada hari Selasa"<<endl;
 else
 if (s==5)
cout<<" Anda lahir pada hari Rabu"<<endl;
 else
cout<<" Anda lahir pada hari Kamis"<<endl;
cout<<"Kalau tidak percaya coba cek di kalender"<<endl;
}

Hasil Running

Agar lebih memahami penggunaan for pada c++ ini ada contoh program, semoga bermanfaat :) Pada program ini saya menggunakan software geany, jadi untuk sahabat-sahabatku yang menggunakan software lain silakan menyesuaikan.

#include <iostream>
#include <math.h>
using namespace std;
int main()
{long i,gaji,total;
cout<<"      MENGECEK GAJI ANDA JIKA HARI PERTAMA Rp10000,00"<<endl;
cout<<"dan BERLAKU KELIPATANNYA UNTUK HARI BERIKUTNYA DALAM SEMINGGU"<<endl;
cout<<endl;
for (i=1;i<=7;i=i+1)
{ gaji=10000*pow(2,i-1);
cout<<"Gaji Anda hari ke-"<<i<<" adalah Rp"<<gaji<<endl;
}
total=10000*(pow(2,7)-1);
cout<<"Total gaji Anda selama seminggu adalah Rp"<<total<<endl;
}

Hasil Running

29/11/13

Selain dua program bintang yang sebelumnya sudah saya posting, ada lagi nih variasi program membuat bintang :) Pada program ini saya menggunakan software geany, jadi untuk sahabat-sahabatku yang menggunakan software lain silakan menyesuaikan.

#include <iostream>
#include <iomanip>
using namespace std;
void bintang(int);
int main()
{
  int n;
  cout<<"berapa baris bintang? -> ";cin>>n;
  bintang(n);
}

void bintang(int a)
{ int x=a;
for (int i=1; i<=a*2; i=i+2)
{ cout<<setw(x);
 for (int j=1; j<=i; j=j+1)
 cout<<"*";
cout<<endl; x=x-1;}
}

Hasil Running

Ada lagi nih program bintang dengan kombinasi. Selamat mempelajari dan buatlah sesuai kreativitas teman-teman :) Pada program ini saya menggunakan software geany, jadi untuk sahabat-sahabatku yang menggunakan software lain silakan menyesuaikan.

#include <iostream>
using namespace std;
void segi(int);
int main()
{  int n;
cout<<"Berapa baris ?-> ";cin>>n;
segi(n);
}

void segi(int a)
{  int m=a;
for (int i=1; i<=2*a; i=i+2)
{  for (int j=1; j<=m; j++)
cout<<"z";
for (int k=1; k<=i; k++)
cout<<"*";
cout<<endl;
m=m-1;
}
}

Hasil Running

Assalamualaikum, sahabat-sahabatku selain saya posting program-program pascal ada juga nih program-program dengan bahasa C++. Monggo disimak :) Untuk kali ini program membuat bintang dengan memanfaatkan perulangan. Pada program ini saya menggunakan software geany, jadi untuk sahabat-sahabatku yang menggunakan software lain silakan menyesuaikan.

#include <iostream>
using namespace std;
void bintang(int);
int main()
{
  int n;
  cout<<"berapa baris bintang? -> ";cin>>n;
  bintang(n);
}

void bintang(int a)
{
  for (int i=a; i>=1; i=i-1)
{ for (int j=1; j<=i; j++)
 cout<<"*";
cout<<endl;
}
}


Hasil Runningnya adalah:

27/11/13

Sahabat-sahabatku jangan pantang menyerah untuk tetap belajar :) Ini ada contoh program lagi dengan array dimensi dua pada pascal. Selamat menyimak :) :) :)


program arrayd2;
uses crt;
type larik=array[1..5,1..6] of byte;
const prodi:array[1..5] of string=('KIMIA','MESIN','INDUSTRI','ELEKTRO','INFORMATIKA');
var mhs:larik;
    i,j:byte;
    max,min:byte;
    prodimax,prodimin:string;
    thmax,thmin:word;
    jumbar,jumkol:integer;

begin
{mengisi}
for i:=1 to 5 do
begin
     for j:=1 to 6 do
     begin
     write('mengisi data prodi ',prodi[i],' th ',2006+j,' = ');readln(mhs[i,j]);
     end;
     writeln;
end;
{tampilkan}
clrscr;
writeln('________________________________________________________________________');
writeln('|   Prodi   | 2006 | 2007 | 2008 | 2009 | 2010 | 2011 | 2012 |  Total  |');
writeln('|-----------|------|------|------|------|------|------|------|---------|');
for i:=1 to 5 do
begin
write('|',prodi[i]:11);
for j:=1 to 7 do
    begin
    write('| ',mhs[i,j]:3,'  ');
    jumbar:=jumbar+mhs[i,j];
    end;
    write('| ',jumbar:5,'  |');
    jumbar:=0;
writeln;
end;
writeln('|-----------|------|------|------|------|------|------|------|---------|');
write('|   Total   |');
for j:=1 to 7 do
begin
     for i:=1 to 5 do
     begin
     jumkol:=jumkol+mhs[i,j];
     end;
     write(' ',jumkol:4,' |');
     jumkol:=0;
end;
writeln('/////////|');
writeln('|___________|______|______|______|______|______|______|______|_________|');
readln;
writeln('Prodi dengan mahasiswa <50 orang adalah');
for i:=1 to 5 do
begin
     for j:=1 to 6 do
     if mhs[i,j]<50 then
     writeln('prodi ',prodi[i],' tahun ',2006+j,' sebanyak ',mhs[i,j],' orang');
end;

max:=0;
min:=255;
for i:=1 to 5 do
begin
     for j:=1 to 6 do
     begin
     if mhs[i,j]> max then
     begin
     max:=mhs[i,j];thmax:=2006+j;prodimax:=prodi[i];end;
     if mhs[i,j]< min then
     begin
     min:=mhs[i,j];thmin:=2006+j;prodimin:=prodi[i];end;
     end;
end;

{tampilkan}
writeln;
writeln('mahasiswa terbanyak dari prodi ',prodimax,' th ',thmax,' sebanyak ',max);
writeln('mahasiswa tersedikit dari prodi ',prodimin,' th ',thmin,' sebanyak ',min);
end.

26/11/13

TUGAS 3

SISTEM MANAJEMEN BASIS DATA





Disusun oleh:
                                                      1. Asti Widyaningsih (121051032)
                                                      2. Paramitha Dahlan (121051017)
                                                      3. Imam Prasetyo (121051046)
                                                      4. Seprindo Adi Putra (121051025)
                                                      5. Rian Qurniawan (121051082)


JURUSAN TEKNIK INFORMATIKA
TEKNOLOGI INDUSTRI
IST AKPRIND YOGYAKARTA
2013



       Pada tugas ketiga ini kami  mengambil tema mengenai database TKA/TPA Masjid Al Jannah. Di dalam database tersebut terdapat 3 sub sistem, antaralain:
  1. Sub Sistem Santri
  2. Sub Sistem Keuangan
  3. Sub Sistem Perpustakaan
Untuk penjelasan lebih lanjut berikut penjelasan untuk struktur tabel-tabel yang digunakan.
Ada tabel yang selalu digunakan di ketiga sub sistem tersebut yaitu tabel kecamatan, tabel kabupaten, dan tabel provinsi. Berikut struktur tabelnya.

Struktur Tabel kecamatan

                                               
Struktur Tabel Kabupaten









Struktur Tabel Provinsi









SUB SISTEM SANTRI

Pada sub sistem santri terdapat tabel santri, ustad, jilid, materi, dan pekerjaan (untuk orang tua/wali santri). Sub sistem ini menyimpan database tentang santri, ustad, materi yang dapat dikatakan sebagai sub akademik dalam TKA/TPA. Berikut struktur tabel yang terdapat pada sub sistem santri.
Struktur Tabel Santri


















Struktur Tabel Ustad














Struktur Tabel Jilid









Struktur Tabel Materi









Struktur Tabel Pekerjaan









SUB SISTEM PERPUSTAKAAN

Pada sub sistem perpustakaan terdapat tabel anggota, buku, bayar denda, bayar hilang, bayar rusak, jenis buku, kembali, pinjam, tarif denda, tarif rusak, tarif hilang, penerbit, penulis. Sub ini menyimpan database mengenai perpustakaan. Walaupun disini merupakan perpustakaan TKA/TPA namun sifatnya perpustakaan secara umum. Peminjam buku atau anggota boleh dari luar keluarga besar TKA/TPA. Berikut struktur tabel yang ada pada sub sistem perpustakann.

Struktur Tabel Anggota
















Struktur Tabel Buku

















Struktur Tabel Bayar Denda









Struktur Tabel Bayar Hilang









Struktur Tabel Bayar Rusak









Struktur Tabel Jenis Buku


Struktur Tabel Kembali
Struktur Tabel Pinjam
Struktur Tabel Penerbit 
Struktur Tabel Penulis
Struktur Tabel Tarif Denda
Struktur Tabel Tarif Hilang
Struktur Tabel Tarif Rusak

SUB SISTEM KEUANGAN

Pada sub sistem ini terdapat tabel SPP, donatur, donatur barang, donatur uang, dan total dana. Sub sistem ini menyimpan database masalah keuangan seperti pembayaran SPP santri maupun pengeluaran-pengulan pada TKA/TPA. Selain itu juga menyimpan database tentang keuangan dari donatur. Berikut struktur tabel dari sub sistem keuangan.

Struktur Table SPP
Struktur Tabel Donatur
Struktur Tabel Donatur Barang
Struktur Table Donatur Uang
Struktur Tabel Total Dana


25/11/13

Bagi sahabat-sahabat yang sedang belajar record, ada contoh program nih. Ya bisa dikatakan lumayan bagus.hehe
Selamat menyimak...
program record_2;
uses crt;
type siswa=record
     nama,alamat,asal,alasal,ttl:string;
     jurusan:1..5;
     prestasi:1..3;
     nem:real;
end;
larik_baru=array[1..17] of siswa;

var sisba,copy:larik_baru;
    i,j,x,n,acak:byte;
    pil:1..9;


procedure daftar(var a:larik_baru);
var lagi:char;
begin
repeat
begin
     inc(n);
     writeln('No Pendaftaran ke ',n);
     writeln;
     write('Nama                        : ');readln(a[n].nama);
     write('Tempat Tanggal Lahir        : ');readln(a[n].ttl);
     write('Alamat                      : ');readln(a[n].alamat);
     write('Asal Sekolah                : ');readln(a[n].asal);
     write('Alamat Sekolah              : ');readln(a[n].alasal);;
     write('Jumlah NEM                  : ');readln(a[n].nem);
     writeln;
     writeln('Prestasi yang pernah diraih (0:Tidak, 1:Kabupaten, 2:Nasional, 3:Internasional)');
     writeln('Hanya boleh melampirkan 1 prestasi');
     write('Prestasi Anda? ');readln(a[n].prestasi);
     writeln;
     writeln('Pilihan Jurusan:');
     writeln('          1. Teknik Jaringan (TKJ)');
     writeln('          2. Multimedia (MM)');
     writeln('          3. Akuntansi (AK)');
     writeln('          4. Administrasi Perkantoran (AP)');
     writeln('          5. Pemasaran (PM)');
     write('Pilihan Jurusan (1/2/3/4/5) : ');readln(a[n].jurusan);
     writeln;
     write('Daftar Selanjutnya (y/t)? ');readln(lagi);
     writeln;
end
until (lagi<>'y');
end;

procedure cetak(var a:larik_baru);
var jur:string;
    pres,jumlah,e,b,c,d:real;
   
begin
clrscr;
writeln('                     Data Pendaftar Siswa Baru SMKN 1 Bantul                   ');
writeln('                             Tahun Ajaran 2013/2014                            ');
writeln('_______________________________________________________________________________');
writeln('| No |   Nama    |    Asal Sekolah   | Jurusan |  NEM  |Prestasi| Total Nilai |');
writeln('|----|-----------|-------------------|---------|-------|--------|-------------|');
for i:=1 to n do
begin
e:=0.25;
b:=0.50;
c:=1.00;
d:=0;
with a[i] do
begin
     if (a[i].jurusan= 1) then jur:='TKJ' else
     if (a[i].jurusan= 2) then jur:='MM' else
     if (a[i].jurusan= 3) then jur:='AK' else
     if (a[i].jurusan= 4) then jur:='AP' else
                               jur:='PM';
     if (a[i].prestasi=1) then begin pres:=0.25;jumlah:=a[i].nem+e;end else
     if (a[i].prestasi=2) then begin pres:=0.50;jumlah:=a[i].nem+b;end else
     if (a[i].prestasi=3) then begin pres:=1.00;jumlah:=a[i].nem+c;end else
                               begin pres:=0.00;jumlah:=a[i].nem+d;end;
writeln('|',i:3,' |',nama:10,' |  ',asal:15,'  |   ',jur:3,'   | ',nem:2:2,' |  ',pres:2:2,'  |    ',jumlah:2:2,'    |');
end;
end;
writeln('|____|___________|___________________|_________|_______|________|_____________|');
end;


procedure cari(var a:larik_baru);
var search,jur:string;
    pres,e,b,c,d,jumlah:real;
    tempat:byte;
begin
clrscr;
acak:=0;
write('Siapa yang Anda cari? ');readln(search);
for i:=1 to n do
begin
if (a[i].nama=search) then
   begin
   tempat:=i;
   inc(acak);
   writeln(acak,' ',search,' ada di nomor pendaftaran ',tempat,' dengan data sebagai berikut.');
     writeln('Nama                        : ',a[tempat].nama);
     writeln('Tempat Tanggal Lahir        : ',a[tempat].ttl);
     writeln('Alamat                      : ',a[tempat].alamat);
     writeln('Asal Sekolah                : ',a[tempat].asal);
     writeln('Alamat Sekolah              : ',a[tempat].alasal);
     writeln('Jumlah NEM                  : ',a[tempat].nem:2:2);
     writeln;
   end;
end;
if (acak=0) then writeln('nama ',search,' tidak ada di dalam daftar');
end;

procedure fil_jur(var a:larik_baru);
var lagi:char;
    acak:byte;
    jur:string;
    pres,e,b,c,d,jumlah:real;
begin
repeat
begin
e:=0.25;
b:=0.50;
c:=1.00;
d:=0;
with a[i] do
begin
     if (a[i].jurusan= 1) then jur:='TKJ' else
     if (a[i].jurusan= 2) then jur:='MM' else
     if (a[i].jurusan= 3) then jur:='AK' else
     if (a[i].jurusan= 4) then jur:='AP' else
                               jur:='PM';
     if (a[i].prestasi=1) then begin pres:=0.25;jumlah:=a[i].nem+e;end else
     if (a[i].prestasi=2) then begin pres:=0.50;jumlah:=a[i].nem+b;end else
     if (a[i].prestasi=3) then begin pres:=1.00;jumlah:=a[i].nem+c;end else
                               begin pres:=0.00;jumlah:=a[i].nem+d;end;
end;
begin
for i:=1 to n do
clrscr;
writeln('Daftar Jurusan');
writeln('1. Teknik Komputer Jaringan');
writeln('2. Multimedia');
writeln('3. Akuntansi');
writeln('4. Administrasi Perkantoran');
writeln('5. Pemasaran');
writeln;
write('Masukkan Pilihan Anda 1/2/3/4/5 : ');readln(pil);
case pil of
1: begin
   acak:=0;
   writeln;
   writeln('Data pendaftar pada jurusan Teknik Komputer Jaringan');
   writeln('____________________________________________________________');
   writeln('| No | No Daftar |     Nama     |    Asal Sekolah  |  NEM  |');
   writeln('|----|-----------|--------------|------------------|-------|');
   for i:=1 to n do
   begin
   if (a[i].jurusan=1) then
   begin
   inc(acak);
   writeln('|',acak:3,' |',i:10,' |',a[i].nama:12,'  | ',a[i].asal:15,'  | ',a[i].nem:2:2,' |');
   end;
   end;
   writeln('|____|___________|______________|__________________|_______|');
   end;
2: begin
   acak:=0;
   writeln;
   writeln('Data pendaftar pada jurusan Multimedia');
   writeln('____________________________________________________________');
   writeln('| No | No Daftar |     Nama     |    Asal Sekolah  |  NEM  |');
   writeln('|----|-----------|--------------|------------------|-------|');
   for i:=1 to n do
   begin
   if (a[i].jurusan=2) then
   begin
   inc(acak);
   writeln('|',acak:3,' |',i:10,' |',a[i].nama:12,'  | ',a[i].asal:15,'  | ',a[i].nem:2:2,' |');
   end;
   end;
   writeln('|____|___________|______________|__________________|_______|');
   end;
3: begin
   acak:=0;
   writeln;
   writeln('Data pendaftar pada jurusan Akuntansi');
   writeln('____________________________________________________________');
   writeln('| No | No Daftar |     Nama     |    Asal Sekolah  |  NEM  |');
   writeln('|----|-----------|--------------|------------------|-------|');
   for i:=1 to n do
   begin
   if (a[i].jurusan=3) then
   begin
   inc(acak);
   writeln('|',acak:3,' |',i:10,' |',a[i].nama:12,'  | ',a[i].asal:15,'  | ',a[i].nem:2:2,' |');
   end;
   end;
   writeln('|____|___________|______________|__________________|_______|');
   end;
4: begin
   acak:=0;
   writeln;
   writeln('Data pendaftar pada jurusan Administrasi Perkantoran');
   writeln('____________________________________________________________');
   writeln('| No | No Daftar |     Nama     |    Asal Sekolah  |  NEM  |');
   writeln('|----|-----------|--------------|------------------|-------|');
   for i:=1 to n do
   begin
   if (a[i].jurusan=4) then
   begin
   inc(acak);
   writeln('|',acak:3,' |',i:10,' |',a[i].nama:12,'  | ',a[i].asal:15,'  | ',a[i].nem:2:2,' |');
   end;
   end;
   writeln('|____|___________|______________|__________________|_______|');
   end;
5: begin
   acak:=0;
   writeln;
   writeln('Data pendaftar pada jurusan Pemasaran');
   writeln('____________________________________________________________');
   writeln('| No | No Daftar |     Nama     |    Asal Sekolah  |  NEM  |');
   writeln('|----|-----------|--------------|------------------|-------|');
   for i:=1 to n do
   begin
   if (a[i].jurusan=5) then
   begin
   inc(acak);
   writeln('|',acak:3,' |',i:10,' |',a[i].nama:12,'  | ',a[i].asal:15,'  | ',a[i].nem:2:2,' |');
   end;
   end;
   writeln('|____|___________|______________|__________________|_______|');
   writeln;
   end;
   end;
write('Mau Filter lagi <y/t> ?  ');readln(lagi);
end;
end;
until (lagi<>'y');
end;


procedure sortir_nama(var a:larik_baru);
var backup:siswa;
begin
for i:=1 to n do copy[i]:=a[i];
for i:=1 to n-1 do
begin
     for j:=i+1 to n do
     begin
     if (copy[i].nama>copy[j].nama) then
     begin
          backup:=copy[i];
          copy[i]:=copy[j];
          copy[j]:=backup;
     end;
     end;
end;
writeln('Data Pendaftar sesuai nama');
writeln;
cetak(copy);
end;

procedure sortir_nem(var a:larik_baru);
var backup:siswa;
    jumlah:real;
begin
for i:=1 to n do copy[i]:=a[i];
for i:=1 to n-1 do
begin
     for j:=i+1 to n do
     begin
     if (copy[i].nem<copy[j].nem) then
     begin
          backup:=copy[i];
          copy[i]:=copy[j];
          copy[j]:=backup;
     end;
     end;
end;
writeln('Data Pendaftar sesuai jumlah NEM');
writeln;
cetak(copy);
end;

procedure edit(var a:larik_baru);
var ganti:byte;
begin
write('Data yang akan diedit: ');readln(ganti);
writeln('Mengedit data ke ',ganti);
writeln;
write('Nama                        : ');readln(a[ganti].nama);
write('Tempat Tanggal Lahir        : ');readln(a[ganti].ttl);
write('Alamat                      : ');readln(a[ganti].alamat);
write('Asal Sekolah                : ');readln(a[ganti].asal);;
write('Alamat Sekolah              : ');readln(a[ganti].alasal);
write('Jumlah NEM                  : ');readln(a[ganti].nem);
writeln;
writeln('Prestasi yang pernah diraih (0:Tidak, 1:Kabupaten, 2:Nasional, 3:Internasional)');
writeln('Hanya boleh melampirkan 1 prestasi');
write('Prestasi Anda? ');readln(a[ganti].prestasi);
writeln('Pilihan Jurusan:');
writeln('          1. Teknik Jaringan (TKJ)');
writeln('          2. Multimedia (MM)');
writeln('          3. Akuntansi (AK)');
writeln('          4. Administrasi Perkantoran (AP');
writeln('          5. Pemasaran (PM)');
write('Pilihan Jurusan (1/2/3/4/5) : ');readln(a[ganti].jurusan);
writeln;
writeln('Pendaftar ke ',ganti,' sudah di edit');
end;

procedure hapus(var a:larik_baru);
var hilang:byte;
begin
write('Data yang akan dihapus: ');readln(hilang);
for i:=hilang to n-1 do a[i]:=a[i+1];
    dec(n);
writeln('Pendaftar ke ',hilang,' sudah di hapus');
end;

begin
repeat
begin
     clrscr;
     writeln('     ..::SELAMAT DATANG DI SMKN 1 BANTUL::..');
     writeln('   Penerimaan Siswa Baru Tahun Ajaran 2013/2014');
     writeln('_____________________________________________________');
     writeln;
     writeln('1. Daftar');
     writeln('2. Tabel Pendaftar');
     writeln('3. Cari Nama Pendaftar');
     writeln('4. Daftar Perjurusan');
     writeln('5. Sortir Nama Pendaftar');
     writeln('6. Sortir Jumlah NEM');
     writeln('7. Edit Data');
     writeln('8. Hapus Data');
     writeln('9. Selesai');
     write('pilihan anda? ');readln(pil);
     clrscr;
     case pil of
     1: daftar(sisba);
     2: cetak(sisba);
     3: cari(sisba);
     4: fil_jur(sisba);
     5: sortir_nama(sisba);
     6: sortir_nem(sisba);
     7: edit(sisba);
     8: hapus(sisba);
     9: begin
        writeln;
        writeln('        ..::Terima Kasih::..        ');
        writeln('  Telah mendaftar di SMK N 1 Bantul ');
        writeln('..Silahkan tunggu info selanjutnya..');
        end;
     end;
     readln;
end; 
until (pil=9);

end.