anidia 8

Upload: anidia-wulan-sari

Post on 21-Feb-2018

220 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/24/2019 ANIDIA 8

    1/19

    LAPORAN PRAKTIKUM VIII

    POINTER

    Disusun untuk Memenuhi Matakuliah Praktikum Dasar Pemrograman C++Dibimbing oleh Bapak Wahyu Sakti Gunawan Irianto

    Oleh:

    Anidia Wulan Sari

    150533601651

    S1 PTI15 OFF A

    UNIVERSITAS NEGERI MALANGFAKULTAS TEKNIK

    URUSAN TEKNIK ELEKTRO

    PRO!I S1 PEN!I!IKAN TEKNIK INFORMATIKA

    N"#$%&$r '015

    POINTER

  • 7/24/2019 ANIDIA 8

    2/19

    A( Tu)uan

    u!uan "ari mempela!ari Mo"ul # $P"in*$r% ini& agar mahasiswa mampu :

    '( Mengetahui arti "an )ungsi pointer "alam pemrograman(

    *( Memahami penggunaan pointer "alam listing program(

    ( Mengetahui keunggulan pointer pa"a suatu program(

    ,( Membuat program se"erhana "engan menerapkan konsep pointer(

    +( P$n,$r*ian POINTER

    Pointer -.ariabel penun!uk/ a"alah suatu .ariabel yang berisi alamat memori

    "ari suatu .ariabel lain( 0lamat ini merupakan lokasi "ari obyek lain -biasanya

    .ariabel lain/ "i "alam memori( Contoh& !ika sebuah .ariabel berisi alamat "ari

    .ariabel lain& .ariabel pertama "ikatakan menun!uk ke .ariabel ke"ua(

    O-$ra*"r P"in*$ra"a "ua& yaitu :a( Operator 1 -Operator Di)eren2e/

    '( Operator 1 bersi)at unary -hanya memerlukan satu operan" sa!a/(

    *( Operator 1 menghasilkan alamat "ari operan"nya(

    b( Operator 3 -Operator 4e)eren2e/

    '( Operator 3 bersi)at unary -hanya memerlukan satu operan" sa!a/(

    *( Operator 3 menghasilkan nilai yang bera"a pa"a sebuah alamat(

    Pointer : .ariabel yang berisi alamat memori

    5ariable name a"alah nama .ariabel pointer

    3 a"alah operator memori untuk mengembalikan nilai .ariabel pa"a

    alamatnya yang "itentukan oleh operan"(

  • 7/24/2019 ANIDIA 8

    3/19

    O-$ra.i Ari*%a*i/a

    Suatu .ariabel pointer hanya "apat "ilakukan operasi aritmatika "engan nilai integer

    sa!a( Operasi yang biasa "ilakukan a"alah operasi penambahan "an pengurangan( Operasi

    penambahan "engan suatu nilai menun!ukkan lokasi "ata berikutnya -in"e6 selan!utnya/

    "alam memori( Begitu !uga operasi pengurangan(

  • 7/24/2019 ANIDIA 8

    4/19

    In-u* da*a M$lalui P"in*$r

    0n"a "apat !uga mengimputkan suatu "ata ke"alam .ariabel "engan menggunankan

    pointernya& sebagai 2ontoh tin!aulah program "ibawah ini :

    int x;

    int *ptr_x;

    ptr_x=&x; printf("Inputkan nilai x : ");

    scanf("%d",ptr_x);

    Ingat7 Menginputkan "ata "engan s2an)-/ membutuhkan alamat "ari .ariabel yang

    bersangkutan( 8arena ptr96 merupakan alamat "ari .ariabel 6& maka ptr96 "apat "igunakan

    "alam s2an)-/( a"i pernyataan:

    scanf("%d",ptr_x); Sama dengan:scanf("%d",&x);

    Dimana 16 !uga menun!ukkan alamat "ari .ariabel 6(

  • 7/24/2019 ANIDIA 8

    5/19

    K$un,,ulan %$n,,una/an P"in*$r

    '( ;ntuk men2iptakan "ata struktur yang kompleks(

    *( Memungkinkan suatu )ungsi untuk menghasilkan lebih "ari satu nilai(

    ( Memiliki kemampuan untuk mengirimkan alamat suatu )ungsi ke )ungsi yang lain(

    ,( Penanganan terha"ap array "an string akan lebih singkat "an e)isien(

  • 7/24/2019 ANIDIA 8

    6/19

  • 7/24/2019 ANIDIA 8

    7/19

    La*ian Pra/*i/u% II

    Pemrograman C++

    Na%a Pr",ra% : Memanggil ?ilai "engan Pointer+aa.a P$%r",ra%a% : C++

    2"%-il$r : MinGW De.eloper Stu"io

    Sri-* -r",ra% :#include

  • 7/24/2019 ANIDIA 8

    8/19

    P$n)$la.an Pr",ra% :

  • 7/24/2019 ANIDIA 8

    9/19

    La*ian Pra/*i/u% III

    Pemrograman C++

    Na%a Pr",ra% : Penambahan Bilangan Menggunakan Pointer

    +aa.a P$%r",ra%a% : C++

    2"%-il$r : MinGW De.eloper Stu"io

    Sri-* -r",ra% :#include

  • 7/24/2019 ANIDIA 8

    10/19

    La*iaan Pra/*i/u% V 4 MO!UL

    Pemrograman C++

    Na%a Pr",ra% : @ungsi Call by 4e)eren2e 1 Call by 5alue

    +aa.a P$%r",ra%a% : C++2"%-il$r : MinGW De.eloper Stu"io

    Sri-* -r",ra% :#include

  • 7/24/2019 ANIDIA 8

    11/19

    P$n)$la.an Pr",ra% :

    Program "iatas merupakan program yang "igunakan untuk membuat )ungsi 4tukar

    "an 5tukar( Program ini "imulai "engan men"eklarasikan aA& bA'' kemu"ian program

    men2etak nilai a "an b sebelum memanggil )ungsi yang lain -)ungsi buatan/( 8emu"ian

    pemanggilan )ungsi lain "ilakukan yaitu pemanggilan )ungsi 4tukar -1a& 1b/ maka akan

    terlihat nilai a "an b saling tertukar( Setelah itu program mengembalikan nilai a "an b ke nilai

    awalnya yaitu aA "an bA''( 8emu"ian saat memanggil )ungsi 5tukar -a& b/ terlihat nilai a

    "an b saling terbalik tetapi setelah )ungsi 5tukar selesai "i!alankan& nilai a "an b berubah ke

    nilai awalnya(

    @ungsi 4tukar ini ter"apat synta6 membalik nilai antara ke"ua nilai pa"a parameter(

    Pembalikan ke"ua nilai ini bersi)at permanen karena langsung menun!uk ke alamat memori

    .ariabelnya sehingga terlihat setelah )ungsi 4tukar ini selesai "i!alankan nilai a "an b tetap

    tertukar "ari nilai awalnya(

    @ungsi 5tukar ter"apat synta6 untuk membalik nilai antara ke"ua nilai parameter(

    Pembalikan nilai ini bersi)at sementara karena proses penukaran nilai ke"ua .ariabel ini

    hanya menukar nilainya sa!a tanpa menun!uk alamat memori sehingga setelah )ungsi 5tukar

    ini selesai "i!alankan& nilai a "an b kembali ke nilai awal(

  • 7/24/2019 ANIDIA 8

    12/19

    Tu,a. Pra/*i/u% I

    Pemrograman C++

    Na%a Pr",ra% : Pernyataan Menggunakan Pointer+aa.a P$%r",ra%a% : C++

    2"%-il$r : MinGW De.eloper Stu"io

    Sri-* -r",ra% :#include efa= iAn";cout

  • 7/24/2019 ANIDIA 8

    13/19

    P$n)$la.an Pr",ra% :

  • 7/24/2019 ANIDIA 8

    14/19

    Tu,a. Pra/*i/u% II

    Pemrograman C++

    Na%a Pr",ra% :

    +aa.a P$%r",ra%a% : C++

    2"%-il$r : MinGW De.eloper Stu"io

    Sri-* -r",ra% :#include

  • 7/24/2019 ANIDIA 8

    15/19

    Tu,a. Ru%a I

    Pemrograman C++

    Na%a Pr",ra% : Menghitung 8ata "engan Pointer+aa.a P$%r",ra%a% : C++

    2"%-il$r : MinGW De.eloper Stu"io

    Sri-* -r",ra% :#include

  • 7/24/2019 ANIDIA 8

    16/19

    Tu,a. Ru%a II

    Pemrograman C++

    Na%a Pr",ra% : Mengubah uru) Pertama Men!a"i 8apital+aa.a P$%r",ra%a% : C++

    2"%-il$r : MinGW De.eloper Stu"io

    Sri-* -r",ra% :

    Ou*-u* Pr",ra% :

  • 7/24/2019 ANIDIA 8

    17/19

    Tu,a. Ru%a III

    Pemrograman C++

    Na%a Pr",ra% : Program Penggan"a angka

    +aa.a P$%r",ra%a% : C++2"%-il$r : MinGW De.eloper Stu"io

    Sri-* -r",ra% :#include

  • 7/24/2019 ANIDIA 8

    18/19

  • 7/24/2019 ANIDIA 8

    19/19

    KESIMPULAN

    !AFTAR RUUKAN

    1. im 0sisten Dosen( *'