MODUL 1 TIPE DATA DAN OPERATOR
LAPORAN
PRAKTIKUM MODUL I
STRUKTUR
DATA
TIPE DATA DAN OPERATOR
ANDIKA PRATAMA
20160910005
UNIVERSITAS
KUNINGAN
Dasar teori
1. Tipe Data
Tipe data adalah adalah suatu nilai yang dapat dinyatakan dalam bentuk konstanta atau variabel dan operator yang dapat dikenakan padanya. Konstanta menyataka nnilai yang tetap, sedangkan variabel menyatakan nilai yang dapat diubah-ubah selam aeksekusi berlangsung. Data berdasarkan jenisnya dapat dibagi menjadi empat kelompok, yang dinamakan sebagai tipe data dasar, yaitu : bilangan bulat (Integer), bilangan pecahan (float/real), teks, dan pointer.
2. Operator.
Operator merupakan symbol atau kata yang dapatdigunakandalam program untuk melakukan suatu operasi atau manipulasi, misalnya menjumlahkan dua buah nilai atau lebih, memberikan nilai ke suatu variabel, membandingkan dua buah nilai dan lain-lain.
2.1 Operator Aritmetika
LAPORAN
PRAKTIKUM MODUL I
STRUKTUR
DATA
TIPE DATA DAN OPERATOR
ANDIKA PRATAMA
20160910005
UNIVERSITAS
KUNINGAN
Dasar teori
Simbol
|
Fungsi
|
Contoh
|
+
|
Penjumlahan
|
X+3
|
-
|
Pengurangan
|
X-3
|
*
|
Perkalian
|
X*3
|
/
|
Pembagian
|
X/3
|
%
|
Selisih
|
X%3
|
++
|
Increment/penambahannilai
|
Variabel ++ atau ++ Variabel
|
--
|
Decrement/pengurangannilai
|
Variabel – atau -- Variabel
|
2.2 Operator Relasi
Operator ini membandingkan dua buah nilai yang sejenis dapat berupa variabel atau dua konstanta.
Simbol
|
Fungsi
|
Contoh
|
==
|
Samadengan
|
Tinggi == 165
|
!=
|
Tidaksamadengan
|
Input != 3
|
<
|
Lebihkecil
|
Nilai< 60
|
>
|
Lebihbesar
|
Nilai> 60
|
<=
|
Lebihkecilsamadengan
|
Nilai<= 60
|
>=
|
Lebihbesarsamadengan
|
Nilai>= 60
|
2.3 Operator Logika
Operator logika adalah operator yang berhubungan dengan logika matematika, seperti negasi (not), konjungsi (and) disjungsi (or).
Simbol
|
Fungsi
|
Contoh
|
!
|
Not
|
!valid
|
&&
|
And
|
(Nilai<60) && (Nilai<85)
|
||
|
Or
|
(Input<100) || (Input>100)
|
PRAKTIKUM
Praktikum 1.1
Compiler : borland c++
- script
#include<stdio.h>
#include<iostream.h>
int main()
{
float nilai,temp, hrgbarang = 154000;
int i,j_barang;
printf(" POTONGAN HARGA CAT TEMBOK 25 Kg\n");
for (i = 0;i < 33;i++)printf("=");printf("\n");
printf(" Jumlah Barang\t= ");
scanf("%d",&j_barang);
cout<<" Harga Satuan\t= "<<hrgbarang<<endl;
if(j_barang == 3){
nilai = (j_barang * hrgbarang) * 0.8;
}else
if (j_barang < 3)
nilai = j_barang * hrgbarang;
else
{if (j_barang > 3)
temp = j_barang % 3;
nilai = (j_barang-temp) * hrgbarang *0.8 +(temp * hrgbarang);
}
printf(" Total Harga\t= %.0f\n",nilai);
return 0;
}
- Hasil run
- analisis program
Program diatas membuat sebuah potongan harga jika pembelian lebih atau sama dengan 3 buah .program tersebut bisa terjadi karena adanya proses structur control pemilihian if else yang mana structur tersebut membuat sebuah pemilihan statemant yang sebelumnya sudah di definisikan.proses pemilihan :
if(j_barang == 3){
nilai = (j_barang * hrgbarang) * 0.8;
}else
if (j_barang < 3)
nilai = j_barang * hrgbarang;
else
{if (j_barang > 3)
temp = j_barang % 3;
nilai = (j_barang-temp) * hrgbarang *0.8 +(temp * hrgbarang);
}
Praktikum 1.2
Compiler : borland c++
- script
#include<stdio.h>
#include<conio.h>
int main()
{
float l_bidang,nilai,kilo = 5000,temp;
int i,pilih;
printf(" PROGRAM PERHITUNGAN JUMLAH CAT\n");
for (i = 0;i < 33;i++)printf("=");printf("\n");
printf(" 1. Kualitas Tinggi\n 2. Kualitas Sedang\n 3.Kualitas Rendah\n");
printf("Masukan Nomor Pilihan Kualitas : ");
scanf("%d",&pilih);
switch(pilih)
{
case 1:
{printf("Kualitas Tinggi\n");
printf("Luas bidang\t= ");
scanf("%f",&l_bidang);
nilai = (l_bidang / 12) * kilo;
temp =nilai / 1000;
printf("Jumlah cat yang dibutuhkan = %.1f Kg",temp);break;}
case 2:
{printf("Kualitas Sedang\n");
printf("Luas bidang\t= ");
scanf("%f",&l_bidang);
nilai = (l_bidang / 20) * kilo;
temp = nilai / 1000;
printf("Jumlah cat yang dibutuhkan = %.1f Kg",temp);break;}
case 3:
{printf("Kualitas Rendah\n");
printf("Luas bidang\t= ");
scanf("%f",&l_bidang);
nilai = (l_bidang / 66) * kilo;
temp = nilai / 1000;
printf("Jumlah cat yang dibutuhkan = %.1f Kg",temp);break;}
default : printf("Nomor Yang AndaPilih Salah");
}
getch();
return 0;
}
#include<conio.h>
int main()
{
float l_bidang,nilai,kilo = 5000,temp;
int i,pilih;
printf(" PROGRAM PERHITUNGAN JUMLAH CAT\n");
for (i = 0;i < 33;i++)printf("=");printf("\n");
printf(" 1. Kualitas Tinggi\n 2. Kualitas Sedang\n 3.Kualitas Rendah\n");
printf("Masukan Nomor Pilihan Kualitas : ");
scanf("%d",&pilih);
switch(pilih)
{
case 1:
{printf("Kualitas Tinggi\n");
printf("Luas bidang\t= ");
scanf("%f",&l_bidang);
nilai = (l_bidang / 12) * kilo;
temp =nilai / 1000;
printf("Jumlah cat yang dibutuhkan = %.1f Kg",temp);break;}
case 2:
{printf("Kualitas Sedang\n");
printf("Luas bidang\t= ");
scanf("%f",&l_bidang);
nilai = (l_bidang / 20) * kilo;
temp = nilai / 1000;
printf("Jumlah cat yang dibutuhkan = %.1f Kg",temp);break;}
case 3:
{printf("Kualitas Rendah\n");
printf("Luas bidang\t= ");
scanf("%f",&l_bidang);
nilai = (l_bidang / 66) * kilo;
temp = nilai / 1000;
printf("Jumlah cat yang dibutuhkan = %.1f Kg",temp);break;}
default : printf("Nomor Yang AndaPilih Salah");
}
getch();
return 0;
}
Program tersebut membuat sebuah perhitungan dimana cat tembok yang dibutuhkan untuk mengecat sebuah bidang rumah untuk 3 kategori kualitas. program tersebut bisa dibuat dengan menggunakan structur pemilihan switch case :
switch(pilih){
case 1:
{printf("Kualitas Tinggi\n");
printf("Luas bidang\t= ");
scanf("%f",&l_bidang);
nilai = (l_bidang / 12) * kilo;
temp =nilai / 1000;
printf("Jumlah cat yang dibutuhkan = %.1f Kg",temp);break;}
case 2:
{printf("Kualitas Sedang\n");
printf("Luas bidang\t= ");
scanf("%f",&l_bidang);
nilai = (l_bidang / 20) * kilo;
temp = nilai / 1000;
printf("Jumlah cat yang dibutuhkan = %.1f Kg",temp);break;}
case 3:
{printf("Kualitas Rendah\n");
printf("Luas bidang\t= ");
scanf("%f",&l_bidang);
nilai = (l_bidang / 66) * kilo;
temp = nilai / 1000;
printf("Jumlah cat yang dibutuhkan = %.1f Kg",temp);break;}
default : printf("Nomor Yang AndaPilih Salah");
}
switch case 1 untuk pemilihan kualitas tinggi
switch case 2 untuk pemilihan kulitas sedang
switch case 3 untuk pemilihan kualitas rendah
Praktikum 1.3
Compiler : borland c++
- script
#include<stdio.h>
#include<conio.h>
#include<iostream.h>
int main()
{
int barel = 160,i,j,p;
float olah = 0.1,m,hrgprem,jl,margin,by,proses;
long jawa = 5000000, smtra = 7500000, sulwsi = 8000000,
klmntan = 9000000,irian = 12000000,tangki = 18000,rp;
printf("PROGRAM PERHITUNGAN HARGA BBM PREMIUM\n");
for (i = 0;i < 37;i++)printf("=");printf("\n");
printf("Masukan Harga Minyak Dunia : $ " );
scanf("%f",&m);
getch();
printf("Harga Dolar dalam Rupiah : Rp");
scanf("%1d",&rp);
proses = (m * rp) / barel;
jl = proses * olah;
printf("\nTujuan Pengiriman BBM\n");
for (j = 0;j < 21;j++)printf("=");printf("\n");
printf("1. Jawa\n2. Sumatra\n3. Sulawesi\n4. Kalimantan\n5. Irianjaya");
cout<<"\nPilih : ";cin>>p;
if(p == 1)
by = jawa / tangki;
margin = by / 2;
hrgprem = proses + jl + by + margin;
if(p == 2)
by = smtra / tangki;
margin = by / 2;
hrgprem = proses + jl + by + margin;
if(p == 3)
by = sulwsi / tangki;
margin = by / 2;
hrgprem = proses + jl + by + margin;
if(p == 4)
by = klmntan / tangki;
margin = by / 2;
hrgprem = proses + jl + by + margin;
if(p == 5)
by = irian / tangki;
margin = by / 2;
hrgprem = proses + jl + margin;
cout<<"\nHarga Jual BBM Premium PERTAMINA Rp."<<hrgprem<<" Per Liter";
getch();
return 0;
}
Compiler : borland c++
Misalnya ongkos kirim kesuatu tempat ditetapkan Rp.25.000 untuk berat paket 5kg pertama, sedangkan untuk kg berikutnya dihitung Rp.2.000/kg. jadi kalau kita kirim paket beratnya 1kg maupun 5kg, ongkos kirimnya tetap dihitung Rp.25.000. Sedangkan kalau paket yang dikirimlebihdari 5kg, katakanlah 10kg, maka ongkos kirimnya jadi lebih murah, karena 5kg berikutnya hanya dihitung Rp.2.000/kg. Sehingga paket dengan berat 10kg hanya membayar Rp.35.000.
- hasil run
- analysis program
Pada program menghasilkan hasil running perhitungan harga bbm premium. proses Menggunakan instruksi pengulangan FOR.instruksi ini digunakan untuk mengulang secara pasti banyaknya perulangan yang akan dilakukan.program for diatas yang meliputi :
Script program pengulanganFOR :
for (i = 0;i <37;i++)printf("=");printf("\n");
Yang berarti iitu sebagai nilai awal adalah 0 dan i<37 sebagai pematas nilai akhir, sedangkan i++ itu adalah dimana nilai iakan di tambah terus sampai nilai i itu sampai batas akhir nilai i.
proses selanjutnya adalah menggunakan struktur pemilihan if else uang digunakan unuk memilih mana yang akan dipilih.proses if else :
if(p == 1)
by = jawa / tangki;
margin = by / 2;
hrgprem = proses + jl + by + margin;
LATIHAN
LATIHAN 1.1
Compiler : borland c++
Compiler : borland c++
Ongkir Progresif
Artinya ongkos kirim dihitung berdasarkan berat paket barang secara
flat. Makin bera tpaket, ongkos kirimnya makin besar.
Jika ongkos kirim suatu kesuatu tempat ditetapkan Rp.5000/kg,
dan kita mengirim paket sebesar 5kg, maka ongkos kirim yang harus dibayar adalah (5x5
ribu) Rp.25.000, begitu pula bila kita mengirim paket dengan berat dibawah 5kg
tetap akan dikenakan biaya minimum yaitu Rp.25.000,
sedangkan bila mengirim paket dengan berat diatas 5kg
akan dikenakan biaya kirim kelipatannya missal berat paket 6kg
maka biayanya akan dikenakan sebesar 2x biaya minimum yaitu 50.000 begitu pula
setererusnya.
- script
#include<iostream.h>
#include<conio.h>
int main()
{
long ongkir = 5000,harga1,harga2,jml,kg;
int kilo,i;
cout<<"PROGRAM ONGKOS KIRIM PROGRESIF"<<endl;
for(i=0; i<38;i++)cout<<"=";
cout<<"\nMasukan Berat Barang : "<<"kg";
cin >>kilo;
if (kilo<=5){
harga2= ongkir * kilo;
} else
if (kilo>5){
jml= kilo-5;
harga2= ongkir*kilo*2;
}
cout<<"\nbiaya Pengiriman Rp"<<harga2;
getch();
return 0;
}
- hasil run
- analisis
Program diatas adalah Program
Ongkos Kirim Barang Progresif. Program diatas menggunakan i nstruksi if-else.Dimana program if-else adalah untuk mengeksekusi masalah
yang memiliki percabangan apabila nilainya benar (true) maka nilai yang salah
(false) tidak akan dieksekusi.proses if else :
if (kilo<=5){
harga2= ongkir * kilo;
} else
if (kilo>5){
jml= kilo-5;
harga2= ongkir*kilo*2;
JIka kilo
kurang dari sama dengan 5 maka akan dihitung dengan rumus harga2=ongkir*kilo Dan apabila kilo lebih dari 5
maka akan dihitung dengan rumus harga2=ongkir*kilo*2;
LATIHAN 1.2
Compiler : borland c++
Ongkir Regresif
Misalnya ongkos kirim kesuatu tempat ditetapkan Rp.25.000 untuk berat paket 5kg pertama, sedangkan untuk kg berikutnya dihitung Rp.2.000/kg. jadi kalau kita kirim paket beratnya 1kg maupun 5kg, ongkos kirimnya tetap dihitung Rp.25.000. Sedangkan kalau paket yang dikirimlebihdari 5kg, katakanlah 10kg, maka ongkos kirimnya jadi lebih murah, karena 5kg berikutnya hanya dihitung Rp.2.000/kg. Sehingga paket dengan berat 10kg hanya membayar Rp.35.000.
- script
#include<iostream.h>
#include<conio.h>
int main()
{
long ongkir = 25000,ongkir2=2000,harga1,harga2,jml;
int kilo,i;
cout<<"PROGRAM ONGKOS KIRIM BARANG PROGRESIF\n";
for(i=0; i<37; i++) cout<<"=";
cout<<"\nMasukan Berat barang :"<<"kg";
cin>>kilo;
if(kilo<=5){
harga2=25000;
}else
if(kilo>5){
harga1= kilo-5;
harga2= ongkir+(harga1*ongkir2);
}
cout<<"\nBiaya Pengiriman Rp "<<harga2;
getch();
return 0;
}
- hasil run
- analisis
Program diatas adalah Program Ongkos Kirim Barang regresif. Program diatas menggunakan i nstruksi if-else.Dimana program if-else adalah untuk mengeksekusi masalah yang memiliki percabangan apabila nilainya benar (true) maka nilai yang salah (false) tidak akan dieksekusi.proses if else :
if(kilo<=5){
harga2=25000;
}else
if(kilo>5){
harga1= kilo-5;
harga2= ongkir+(harga1*ongkir2);
}
JIka kilo kurang dari sama dengan 5 maka akan dihitung dengan rumus harga2=ongkir*kilo Dan apabila kilo lebih dari 5 maka akan dihitung dengan rumus harga2=ongkir+(harga1*ongkir2)
sudah diperiksa
ReplyDelete