STRUKTUR DATA
Di susun Oleh :
Gilang Ramadhan
TEKNIKINFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS PAMULANG
(021)7412566
Tanggerang selatan
#include <iostream>
int main()
char data [2][3][6] = {" 1 ", " 4 ", " 1 ", " 5 ", " 2 ", " 3 "};
int i,j;
cout<<"\n";
cout<<"==========================\n";
cout<<"==========================\n";
cout<<"\n";
return 0;
}
#include<iostream>
main()
struct Mahasiswa
int Nim;
char Nama[30];
char Almt[50];
};
Mahasiswa Mhs;
#include<iostream>
main()
struct Mahasiswa
int Nim;
char Nama[30];
char Almt[50];
};
Mahasiswa Mhs;
cout<<"NIM : "<<Mhs.Nim<<endl;
cout<<"NAMA : "<<Mhs.Nama<<endl;
cout<<"ALAMAT : "<<Mhs.Almt<<endl;
return 0;
}
#include <iostream>
int main(){
int *angkax;
angkax = &angka;
return 0;
}
LAPORAN AKHIR PRATIKUM
STRUKTUR DATA
Di susun Oleh :
Gilang Ramadhan
TEKNIKINFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS PAMULANG
(021)7412566
Tanggerang selatan
TUGAS AKHIR PERTEMUAN 2
1. Buatlah program untuk menjumlahkan 2 buah matriks, masing masing mempunyai ordo yang
sama ?
#include <iostream>
int main(){
// Indeks perulangan
int i,j;
cout<<"\t==============================";
cout<<"\t==============================\n\n";
// Menampilkan matrikcontoh
cout<<"\nMenampilkan matrikcontoh\n";
for(i=0;i<3;i++){
for(j=0;j<2;j++){
cout<<matrikcontoh[i][j]<<" ";
cout<<endl;
return 0;
}
LAPORAN AWAL KE 2 MODUL PRAKTIKUM
STRUKTUR DATA
TEKNIKINFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS PAMULANG
(021)7412566
Tanggerang selatan
3. Buatlah program sederhana menggunakan fungsi ?
#include <iostream>
void LuasPersegi()
int panjang,lebar;
cout << "Masukkan panjang: "; cin >> panjang;
int main()
LuasPersegi();
return 0;
}
3. Buatlah Program sederhana menggunakan searching ?
#include<iostream>
#include<conio.h>
main() {
cout<<endl;
cout<<endl;
cout<< endl;
int Nilai[20];
int i,N,angka,bilangan;
for(i=0;i<N;i++){
for(i=0;i<N;i++)
cout<<Nilai[i]<<" ";
cout<<endl<<endl;
cin>>bilangan;
cout<<endl;
//melakukan pencarian
i=0;
do{
if(Nilai[i]==bilangan)
angka=Nilai[i];
i++;}
while(i<N);
if(angka==bilangan)
else
getch();
}
LAPORAN AKHIR KE 2 PRATIKUM
STRUKTUR DATA
Di susun Oleh :
Gilang Ramadhan
TEKNIKINFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS PAMULANG
(021)7412566
Tanggerang selatan
TUGAS AKHIR PERTEMUAN 3
#include<stdio.h>
#include<stdlib.h>
#include<iostream>
#include<conio.h>
#include<windows.h>
struct Tinggal
char Jalan[50];
char Kota[15];
char Kode_Pos[5];
};
struct Tanggal
int Tanggal;
int Bulan;
int Tahun;
};
struct Biodata
char Nip[9];
char Nama[25];
char Agama[10];
char Jabatan[10];
char Unit_kerja[15];
Tinggal Alamat;
Tanggal Lahir;
Tanggal Mulai_kerja;
};
main()
Biodata Pegawai[5];
int i;
system("CLS");
system("COLOR F0");
cout<<"\n \t\t=============================================\n";
cout<<"\t\tAlamat \t\n";
cout<<"\t\tJabatan : ";cin>>Pegawai[i].Jabatan;
cout<<"\t\t\tTanggal : ";cin>>Pegawai[i].Lahir.Tanggal;
cout<<"\t\t\tTanggal : ";cin>>Pegawai[i].Mulai_kerja.Tanggal;
cout<<"Cetak"<<endl;
cout<<endl;
cout<<endl;
cout<<"==============================================================\n";
getch();
1. Buatlah program dengan menggunakan kombinasi antara pointer dan array dua dimensi
?
#include <iostream>
#include <conio.h>
#include <windows.h>
int main()
{
system("COLOR F0");
char number[2][10] = { { 'U', 'N', 'I', 'V', 'E', 'R', 'S', 'I', 'T', 'A' },
{ 'S', ' ', 'P', 'A', 'M', 'U', 'L', 'A', 'N', 'G' } };
char *pNumbers[2];
*pNumbers = number[0];
(*pNumbers)[i] = number[0][i];
*(pNumbers+1) = number[1];
(*(pNumbers+1))[i] = number[1][i];
cout<<"\nMencetak semua elemen yang terdapat pada array dua dimensi dengan
pointer"<<endl;
cout<<"\nDaftar Huruf"<<endl;
DisplayNumbers(pNumbers, 2, 10);
return 0;
}
cout << "\nIndeks ke - [" << i << "][" << j << "]: " << (*(nbr+i))[j];
}
LAPORAN AWAL KE 3 MODUL PRAKTIKUM
STRUKTUR DATA
TEKNIKINFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS PAMULANG
(021)7412566
Tanggerang selatan
3. Buatlah program sederhana menggunakan sorting?
#include<iostream>
#include<conio.h>
int Sorting;
} main(){
cout<<endl;
cout<<endl;
cout<<" [ 4, 8, 5, 9, 6, 2, 7, 5, 9, 5 ] "<<endl<<endl;
int Dia,Saya;
int Angka[]={4,8,5,9,6,2,7,5,9,5};
for(Saya= 0;Saya<Dia;Saya++)
if(Angka[Saya]<Angka[Saya+1])
Halim(Angka,Saya,Saya+1);
cout<<" "<<Angka[Dia];
cout<<endl;
getch (); }
LAPORAN AKHIR KE 3 PRATIKUM
STRUKTUR DATA
Di susun Oleh :
Gilang Ramadhan
TEKNIKINFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS PAMULANG
(021)7412566
Tanggerang selatan
PERTEMUAN 5
1.Buatlah program dengan menggunakan kombinasi antara fungsi dan pointer!
#include <iostream>
#include <windows.h>
main()
char string[80];
system("COLOR F0");
cin.getline(string,80);
return 0;
int x=0;
for(;*s!='\0'; s++)
++x;
return x;
}
PERTEMUAN 6
1.Buatlah Program untuk melakukan pencarian terhadap data 12,15 dan 37 dari deretan data
34,8,50,74,87,90,12,25,20,30,35,45,40,22,29,72,60,55,53,12,32,33,12,41,12 ! Jika data yang
dicari terdapat lebih dari satu, tentukan banyaknya dan sebutkan benda pada posisi berapa
saja data yang dicari berada pada sederetan data !
#include <conio.h>
main()
char nama[40];
int nim;
bool ketemu;
int posisi[25];
int c,i,banyak=0;
int data[25]={34,8,50,74,87,90,12,25,20,30,35,45,40,22,29,72,60,55,53,12,32,33,12,41,12};
cout<<"\nData : ";
for(i=0;i<25;i++)
cout<<data[i]<<" ";
if (data[i]==c){
ketemu=true;
posisi[banyak]=i+1;
banyak++;
if (ketemu)
cout<<"Data : "<<c;
for(i=0;i<banyak;i++){
cout<<posisi[i]<<" ";
else
getch();
}
PERTEMUAN 7
1 . Buatlah program untuk mengurutkan sederetan data
34,12,56,78,6,43,32,20,90,50,55,75,85,95,25 !
int A[50];
int main()
int i, elemen;
cout<<endl;
for(i=1;i<=elemen;i++)
cin>>A[i];
cout<<endl;
MergeSort(1,elemen);
cout<<endl;
for(i=1;i<=elemen;i++)
{
return 0;
//prosedure Mergesort
int mid;
if(low<high)
mid = (low+high)/2;
MergeSort(low,mid);
MergeSort(mid+1, high);
//Prosedure Merge
int h,i,j,k,b[50];
h=low;
i=low;
j=mid+1;
while((h<=mid)&&(j<=high))
if(A[h]<A[j])
b[i]=A[h];
h++;
}else{
b[i]=A[j];
j++;
i++;
if(h>mid)
for(k=j;k<=high;k++)
b[i]=A[k];
i++;
}else{
for(k=h;k<=mid;k++)
{
b[i]=A[k];
i++;
for(k=low;k<=high;k++)
A[k]=b[k];
}
PERTEMUAN 8
1 . Buatlah program tambahan meggunakan system menu pada program yang telah
dipraktekan !
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<iostream>
char list[8][9]={"aku","suka","sama","kamu","dari","dulu","sampai","sekarang"};
int main(void)
int x,y;
printf("\t\t**Susun Kata**\n\n");
for(y=0;y<8;y++)
printf("%s ",list[y]);
for(x=0;x<8;x++)
printf("%s\n",list[x]);
return 0;
}
}
LAPORAN AWAL KE 4 PRATIKUM
STRUKTUR DATA
Di susun Oleh :
Gilang Ramadhan
TEKNIKINFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS PAMULANG
(021)7412566
Tanggerang selatan
LAPORAN AKHIR KE 4 PRATIKUM
STRUKTUR DATA
Di susun Oleh :
Gilang Ramadhan
TEKNIKINFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS PAMULANG
(021)7412566
Tanggerang selatan
TUGAS AKHIR PERTEMUAN 9
#include<stdlib.h>
#include<string.h>
#include<iostream>
char list[8][9]={"aku","suka","sama","kamu","dari","dulu","sampai","sekarang"};
int main(void)
int x,y;
printf("\t\t**Susun Kata**\n\n");
for(y=0;y<8;y++)
printf("%s ",list[y]);
for(x=0;x<8;x++)
printf("%s\n",list[x]);
return 0;
#include<iostream>
#include<cstdlib>
struct node
{
char isi;
simpul next;
};
//prototype functions
int main()
{
char huruf, huruf2;
simpul l = NULL; //pastikan bahwa l kosong
int menu;
cout << "OPERASI PADA SINGLE LINKED LIST" << endl << endl;
do
{
cout << "Menu : " << endl;
cout << "1. sisip depan" << endl;
cout << "2. sisip belakang" << endl;
cout << "3. sisip tengah1" << endl;
cout << "4. sisip tengah2" << endl;
cout << "5. hapus depan" << endl;
cout << "6. hapus belakang" << endl;
cout << "7. hapus tengah" << endl;
cout << "8. cetak" << endl;
cout << "9. keluar" << endl;
cout << "Pilih menu : ";
cin >> menu;
cout << endl;
switch(menu)
{
case 1 :
cout << "## Masukan huruf : ";
cin >> huruf;
sisipDepan(l, huruf);
cout << endl;
break;
case 2 :
cout << "## Masukan huruf : ";
cin >> huruf;
sisipBelakang(l, huruf);
cout << endl;
break;
case 3 :
cout << "## Masukan huruf : ";
cin >> huruf; cout << endl;
cout << "## Disisip setelah huruf : ";
cin >> huruf2; cout << endl;
sisipTengah1(l, huruf, huruf2);
break;
case 4 :
cout << "## Masukan huruf : ";
cin >> huruf; cout << endl;
cout << "## Disisip sebelum huruf : ";
cin >> huruf2; cout << endl;
sisipTengah2(l, huruf, huruf2);
break;
case 5 :
hapusDepan(l);
cout << "## Simpul depan dihapus" << endl << endl;
break;
case 6 :
hapusBelakang(l);
cout << "## Simpul belakang dihapus" << endl << endl;
break;
case 7 :
cout << "## Masukan huruf tengah yang akan dihapus : ";
cin >> huruf;
hapusTengah(l, huruf);
cout << endl;
break;
case 8 :
cetak(l);
cout << endl << endl;
break;
case 9 :
cout << "## Keluar program..." << endl;
break;
default :
cout << "## kode salah, coba lagi" << endl << endl;
break;
}
}
while(menu != 9);
return 0;
}
}
//fungsi sisip simpul sebelum simpul tertentu
void sisipTengah2 (simpul &l, char elemen1, char elemen2)
{
simpul bantu, baru;
baru = (simpul) malloc(sizeof(simpul));
baru -> isi = elemen1;
baru -> next = NULL;
if(l == NULL)
cout << "list kosong.........." << endl;
else
{
bantu = l;
while(bantu -> isi != elemen2) bantu = bantu -> next;
baru -> next = bantu -> next;
bantu -> next = baru;
}
}
Di susun Oleh :
Gilang Ramadhan
TEKNIKINFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS PAMULANG
(021)7412566
Tanggerang selatan
PERTEMUAN XI
TUGAS AKHIR
buatlah program untuk mengkonveksi bilangan desimal menjadi bilangan biner dengan
menggunakan stack !
#include<iostream>
#include<stdio.h>
#include<conio.h>
typedef struct{
stack;
s->count = 0;}
if(full(s))
else{
s->item[s->count]=x; ++(s->count); }}
if(empty(s))
else {
--(s->count);
return (s->item[s->count]); }}
main() {
cout<<endl;
cout<<endl;
stack tumpukan;
cout<<endl<<endl;
initializestack(&tumpukan);
scanf("%d", &input);
for(z=1,n=input;n>0;n=n/2, z++) {
MAXSTACK=z; }
m=0;
for(n=input;n>0;n=n/2) {
l=n%2;
push(l,&tumpukan);
++m; }
cout<<endl;
for(i=MAXSTACK;i>0;i--) {
printf("%d", pop(&tumpukan)); }
getch();
return 0; }
PERTEMUAN XII
TUGAS AKHIR
Buatlah program untuk membalik suatu kalimat (karakter depan menjadi karakter belakang dan
karakter belakang menjadi karakter depan)dengan menggunakan stack !
#include<iostream>
#include<string.h>
int main(){
char kalimat[100];
int x = strlen(kalimat);
for(int i=x-1;i>=0;i--){
cout<<kalimat[i];
}
PERTEMUAN XIII
TUGAS AKHIR
Buatlah tambahan program menggunakan system menu pada program yang telah dipraktekan !
#include<iostream>
#include<conio.h>
#include<stdlib.h>
struct node
char isi;
simpul next;
};
//Nim : 181011402611
//Kelas : 04TPLE026
//prototype function
//function main
main()
{
char huruf, ulang, yt;
int i, pilih;
cout<<"Nim : 181011402611\n";
cout<<"Kelas : 04TPLE026/316\n";
cout<<"===================================="<<endl;
atas:
cout<<"\nPILIHAN MENU\n";
cout<<"------------------------------------\n";
cout<<"--------------------------------------\n";
if (pilih==1){
//sisip belakang
cout<<"\nPenyisipan simpul\n\n";
{
cout<<"Masukan huruf : ";cin>>huruf;
Sisip_Belakang(L , huruf );
Cetak(L);
if(pilih==2){
Hapus_Depan(L);
Cetak(L);
Hapus_Depan(L);
Cetak(L);
Hapus_Depan(L);
Cetak(L);
cout<<"\nPenyisipan simpul\n\n";
Sisip_Belakang(L , huruf );
Cetak(L);
}
if(pilih==3){
Hapus_Depan(L);
Cetak(L);
Hapus_Depan(L);
Cetak(L);
if(pilih==4){
Cetak(L);
goto atas;
cout<<"\n";
getch();
{
simpul bantu,baru;
baru=(simpul)malloc (sizeof(simpul));
baru->isi=elemen;
baru->next=NULL;
if(L==NULL)
L=baru;
else
bantu= L;
while(bantu->next != NULL)
bantu = bantu->next;
bantu->next=baru;
void Cetak(simpul L)
simpul bantu;
if(L==NULL)
else
bantu=L;
cout<<bantu->isi<<"->";
bantu=bantu->next;
cout<<bantu->isi;
simpul Hapus;
if(L==NULL)
else
Hapus=L;
L=L->next;
Hapus->next=NULL;
free(Hapus);
}
LAPORAN AWAL KE 5 PRATIKUM
STRUKTUR DATA
Di susun Oleh :
Gilang Ramadhan
TEKNIKINFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS PAMULANG
(021)7412566
Tanggerang selatan
PERTEMUAN XIII
TUGAS AWAL