Modul 5 Praktikum Struktur Data

TUGAS PENYERAHAN LAPORAN PRAKTIKUM STRUKTUR DATA              















FAKULTAS ILMU KOMPUTER
PRODI SISTEM INFORMASI
UNIVERSITAS KUNINGAN



Disusun Oleh:
Riqi Tricahyo(20160910064)
SI 2016 B



Modul 5 Struktur





Dasar Teori :
            Struktur merupakan kumpulan elemen data yang digabungkan menjadi satu kesatuan data. Masing – masing elemen data tersebut dinamakan field atau elemen struktur. Field tersebut dapat memiliki tipe data yang sama ataupun berbeda – beda, meskipun field tersebut merupakan satu kesatuan namun bisa diakses secara individu
Struktur dan array mempunyai kesamaan dan perbedaan, kesamaannya yaitu alokasi emory untuk elemen – elemen nya sudah ditenteukan sebelum program dijalankan. Perbedaannya, array adalah struktur data yang elemen – elemennya bertipe data harus sama, dan elemen tersebut diakses melalui indeks sedangkan struktur adalah sebuah struktur data yang tipe data dari elemen – elemen nya tidak harus sama dan elemen tersebut diakses melalui identifier atau nama variabel.

PRAKTIKUM 1

Studi Kasus

Buatlah program pengisian data pribadi seseorang beserta dengan identitas yang melekat pada pribadi tersebut dengan menggunakan fungsi struktur dalam pemrograman bahasa C/C++.

Syntaknya 

#include<stdio.h>
#include<conio.h>
#include<iostream.h>
main ()
{
struct
{
char nama[50];
char
alamat[100];
float no_hp;
char ortu[50];
char pekerjaan[50];
char lulusan[50];
}mahasiswa;
clrscr ();
cout<<"=== PROGRAM INPUT DATA DIRI ==="<<endl<<endl;
printf("Masukan Nama\t\t= ");
scanf("%s",&mahasiswa.nama);
cout<<"Masukan Alamat\t\t= ";
cin>>mahasiswa.alamat;
printf("Masukan Nomor HP\t= ");
scanf("%d",&mahasiswa.no_hp);
cout<<"Masukan Nama Ibu Kandung\t= ";
cin>>mahasiswa.ortu;
printf("Masukan Pekerjaan Bapak = ");
scanf("%s",&mahasiswa.pekerjaan);
cout<<"Masukkan Pendidikan Orang tua = ";
cin>>mahasiswa.lulusan;
clrscr();
cout<<"\n\n Data Yang di Masukan Adalah :\n\n";
printf("Nama\t\t= %s\n",mahasiswa.nama);
printf("Alamat\t\t= %s\n",mahasiswa.alamat);
printf("Nomor HP\t\t= %.0f\n",mahasiswa.no_hp);
cout<<"Nama Ibu Kandung = "<<mahasiswa.ortu<<endl;
cout<<"Pekerjaan Bapak = "<<mahasiswa.pekerjaan<<endl;
cout<<"Pendidikan Terakhir = "<<mahasiswa.lulusan<<endl;
getch ();
return 0;
}
 Hasilnya 



Analisisnya

#include<stdio.h>

#include<conio.h>

#include<iostream.h>
Di program ini memakai 3 file header, ada stdio.h ada iostream.h dan juga ada conoi.h dimana mempunyai perbedaan pada fungsi maupun pembedaan kata penggunaannya. mungkin stdio dan iostream itu tidak jauh berbeda fungsinya.

 
struct

{

char nama[50];

char

alamat[100];

float no_hp;

char ortu[50];

char pekerjaan[50];

char lulusan[50];

}mahasiswa;
        
Variabel struct dalam program ini diberi nama data dan juga mempunyai objek yang dinamakan mahasiswa, yang berarti bahwa di dalam kita menggunakan variabel struct ini dapat diakses dengan cara “mahasiswa.nama variabel”.

     
cout<<"=== PROGRAM INPUT DATA DIRI ==="<<endl<<endl;

printf("Masukan Nama\t\t= ");

scanf("%s",&mahasiswa.nama);

cout<<"Masukan Alamat\t\t= ";

cin>>mahasiswa.alamat;

printf("Masukan Nomor HP\t= ");

scanf("%d",&mahasiswa.no_hp);

cout<<"Masukan Nama Ibu Kandung\t= ";

cin>>mahasiswa.ortu;

printf("Masukan Pekerjaan Bapak = ");

scanf("%s",&mahasiswa.pekerjaan);

cout<<"Masukkan Pendidikan Orang tua = ";

cin>>mahasiswa.lulusan;

clrscr();

cout<<"\n\n Data Yang di Masukan Adalah :\n\n";

printf("Nama\t\t= %s\n",mahasiswa.nama);

printf("Alamat\t\t= %s\n",mahasiswa.alamat);

printf("Nomor HP\t\t= %.0f\n",mahasiswa.no_hp);

cout<<"Nama Ibu Kandung = "<<mahasiswa.ortu<<endl;

cout<<"Pekerjaan Bapak = "<<mahasiswa.pekerjaan<<endl;

cout<<"Pendidikan Terakhir = "<<mahasiswa.lulusan<<endl;

getch ();

return 0;

}

Selanjutnya ini seperti sebelum sebelumnya dimana syntax ini hanya menginput serta memberi outoutnya saja di mana menggunakan cout dan juga cin dan juga memakai printf dan juga scanf, yang padahal dalam sebuah fungsi itu sama ajah.




PRAKTIKUM 2
Studi Kasus

Buatlah program dengan menggunakan struktur tentang biaya kuliah mahasiswa dengan ketentuan sebagai berikut:
1.D3 
SPP Tetap = Rp. 500 
SPP Variabel = Rp. 250/sks
2. S1 
SPP Tetap = Rp. 750 
SPP Variabel = Rp. 500/sks

Syntaknya

#include<conio.h>
#include<iostream.h>
struct mhs
{
char nama[20],nim[10],prodi[2];
int sks,program;
}bayar;
main()
{
int var,tetap;
cout<<"Nama Mahasiswa : ";cin>>bayar.nama;
cout<<"NIM Mahasiswa  : ";cin>>bayar.nim;
cout<<"Prodi[TI SI MI]: ";cin>>bayar.prodi;
input:
cout<<"Program [1 = D3 / 2 = S1] :“;cin>>bayar.program;
if(bayar.program < 1 || bayar.program > 2)
{
cout<<"Program Tidak Sesuai";
goto input;
}
cout<<"Jumlah SKS : ";cin>>bayar.sks;
if(bayar.program == 1)
{
tetap = 500;
var = bayar.sks * 250;
}
else
if(bayar.program == 2)
{
tetap = 750;
var = bayar.sks * 500;
}
cout<<" "<<endl;
//Out Put
cout<<"\n-----------------------------------------\n";
cout<<"\t\tOUT PUT";
cout<<"\-----------------------------------------\n";
cout<<" Nama  =  "<<bayar.nama<<endl;
cout<<" NIM                =  "<<bayar.nim<<endl;
cout<<" Prodi   =  "<<bayar.prodi<<endl;
cout<<" Program=“<<bayar.program<<endl;
cout<<" Jumlah SKS                            =Rp. "<<bayar.sks<<endl;
cout<<" Biaya SPP Tetap    =Rp. "<<tetap<<endl;
cout<<" Biaya SPP Variabel =Rp. "<<var<<endl;
getch();
return 0;
}
 Hasilnya 



Analisisnya

#include<conio.h>
#include<iostream.h>
Diprogram ini menggunakan 2 file header yaitu ada file header iostream.h dan juga ada conio.h
di mana kedua program ini mempunyai fungsi yang berbeda. seperti yang saya telah beri tahu di pertemuan yang sebelumnya.

struct mhs

{

char nama[20],nim[10],prodi[2];

int sks,program;

}bayar;
masih sama program ini menggunakan struct yang berisi beberapa variabel yang nantinya digunakan untuk membuat program ini, cara menggunakan si struct sama seperti penjelasannya yang saya telah paparkan di praktikum 1 di atas.

main()

{

int var,tetap;

cout<<"Nama Mahasiswa : ";cin>>bayar.nama;

cout<<"NIM Mahasiswa  : ";cin>>bayar.nim;

cout<<"Prodi[TI SI MI]: ";cin>>bayar.prodi;

input:

cout<<"Program [1 = D3 / 2 = S1] :“;cin>>bayar.program;

if(bayar.program < 1 || bayar.program > 2)

{

cout<<"Program Tidak Sesuai";

goto input;

}

cout<<"Jumlah SKS : ";cin>>bayar.sks;

if(bayar.program == 1)

{

tetap = 500;

var = bayar.sks * 250;

}

else

if(bayar.program == 2)

{

tetap = 750;

var = bayar.sks * 500;

}

cout<<" "<<endl;

//Out Put

cout<<"\n-----------------------------------------\n";

cout<<"\t\tOUT PUT";

cout<<"\-----------------------------------------\n";

cout<<" Nama  =  "<<bayar.nama<<endl;

cout<<" NIM                =  "<<bayar.nim<<endl;

cout<<" Prodi   =  "<<bayar.prodi<<endl;

cout<<" Program=“<<bayar.program<<endl;

cout<<" Jumlah SKS                            =Rp. "<<bayar.sks<<endl;

cout<<" Biaya SPP Tetap    =Rp. "<<tetap<<endl;

cout<<" Biaya SPP Variabel =Rp. "<<var<<endl;

getch();

return 0;

}

Didalam syntax program ini sudah tersimpan nilai yang bilamana ketika memasukan jenjang program ketika memilih “2” maka akan muncul spp tetap dan spp variabelnya. Untuk program diatas akan menggunakan structur pemilihan yang berguna untuk memilih antara S1 atau D3 karena dalam studi kasus perhitungan mahasiswa yang mengambil S1 dan D3 berbeda dalam hal biaya perkuliahan. Proses perhitungan terjadi pada struktur pemilihan. Untuk Proses dalam penggunaan struktur pemilihan pada program diatas


PRAKTIKUM 3
  
Studi Kasus
Sebuah titik pada bidang datar mempunyai kordinat x dan y. Kedua kordinat dijadikan field dari structure. Misal kedua titik adalah a yang berkordinat di x1, y1 dan b yang berkordinat di x2,y2 dengan demikian kita dapat menghitung jarak antara kedua titik tersebut dengan melalui kordinat yang tertera pada setiap titik adapun rumus mencari jarak titik kordinat √( (x1-x2)2 + (y1-y2)2)

Syntaknya 

#include<stdio.h>
#include<math.h>
#include<conio.h>
struct t_titik
{
int x,y;
};
int main()
{
struct t_titik a, b;
double jarak;
printf("Titik A\n Kordinat x : ");
scanf("%d", &a.x);
printf(" Kordinat y : ");
scanf("%d", &a.y);
puts("\n");
printf("Titik B\n Kordinat y : ");
scanf("%d", &b.x);
printf(" Kordinat y : ");
scanf("%d",&b.y);
puts("\n");
jarak =sqrt(pow((a.x-b.x),2) + pow((a.y-b.y),2));
getch();
printf("Jarak Titik A dan Titik B = %lf", jarak);
return 0;
}
 Hasilnya




Analisisnya

Untuk mencari jarak titik koordinat A dan titik koordinat B yang ditentukan menggunakan rumus yang mana terdapat dalam penggalan script program :

“jarak = sqrt(pow((a.x - b.x),2)+ pow((a.y - b.y),2));”. 

Yang berarti bahwa intruksi sqrt adalah “akar” dan pow adalah “pangkat” program diatas akan menampilkan sebuah nilai masukan secara manual terlebih dahulu setelah itu diproses dengan rumus tadi lalu menampilkan hasil akhir.
Cara kerja dari program ini yaitu ketika melakukan running program kita akan diminta memasukan titik koordinat X,Y pada titik A dan memasukan titik koordinat X,Y pada titik B yang akan diproses oleh program pada rumus yang sudah ditentukan sebelumnya.
LATIHAN 1
 
Studi Kasus

Pada suatu daerah memiliki perubahan suhu udara yang fluktuatif pengukuran dilakukan setiap satu jam dan akan mendapatkan suhu udara rata-rata di hari tersebut program dibawah ini dapat menyelesaikan kasus diatas dengan menggunakan structure namun anda harus melengkapi program tersebut agar dapat menyelesaikan kasus ini.

Syntaknya

#include<stdio.h>
#include<conio.h>
struct   
{
float suhu, jsuhu;
}temp;
int main()
{
int i,n;
printf("Masukan Jumlah Jam Pengukuran : ");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
printf("Masukan Suhu Jam Ke-%d : ",i);
scanf("%f",&temp.suhu);
getch();
temp.jsuhu = (temp.jsuhu+temp.suhu);
}
puts("\n");
printf("Rata-rata Suhu Hari ini : %f",temp.jsuhu/n);
getch();
return 0;
}

Hasilnya



Analisisnya 

#include<stdio.h>

#include<conio.h>

di program ini menggunakan 2 file header yaitu ada stdio.h dan jga conio,h. dan juga menggunakan struct untuk mempermudah penmanggilan variabelnya Cara kerja program ini ketika melakukan running program kita akan diminta memasukan jumlah jam pengukuran yang dimasukan secara dinamis berdasarkan yang diinginkan oleh programer. Selanjutnya kita akan diminta memasukan setiap nilai suhu dari jumlah nilai yang telah ditetapkan sebelumnya. Setelah itu, maka program akan menghitung rata-rata dari suhu yang telah dimasukan sebelumnya.


LATIHAN 2 

Studi Kasus 

 Buatlah program untuk mengetahui stok barang yang terjual dengan menggunakan structure dengan mengginputkan nama barang dan jumlah barang yang dijual mengahsilkan output nama barang dan jumlah barang dalam Pcs. Dibawah ini program dengan menggunakan structure untuk menyelesaikan kasus tersebut namun bila ada yang ingin mengubah listing programnya diperbolehkan dengang syarat hasil keluarannya harus sesuai dengan yang diminta. 

Syntaknya 

#include<iostream.h>
#include<conio.h>
struct stock
{      
char nama[50];
int jml;
}data;
int main()
{
struct stock;
cout<<"Program data Stock Penjualan"<<endl<<endl;
getch();
cout<<"Masukan Nama Barang   = ";
cin>>data.nama;
cout<<"Masukan Jumlah Barang = ";
cin>>data.jml;
cout<<" ";
cout<<"--------------------------------";cout<<endl;
cout<<"Hasil Input"<<data.nama<<" = "<<data.jml<<"pcs"<<endl;
getch();
return 0;
}


Hasilnya 


Analisisnya

#include<iostream.h>

#include<conio.h>

Disini juga memakai hanya dua file header yaitu menggunakkan conio.h dan juga iostream.h
Pada program latihan 2 ini adalah sebuah program yang digunakan untuk menampilkan barang yang sudah terjual (program data stok penjualan) dengan variabel struct yang berfungsi untuk mengelompokkan variabel, jika nantinya akan melakukan pemanggilan variabel maka nama struct harus dibawa, pertama yang harus dilakukan dengan memasukkan nama barang yang akan di input dan sertakan nama struct, setelah itu masukkan jumlah barang yang akan di inputkan sama seperti input nama barang kemudian sertakan nama struct. Program diatas yaitu dengan pertama memasukan terlebih dahulu barang yang sudah terjual dan jumlah yang terjual.

cout<<"Masukan nama barang = ";

cin>>stk.nama;

cout<<"Masukan jumlah barang = ";

cin>>stk.jml;
Setelah itu juga diinputkan data tersebut akan tampil hasil akhir dengan perintah :
cout<<"Hasil input "<<stk.nama<<" = "<<stk.jml<<" pcs";
Untuk melakukan output pun sama, nama structnya harus dibawa karena variabel itu merupakan bagian dari isi struct.






















Komentar

Posting Komentar

Postingan populer dari blog ini

Modul 1 Praktikum Struktur Data

Modul 3 Praktikum Struktur Data