5 fungsi array

Click here to load reader

Post on 13-May-2017

218 views

Category:

Documents

0 download

Embed Size (px)

TRANSCRIPT

  • Membuat Fungsi

    Bagian 2

  • Fungsi dengan Multiple Argument

    Fungsi yang bermultiple argument, dipisahkan dengan koma

    Contoh :

    int product(int arg1, int arg2)

    {

    return arg1 * arg2;

    }

  • Overloading Penamaan Fungsi

    C++ membolehkan programmer untuk menetapkan penamaan yang sama terhadap dua atau lebih dari suatu fungsi.

    Pada umumnya, dua fungsi dalam single program tidak dapat share nama yang sama.

  • void someFunction(void)

    {

    // ....perform some function

    }

    void someFunction(int n)

    {

    // ...perform some different function

    }

    void someFunction(double d)

    {

    // ...perform some very different function

    }

    void someFunction(int n1, int n2)

    {

    // ....do something different yet

    }

  • C++ masih mengenal fungsi someFunction(void), someFunction(int), someFunction(double), and someFunction(int, int) yang merupakan fungsi yang berbeda.

  • Berikut ini pengaplikasian penggunaan overloaded fungsi dengan penamaan yang unik :

    int intVariable1, intVariable2; // equivalent to

    // int Variable1;

    // int Variable2;

    double doubleVariable;

    // functions are distinguished by the type of

    // the argument passed

    someFunction(); // calls someFunction(void)

    someFunction(intVariable1); // calls someFunction(int)

    someFunction(doubleVariable); // calls someFunction(double)

    someFunction(intVariable1, intVariable2); // calls

    // someFunction(int, int)

    // this works for constants as well

    someFunction(1); // calls someFunction(int)

    someFunction(1.0); // calls someFunction(double)

    someFunction(1, 2); // calls someFunction(int, int)

  • Prototype Fungsi

    int someFunc(double, int);

    int main(int nNumberofArgs, char* pszArgs[])

    {

    someFunc(1, 2);

    }

    int someFunc(double arg1, int arg2)

    {

    // ...do something

    }

  • Tipe-tipe storage variable

    Variabel fungsi di storekan di tiga tempat berbeda Contoh variabel localVariable sebagai fungsi lokal fn(): int globalVariable;

    void fn()

    {

    int localVariable;

    static int staticVariable;

    }

    Variabel globalVariable dibuat ketika program mulai eksekusi Variabel staticVariable mirip suatu campuran variabel lokal dan

    variabel global.

  • Memasukkan File Include

    Pada umumnya prototip suatu fungsi diletakkan dalam file terpisah, yang kemudian file tersebut di include-kan dalam source C++.

    Pendefinisian file include math seperti berikut: // math include file:

    // provide prototypes for functions that might be useful

    // in more than one program

    // abs - return the absolute value of the argument

    double abs(double d);

    // square - return the square of the argument

    double square(double d);

  • Program menggunakan file include math seperti berikut :

    // MyProgram -

    #include math

    using namespace std;

    // my code continues here

    #include adalah directive

    #include bukanlah format C++, directive ini

    akan dieksekusi oleh interpreter sebelum

    kompiler melakukan kompilasi.

  • Environment C++ menyediakan file include seperti : cstudio dan cstream

    Selama beberapa tahun, programmer menggunakan file include dengan ekstensi .h

  • Menyimpan Kejadian kedalam Array

  • Array adalah serangkai variabel yang mengeshare nama yang sama direferensikan menggunakan index.

  • Mengapa Butuh Array ?

    Coba anda lihat : cin >> value1;

    if (value1 >= 0)

    {

    cin >> value2;

    if (value2 >= 0)

    {

    ...

    Dapat kita simpulkan, penanganan ini hanya dapat menangani beberapa bilangan.

  • Masalah tersebut dapat ditangani dengan menggunakan Array : int value;

    // declare an array capable of holding up to 128 ints

    int valueArray[128];

    // define an index used to access subsequent members of

    // of the array; dont exceed the 128 int limit

    for (int i = 0; i < 128; i++)

    {

    cin >> value;

    // exit the loop when the user enters a negative

    // number

    if (value < 0)

    {

    break;

    }

    valueArray[i] = value;

    }

  • Pada baris kedua dari code di atas, baris tersebut mendeklarasi variabel valueArray sebagai Array

    Potongan program tersebut meminta masukan dari user untuk memasukkan bilangan, kemudian program menyimpan masukan bilangan tersebut ke variabel Array valueArray.

    Dalam penggunaan Array, valueArray[i] menunjukkan i adalah elemen ke i dari valueArray[i].

  • Menggunakan Array

    Program berikut meminta masukkan nilai integer dari keyboard, hingga si usernya memasukkan bilangan negatif.

    // ArrayDemo - demonstrate the use of arrays

    // by reading a sequence of integers

    // and then displaying them in order

    #include

    #include

    #include

    using namespace std;

    // prototype declarations

    int sumArray(int integerArray[], int sizeOfloatArray);

    void displayArray(int integerArray[], int sizeOfloatArray);

  • int main(int nNumberofArgs, char* pszArgs[])

    {

    // input the loop count

    int nAccumulator = 0;

    cout

  • int numberOfValues; for(numberOfValues = 0;numberOfValues < 128;

    numberOfValues++)

    {

    // fetch another number

    int integerValue;

    cout > integerValue;

    // if its negative...

    if (integerValue < 0)

    {

    // ...then exit

    break;

    }

  • // ... otherwise store the number

    // into the storage array

    inputValues[numberOfValues] = integerValue;

    }

    // now output the values and the sum of the values

    displayArray(inputValues, numberOfValues);

    cout

  • // displayArray - display the members of an

    // array of length sizeOfloatArray

    void displayArray(int integerArray[], int sizeOfArray)

    {

    cout

  • // sumArray - return the sum of the members of an

    // integer array

    int sumArray(int integerArray[], int sizeOfArray)

    {

    int accumulator = 0;

    for (int i = 0; i < sizeOfArray; i++)

    {

    accumulator += integerArray[i];

    }

    return accumulator;

    }

  • Program ArrayDemo dimulai dengan sebuah prototipe deklarasi dari fungsi sumArray() dan displayArray().

    Jika input bilangan adalah negatif, maka loop akan keluar dengan mengeksekusi break

    Nilai Array inputValues dideklarasikan sebagai 128 long integer

    Fungsi main diakhiri dengan pemanggilan displayArray() untuk menampilkan isi array dan jumlah

  • Environment dev-c++ membantu Anda untuk lebih mudah melihat daftar fungsi yang Anda buat.

  • Fungsi displayArray() berisikan loop for yang digunakan untuk menjelajahi array

    Perhatikan index di inialisasi bilangan 0 bukan bilangan 1

  • Output Program : This program sums values entered by the user

    Terminate the loop by entering a negative number

    Enter next number: 1

    Enter next number: 2

    Enter next number: 3

    Enter next number: -1

    The value of the array is:

    0: 1

    1: 2

    2: 3

    The sum is 6

    Press any key to continue . . .

  • Menginisialisasi Array

    Variabel lokal tidak dimulai dengan nilai yang valid, dan juga bukan 0.

    Kebetulan, variabel array yang kecil bisa di inisialisasikan disaat variabel tersebut dideklarasikan :

    float floatArray[5] = {0.0, 1.0, 2.0, 3.0, 4.0};

    Code tersebut menginisialisasi floatArray[0] ke 0.0, floatArray[1] = 1.0, floatArray[2] ke 2.0 dan seterusnya.

  • Banyaknya yang diinisialisasi bergantung dengan ukuran suatu Array

    Contoh deklarasi array yang mirip dengan sebelumnya :

    float floatArray[] = {0.0, 1.0, 2.0, 3.0, 4.0};

    Anda dapat saja menginisialisasikan semua element dalam array dengan mengelist nilai tersebut. Berikut contoh, menginisialisasikan nilai 1.0 di 25 lokasi dalam floatArray.

    float floatArray[25] = {1.0};

  • Mendefinisikan dan Menggunakan Array 2 Dimensi

    C++ Mengimplementasikan suatu matrix seperti berikut :

    int intMatrix[10][5];

    Matrix ini berisikan 10 elemen yang berada pada dimensi 1, dan 5 elemen pada dimensi yang lain, jadi total elemen array adalah 10 * 5 = 50 elemen

  • Suatu matrix dapat diinisiasikan dalam cara yang sama dengan menginisialisasikan array :

    int intMatrix[2][3] = {{1, 2, 3}, {4, 5, 6}};

    Code ini menginisialisasikan 3 elemen array dalam intMatrix[0] ke [1, 2, 3} dan 3 elemen array dalam intMatrix[1] ke {4, 5, 6}

  • Menggunakan Array Karakter

    Elemen suatu array banyak tipe. Array float, double, dan long juga mungkin menjadi tipe dari suatu Array. Tetapi array karakter menjadi penekanan yang paling penting.

  • Membuat Array Karakter

    Kata-kata dan kalimat dapat diekspresikan ke dalam bentuk array karakter

    char sMyName[] = {S, t, e, p, h, e, n};

    Berikut ini contoh program yang menampilkan

    MyName // CharDisplay - output a character array to

    // standard output, the MS-DOS window

    #include

    #include

    // prototype declarations

    void displayCharArray(char stringArray[],int sizeOfloatArray);

  • int main(int nArg, char* pszArgs[])

    {