Jumat, 04 Mei 2018


PERTEMUAN 10  POINTER & MACRO

 

Pengertian Pointer


Merupakan sebuah variabel yang berisi alamat dari variabel lain. Suatu pointer dimaksudkan untuk menunjukan ke suatu alamat memori sehingga alamat dari suatu variabel dapat diketahui dengan mudah
Operator Pointer  
Terdapat dua macam operator pointer yang disediakan
oleh C++: 
1. Operator dereference ( & ) 
2. Operator reference ( * )
 Operator Dereference ( & )
       Operator ini biasa disebut dengan “address of” atau  operator alamat. Dengan menggunakan operator dereference(&) ini, suatu variabel akan menghasilkan alamat lokasi memori.
Operator Reference ( * )
       Operator ini biasa disebut dengan  “value pointed by”. Dengan menggunakan operator reference (*) ini, menghasilkan nilai yang berada pada suatu alamat memori
Penggunaan Pointer
         Dapat digunakan untuk mendeklarasikan variabel bertipe data string tanpa harus dideklarasikan batasan karakternya.
       Dapat digunakan dalam penggunaan FUNGSI yaitu saat pemanggilan secara nilai dan referensi

//-------------------------------// 
//Penggunaan Pointer Dereference //
//-------------------------------//
#include<stdio.h>
#include<conio.h>
#include<iostream.h> 
main( )
{ 
int ilham, amir, *raka;
ilham = 75;
amir = ilham;
raka = &ilham;
cout<<"Nilai ILHAM = "<<ilham<<endl;
cout<<"Nilai AMIR = "<<amir<<endl;
cout<<"Nilai RAKA = "<<raka<<endl;
getch(); 
}


Output Penggunaan Pointer Dereference
   

//-----------------------------// 
//Penggunaan Pointer Reference //
//-----------------------------//
#include<stdio.h>
#include<conio.h>
#include<iostream.h> 
main( )
{ 
int ilham, *raka, rafli;
ilham = 75;
raka = &ilham;
rafli = *raka;
cout<<"Nilai ILHAM = "<<ilham<<endl;
cout<<"Nilai RAKA = "<<raka<<endl;
cout<<"Nilai RAFLI = "<<rafli<<endl;
getch( ); 
}








Output Penggunaan Pointer Reference
Pada program diatas, terdapat perubahan nilai pointer band_punk , yang di tunjukkan oleh penambahan nilai pointer pada band_punk+=3, secara default, pembacaan dilakukan mulai dari pointer pertama, karena sudah terjadi penambahan dengan 3, maka pembacaan berpindah ke alamat ke.4, sehingga tercetak kata CID.
 
Macro
Preprocessor Directives
 Preprocessor directive merupakan suatu perintah yang termasuk kedalam program, tetapi bukanlah instruksi  dari program itu sendiri, tetapi untuk preprocessor
– #define
– #include
– #if #endif
– #if #else #endif
– #elif
– #undef
– #ifdef #ifndef

Penggunaan Macro

/* ----------------------------------- */
/* Program Penggunaan #define1 */
/* ------------------------------------ */
#include<stdio.h>
#include<conio.h>
#include<iostream.h>
#define PI 3.141592
#define L(n) PI*n*n 
main( )
{ 
clrscr();
cout<<"Luas Lingkaran dengan : "<<endl;
cout<<"Jari-jari = 5 adalah "<<L(5)<<endl;
cout<<"Jari-jari = 10 adalah "<<L(10)<<endl;
getche( ); 
}





/* ----------------------------------- */ 
/* Program Penggunaan #define2 */
/* ----------------------------------- */
#include<stdio.h>
#include<conio.h>
#include<iostream.h>
#define awal {
#define akhir }
#define mulai() main()
#define cetak cout
#define masuk cin
#define hapus() clrscr()
#define tahan() getch()
#define LS_KUBUS (sisi*sisi)


mulai( )
awal
int sisi, ls_kubus;
hapus( );
cetak<<"Program Penggunaan #define"<<endl;
cetak<<"Masukkan Nilai Sisi Kubus = ";
masuk>>sisi;
ls_kubus = LS_KUBUS;
cetak<<"Luas Kubus adalah : "<<ls_kubus;
tahan( ); 
akhir








Output Penggunaan #define2


/***********************
Penggunaan #if - #endif
***********************/
#include <conio.h>
#include <stdio.h>
#define N 4
main( )
{
#if N > 0
 printf("Lebih Besar dari Nol");
#endif
getch( );
}


Output Penggunaan Penggunaan #if - #endif


/****************************** 
Penggunaan #if - #else - #endif
******************************/
#define N -4
main( )
{ 
#if N > 0
printf("Lebih Besar dari Nol"); 
#else
printf("Lebih Kecil dari Nol"); 
#endif
}


Output Penggunaan #if - #else - #endif
Pembuatan File Header
File Header adalah suatu file dengan akhiran  .h
• File ini sebenarnya berisikan deklarasi fungsi dan
definisi konstanta. Selain file-file header standar yang
disediakan oleh C++, kita dapat juga membuat file header sediri, dengan cara yang sama seperti membuat file editor. Yang harus diperhatikan pada saat menyimpan file header yang telah dibuat harus digunakan akhiran .h

 

Tugas Pertemuan 10


1. Buatlah program menghitung pangkat dua serta pangkat tiga dari sebuah bilangan bulat dengan makro. Sebagai input adalah bilangan itu sendiri, sedangkan sebagai output adalah pangkat dua serta pangkat tiga dari bilangan bulat tersebut. 

2.  Buatlah program menghitung luas dan keliling lingkaran. Proses berada didalam 
file header, nama file header yang diinginkan : lingkaran.h
Tampilan Yang Diinginkan:
Masukkan Nilai Jari-jari : ... <di-input>
Luas Lingkaran : ... < hasil proses >
Keliling Lingkaran : ... < hasil proses >
3. Buatlah program menghitung nilai akhir perkuliahan pada suatu matakuliah,  dengan ketentuan sebagai berikut:
• Nilai Absensi * 10 %
• Nilai Tugas * 20 %
• Nilai U.T.S * 30 %
• Nilai U.A.S * 40 % 

Untuk proses penilaian dilakukan didalam file header dan simpan nama file header tersebut hitnilai.h.
Tampilan yang diinginkan dari soal no.3:
 
Program Hitung Nilai Akhir Mata Kuliah
Masukkan Nilai Absensi : ……<di-input>
Masukkan Nilai Tugas : ……<di-input>
Masukkan Nilai U.T.S : ……<di-input>
Masukkan Nilai U.A.S : ……<di-input> 
Nilai Murni Absensi = <data-inputan> * 10% = <hasil-proses>
Nilai Murni Tugas = <data-inputan> * 20% = <hasil-proses>
Nilai Murni U.T.S = <data-inputan> * 30% = <hasil-proses>
Nilai Murni U.A.S = <data-inputan> * 40% = <hasil-proses>
Nilai Akhir yang diperoleh sebesar : ….. <hasil-proses




 

 

 

 

 

 


Tidak ada komentar:

Posting Komentar

KEMIRINGAN DAN KERUNCINGAN DATA Kemiringan Distribusi Data Merupakan derajat atau ukuran dari ketidaksimetrisan (Asimetri) suatu dis...