Penjelasan Function,Structure,dan File Stream

 FUNCTION

Function atau Fungsi adalah blok kode terorganisir dan dapat digunakan kembali yang digunakan untuk melakukan tindakan tunggal dan terkait. Fungsi memberikan modularitas yang lebih baik untuk aplikasi dan tingkat penggunaan code yang tinggi. Anda telah melihat berbagai fungsi seperti printf () dan main (). Ini disebut fungsi built-in yang disediakan oleh bahasa itu sendiri


Setiap fungsi dari beberapa bahasa pemograman berbeda cara pemanggilanya misalnya,  functions, methods, sub-routines, procedures, dll. Jika Anda menemukan setiap terminologi tersebut, maka bayangkan saja konsep yang sama, yang akan kita bahas dalam tutorial ini.

Mari kita mulai dengan sebuah program dimana kita akan mendefinisikan dua array angka dan kemudian dari masing-masing array, kita akan menemukan nomor terbesar. di bawah ini adalah langkah-langkah untuk mengetahui jumlah maksimum dari serangkaian angka yang diberikan

Dapatkan daftar nomor L1, L2, L3 .... LN
Asumsikan L1 adalah yang terbesar, Set max = L1
Ambil nomor berikutnya Li dari daftar dan lakukan hal berikut
Jika max kurang dari Li
Set max = Li
Jika Li adalah nomor terakhir dari daftar itu
Print Nilai max yang tersimpan
Lakukan Pengulanan dari point ke 3
Selanjutnya mari kita translate langkah diatas kedalah bahasa pemrograman C:
#include <stdio.h>

main() {

   int set1[5] = {10, 20, 30, 40, 50};
   int set2[5] = {101, 201, 301, 401, 501};
   int i, max;
   
   /* Process first set of numbers available in set1[] */
   max = set1[0];
   i = 1;    
   while( i < 5 ) {
  
      if( max <  set1[i] ) {
         max = set1[i];
      }
      i = i + 1;
   }
   
   printf("Max in first set = %dn", max );
    
   /* Now process second set of numbers available in set2[] */
   max = set2[0];
   i = 1;    
   while( i < 5 ) {
      if( max <  set2[i] ) {
         max = set2[i];
      }
      i = i + 1;
   }
   printf("Max in second set = %dn", max );
}
Outputnya adalah:
Max in first set = 50
Max in second set = 501
Jika Anda mengerti dengan contoh di atas, maka akan menjadi mudah untuk memahami mengapa kita memerlukan sebuah fungsi. Pada contoh di atas, hanya ada dua set angka, set1 dan set2, namun pertimbangkan situasi dimana kita mempunyai 10 atau lebih rangkaian angka yang sama untuk mengetahui jumlah maksimum dari setiap rangkaian. Dalam situasi seperti ini, kita harus mengulang, memproses 10 kali atau lebih, akhirnya program menjadi terlalu besar dengan kode berulang. Untuk menangani situasi seperti itu, kita menulis fungsi kita dimana kita mencoba menyimpan kode sumber yang akan digunakan berulang-ulang dalam program yang ingin dibuat.

Baca Juga: Tutorial Dasar-Dasar Pemrograman

Sekarang, mari kita lihat bagaimana mendefinisikan fungsi dalam bahasa pemrograman C dan kemudian di bagian selanjutnya, kami akan menjelaskan bagaimana cara menggunakannya.

Mendefinisikan Function

Bentuk umum dari definisi fungsi dalam bahasa pemrograman C adalah sebagai berikut:

return_type function_name( parameter list ) {

   body of the function
   
   return [expression];
}
fungsi dalam pemrograman C terdiri dari function header dan function body. Berikut adalah semua bagian dari sebuah fungsi:

  • Return Type −  Fungsi dapat mengembalikan nilai. Return_type adalah tipe data dari nilai fungsi yang dikembalikan. Beberapa fungsi melakukan operasi yang diinginkan tanpa mengembalikan nilai.
  • Function Name − Ini adalah nama sebenarnya dari fungsi. Nama fungsi dan daftar parameter bersama merupakan function signature.
  • Parameter List − Parameter seperti placeholder. Saat sebuah fungsi dipanggil, Anda melewatkan sebuah nilai sebagai parameter. Nilai ini disebut sebagai parameter atau argumen Daftar parameter mengacu pada tipe, urutan, dan jumlah parameter fungsi. Parameter bersifat opsional; Artinya, fungsi tidak mengandung parameter.
  • Function Body − berisi kumpulan pernyataan yang mendefinisikan fungsi yang dilakukannya.

Memanggil Function

Untuk menggunakan fungsi, Anda harus memanggil fungsi itu untuk melakukan tugas yang ditentukan.

Sekarang, mari tulis contoh di atas dengan bantuan sebuah fungsi

#include <stdio.h>

int getMax( int set[] ) {

   int i, max;
   
   max = set[0];
   i = 1;    
   while( i < 5 ) {
  
      if( max <  set[i] ) {
    
         max = set[i];
      }
      i = i + 1;
   }
    
   return max;
}

main() {

   int set1[5] = {10, 20, 30, 40, 50};
   int set2[5] = {101, 201, 301, 401, 501};
   int max;

   /* Process first set of numbers available in set1[] */
   max = getMax(set1);
   printf("Max in first set = %dn", max );
    
   /* Now process second set of numbers available in set2[] */
   max = getMax(set2);
   printf("Max in second set = %dn", max );
}

Outpunya adalah:
Max in first set = 50
Max in second set = 501


Function dalam bahasa Java

Jika Anda jelas tentang fungsi dalam pemrograman C, maka mudah untuk memahaminya di bahasa java, java menyebut function sebagai methods tapi sisa konsepnya kurang lebih sama.
Berikut ini adalah program sama seperti di atas yang ditulis di bahasa java
public class DemoJava {
    
   public static void main(String []args) {
 
      int[] set1 = {10, 20, 30, 40, 50};
      int[] set2 = {101, 201, 301, 401, 501};
      int max;

      /* Process first set of numbers available in set1[] */
      max = getMax(set1);
      System.out.format("Max in first set = %dn", max );

      /* Now process second set of numbers available in set2[] */
      max = getMax(set2);
      System.out.format("Max in second set = %dn", max );
   }
   
   public static int getMax( int set[] ) {
 
      int i, max;
   
      max = set[0];
      i = 1;    
      while( i < 5 ) {

         if( max <  set[i] ) {
            max = set[i];
         }
         i = i + 1;
      }
    
      return max;
   }
}

Outputnya adalah:
Max in first set = 50
Max in second set = 501

Function dalan bahasa Python

Jika Anda tahu konsep fungsi dalam pemrograman C dan Java, maka Python tidak jauh berbeda. Berikut basic syntax untuk mengunakan fucntion di python

def function_name( parameter list ):
   body of the function
   
   return [expression]

Berikut ini adalah program sama seperti di atas yang ditulis di bahasa python
def getMax( set ):
   max = set[0]
   i = 1   
   while( i < 5 ):
      if( max <  set[i] ):
         max = set[i]
      i = i + 1
   return max


set1 = [10, 20, 30, 40, 50]
set2 = [101, 201, 301, 401, 501]

# Process first set of numbers available in set1[]
max = getMax(set1)
print "Max in first set = ", max
    
# Now process second set of numbers available in set2[]
max = getMax(set2)
print "Max in second set = ", max
Outputnya adalah:

Max in first set =  50
Max in second set =  501

STRUCTURE 

Stucture (Struktur) adalah kemampuan elemen data yang digabungkan menjadi satu kesatuan, dengan kata lainnya structure merupakan bentuk struktur data yang dapat menyimpan variabel - variabel dalam satu nama. Masing - masing elemen data dikenal dengan sebutan field.

Field dapat memiliki tipe data yang sama ataupun berbeda - beda, perlu kalian ketahui juga bahwa variabel - variabel tersebut memiliki ikatan satu sama lainnya, walaupun field-field tersebut berada dalam satu kesatuan, namun masing - masing field tersebut tetap dapat diakses secara individual.

Field-field digabungkan menjadi satu dengan tujuan untuk kemudahan dalam operasinya. Struktur membantu mengatur data yang rumit, khususnya dalam program besar, karena struktir akan membuat sekelompok elemen data yang diperlakukan sebagai suatu unit.

Deklarasi Structure

Pendeklarasian structure selalu diawali dengan kata baku struct yang kemudian diikuti dengan nama structure serta deklarasi field-field  yang membangun structure diantara pasangan tanda kurung kurawal ( {} ) dan diakhiri dengan tanda titik koma (;) . Jika terdapat field dengan tipe data yang sama , dapat dideklarasikan bersama dengan dipisahkannya oleh tanda koma (,) sehingga tidak perlu menuliskan tipe datanya secara berulang-ulang .
Bentuk Umum Deklarasi Structure
 Struct nama_struct
{

<tipe_data>  nama_field_1;
<tipe_data>  nama_field_2;
. . . .
<tipe_data>  nama_field_n;

}; 
Contoh :
Struct Mahasiswa {

char NIM [9] ;
char Nama [25] ;
char Alamat [30] ;
float Ipk;

};
Apabila suatu struktur telah dideklarasikan, struktur ini dapat digunakan untuk mendeklarasikan suatu variabel, sedangkan untuk mendeklarasikan variabel struktur dapat kalian lakukan dengan bentuk dibawah ini
 nama_struct  nama_var_struct; 
Contoh :
Mahasiswa  Mhs;

contoh diatas merupakan pendeklarasian variabel bertipe struktur Mhs, dengan pendeklarasian diatas maka Mhs memiliki 4 anggota/field, yakni Nim, Nama, Alamat dan Umur

Pemakaian Structure

Untuk menggunakan structure dapat dilakukan dengan menuliskan nama structure yang diikuti dengan nama fieldnya yang dipisahkan dengan tanda titik (.) atau dengan tanda panah ( -> ).

Jika variabel tunggal, maka digunakan tanda titik sebagai pemisahnya, namun untuk variabel pointer maka tanda yang digunakan adalah panah sebagai pemisahnya.

Sebagai contoh, kita akan mengambil dari structure Mahasiswa diatas dan kita akan melakukan pencetakan biodata seorang mahasiswa ke dalam layar maka penulisannya dapat kalian lakukan seperti dibawah ini :
cout<< Mhs. NIM;                cout<< Mhs -> NIM;
cout<< Mhs. Nama;               cout<< Mhs -> NIM;
cout<< Mhs. Alamat;             cout<< Mhs -> NIM;
cout<< Mhs. Ipk;                cout<< Mhs -> NIM;
Perhatikan contoh program pembaca biodata yang meliputi Nim, Nama, Alamat, dan Umur kemudian cetak, dibawah ini :

Nama File : Lat_dasar */

 

#include<stdio.h>

#include<conio.h>

#include<iostream.h>

 

struct Mahasiswa

{

char Nim [9];

char Nama [25];

char Umur [40];

short Umur;

};

 

main ()

{

Mahasiswa Mhs;

cout<<"Nim       : ";

cin.getline (Mhs.Nim,9) ;

cout<<"Nama     : ";

cin.getline (Mhs.Nama, 25) ;

cout<<"Alamat    : ";

cin.getline (Mhs.Alamat, 40 ) ;

cout<<"umur   : ";

cin>> Mhs.Umur;

cout<<"\n\n\nNIM                 : "<< Mhs.Nim;

cout<<"\nNama                    : "<< Mhs.Nama;

cout<<"\nAlamat                  : "<< Mhs.Alamat;

cout<<"\nUmur                    : "<< Mhs.Umur;

getch ();

}

FILE STREAM

File di sini dapat dikatakan sebagai penyimpanan data eksternal yang bersifat permanen. Operasi-operasi terhadap file berkaitan dengan input dan juga output serta hal lain seperti mengecek keberadaan suatu file, ukuran file, dan lain-lain. Contoh program ini akan menggunakan header “fstream”.
-       ofstream untuk menulis file
-       ifstream untuk membaca file
-       fstream untuk keduanya (menulis dan membaca)

MENULIS FILE
Syntax:
/*    
       Operasi File 1 (Menulis File)
       VS12 Express
       by R.S.
*/
#include <iostream>
#include <conio.h>
#include <fstream>
using namespace std;

int main()
{
       //stream untuk menulis file
       ofstream myfile;

       //membuka file,
       //jika file tidak ditemukan maka file akan otomatis dibuat
       myfile.open("TEST.txt", ios::app);

       cout<<"OPERASI FILE 1"<<endl;
       cout<<"--------------"<<endl;

       //fail() -> untuk memeriksa suatu kesalahan pada operasi file
       if(!myfile.fail())
       {
              //menulis ke dalam file
              myfile<<"Belajar OPERASI FILE"<<endl;
              myfile.close(); //menutup file
              cout<<"Text telah ditulis ke dalam File"<<endl;
       }else{
              cout<<"File tidak ditemukan"<<endl;
       }
      
       _getche();
       return EXIT_SUCCESS;
}

Hasil
OPERASI FILE 1
--------------
Text telah ditulis ke dalam File

TEST.txt
Operasi File C++ - File TEST.txt yang Berhasil Diciptakan

Isi dari file TEST.txt
Operasi File C++ - Isi dari file TEST.txt


MEMBACA FILE
(Pada contoh ini kita akan membaca isi dari file dan menampilkannya ke layar.)
Syntax:
/*    
       Operasi File 2 (Membaca File)
       VS12 Express
       by R.S.
*/
#include <iostream>
#include <conio.h>
#include <fstream>
#include <stdlib.h>
using namespace std;

int main()
{
       //stream untuk membaca file
       ifstream myfile;
       char sv_text;

       //membuka file yang telah ada
       myfile.open("TEST.txt");

       cout<<"OPERASI FILE 2"<<endl;
       cout<<"--------------"<<endl;

       //fail() -> untuk memeriksa suatu pada kesalahan operasi file
       if(!myfile.fail())
       {
              cout<<"Isi dari File -> ";
              //ulang selama program belum mencapai akhir konten dari file
              while (!myfile.eof())
              {
                     myfile.get(sv_text);
                     cout<<sv_text;
              }
              myfile.close(); //menutup file
       }else{
              cout<<"File tidak ditemukan"<<endl;
       }
      
       _getche();
       return EXIT_SUCCESS;
}


Hasil
OPERASI FILE 2
--------------
Isi dari File -> Belajar OPERASI FILE

Keterangan :
ios::in
Membuka file untuk operasi input. (untuk operasi baca ifstream)
ios::out
Membuka file untuk operasi output. (untuk operasi baca ofstream)
ios::binary
Membuka file untuk operasi baca dan tulis dalam biner.
ios::ate
Mengatur posisi awal pointer file pada akhir file. Jika posisi pointer tidak diatur/ditetapkan, posisi awalnya adalah  di awal file.
ios::app
Untuk menambahkan data pada suatu file. Data ditambahkan di akhir file, sehingga data sebelumnya pada file yang sama tidak hilang.
Jika file yang dimaksud tidak ditemukan maka program akan membuat file baru.
ios::trunc
Jika file digunakan untuk operasi output dan file telah ada sebelumnya, content sebelumnya akan dihapus dan digantikan dengan yang baru.


bad()
Mengembalikan nilai TRUE jika operasi baca dan tulis mengalami kegagalan, yang disebabkan oleh kesalahan baca/tulis (Read/writing error).
Misalkan, kita mencoba untuk menulis ke dalam file yang tidak dibuka untuk menulis.
fail()
Mengembalikan nilai TRUE jika operasi baca dan tulis mengalami kegagalan, yang disebabkan oleh kesalahan logika (Logical error) atau kesalahan baca/tulis (Read/writing error).
eof()
Mengembalikan nilai TRUE jika file yang dibuka untuk dibaca telah mencapai akhir konten dari file.
good()
Mengembalikan nilai TRUE jika pada operasi file tidak terjadi kesalahan apapun.

Tambahan: 
ifstream secara otomatis mengeset flag ios::in. Begitu juga ofstream secara otomatis mengeset flag ios::out. Sehingga kita tidak perlu secara manual mencantumkan kedua flag tersebut. 
Namun ketika kita menggunakan fstream kita harus mencantumkan secara manual (menulisnya secara jelas/eksplisit) ios::in atau ios:out.  


----------------------------------------
OPERASI BERBASIS OBJEK
MENULIS
Suatu objek dapat ditulis ke dalam suatu file dengan menggunakan fungsi anggota write().

Bentuk penulisan:
objek.write((char *)&objek, sizeof(objek));

MEMBACA
Suatu objek  yang terdapat pada suatu file dapat dibaca dengan menggunakan fungsi anggota read().

Bentuk penulisan:
objek.read((char *)&objek, sizeof(objek));


Keterangan :
objek : objek untuk operasi file (objek dari stream)
objek : objek dari suatu kelas atau struktur

Berikut adalah contoh program yang menggunakan operasi berbasis objek untuk menulis dan membaca file :
/*
      Operasi Berbasis Objek
      Microsoft Visual Studio Express 2012
      [RS]
*/
#include <iostream>
#include <fstream>
#include <conio.h>
using namespace std;

//deklarasi struct bernama Input
struct Input
{
      float data;
}obj1, obj2; //objek dari struct Input

//deklarasi struct untuk Hasil
struct Hasil
{
      float jumlah,kurang,kali,bagi;
}result; //objek dari struct Hasil
//Catatan : Objek digunakan untuk mengakses anggota struct

//fungsi untuk melakukan input dan menyimpan ke dalam FILE
void input(Input obj1, Input obj2)
{
     
      /*- ofstream adalah stream class untuk menulis pada FILE
        - dataInput1 dan dataInput2 merupakan objek dari ofstream
        - data yang diinput disimpan dalam "Input1.txt" dan "Input2.txt"
      */
      ofstream dataInput1("Input1.txt");
      ofstream dataInput2("Input2.txt");

      cout<<"\nMasukkan bilangan pertama : "; cin>>obj1.data;
      cout<<"Masukkan bilangan kedua : "; cin>>obj2.data;

      //Menyimpan ke dalam FILE
      dataInput1.write((char *)&obj1, sizeof(obj1));
      dataInput2.write((char *)&obj2, sizeof(obj2));

      //menutup FILE
      dataInput1.close();
      dataInput2.close();
}

//fungsi untuk melakukan penghitungan
void hitung(Input obj1, Input obj2)
{
      //pendeklarasian variabel
      float bil1, bil2;
      Hasil result;

      ofstream dataHasil("Hasil.txt");

      //ifstream : stream class untuk membaca FILE(Input1.txt)
      ifstream bukaInput1("Input1.txt");
      bukaInput1.read((char *)&obj1, sizeof(obj1));

      //operasi penugasan, bil1 = nilai “data” pada obj1
      bil1 = obj1.data;

      ifstream bukaInput2("Input2.txt");
      bukaInput2.read((char *)&obj2, sizeof(obj2));

      //operasi penugasan, bil1 = nilai “data” pada obj2
      bil2 = obj2.data;

      //hasilnya disimpan dalam objek struct -> "result"
      result.jumlah = bil1 + bil2;
      result.kurang = bil1 - bil2;
      result.kali = bil1 * bil2;
      result.bagi = bil1 / bil2;

      //menulis hasil berupa objek ke dalam FILE
      dataHasil.write((char *)&result, sizeof(result));

      //menutup FILE
      bukaInput1.close();
      bukaInput2.close();
      dataHasil.close();
}

//fungsi untuk menampilkan hasil
void hasil(Hasil result)
{
      ifstream bukaHasil("Hasil.txt");
     
      /*membaca data berupa objek yang ada dalam FILE "Hasil.txt")*/
      bukaHasil.read((char *)&result, sizeof(result));
     
      //menampilkan hasil pengaksesan FILE
      cout<<"\nHASIL : "<<endl;
      cout<<"-------"<<endl;
      cout<<"Hasil penjumlahan = "<<result.jumlah<<endl;
      cout<<"Hasil pengurangan = "<<result.kurang<<endl;
      cout<<"Hasil perkalian   = "<<result.kali<<endl;
      cout<<"Hasil pembagian   = "<<result.bagi<<endl;
     
      //menutup FILE
      bukaHasil.close();
}

//fungsi main
int main()
{
      cout<<"OPERASI ARITMATIKA ANTARA DUA FILE"<<endl;
      cout<<"=================================="<<endl;
     
      //pemanggilan fungsi
      input(obj1, obj2);
      hitung(obj1, obj2);
      hasil(result);

      _getche();
      return 0;
}

Output
OPERASI ARITMATIKA ANTARA DUA FILE
==================================

Masukkan bilangan pertama : 10
Masukkan bilangan kedua : 4

HASIL :
-------
Hasil penjumlahan = 14
Hasil pengurangan = 6
Hasil perkalian   = 40
Hasil pembagian   = 2.5

CONTOH SOAL FUNCTION

Soal  1 :
1. Ada 2 parameter (x,y), hitung angka ganjil dari Ganjil (X,Y), contoh :
Ganjil(2,10)         -> hasil : 3 5 7 9
Ganjil(10,5)         -> hasil : ERROR
Buatlah Flowchart Algoritma dan Program VBScript HTML 

FLOWCHART

PROGRAM :
<html>
    <head>
        <script language="VBS">
            function ganjil(a,b)
                dim hitung
                hitung = ""
                for p=a to b
                    if p mod 2 = 1 then
                        hitung = hitung & " " & p
                    end if
                next

                ganjil = hitung
            end function
        </script>   
    </head>
    <body>
        <script language="VBS">
            x=cint(inputbox("masukkan X"))
            y=cint(inputbox("masukkan Y"))
            If x<y then
                hasil = ganjil(x,y)               
            else
                hasil = "ERROR"
            end if
           
            document.write hasil

        </script>
    </body>
</html> 




2. Ada 4 parameter (a,b,c,d), hitung pekalian dari Perkalian(a,b,c,d) = Carimax(a,b,c,d) * Carimin(a,b,c,d), contoh :
Carimax(4,5,6,7)               -> hasil : 7
Carimin(4,5,6,7)                -> hasil : 4
Perkalian(4,5,6,7)              -> hasil : 7 * 4 = 28
Buatlah Flowchart Algoritma dan Program 

FLOWCHART



FLOWCHART


PROGRAM VBScript HTML

<html>
    <head>
        <script language="VBS">
            function carimax(h,i,j,k)
                dim hitung
                dim ab
                dim abc
                dim abcd
               
                if h>i then
                    ab = h
                else
                    ab = i
                end if
               
                if ab>j then
                    abc = ab
                else
                    abc = j
                end if
               
                if abc>k then
                    abcd = abc
                else
                    abcd = k
                end if
               
                hitung = abcd
                carimax = hitung
            end function
        </script>
        <script language="VBS">
            function carimin(h,i,j,k)
                dim hitung
                dim ab
                dim abc
                dim abcd
               
                if h<i then
                    ab = h
                else
                    ab = i
                end if
               
                if ab<j then
                    abc = ab
                else
                    abc = j
                end if
               
                if abc<k then
                    abcd = abc
                else
                    abcd = k
                end if
               
                hitung = abcd
                carimin = hitung
            end function
        </script>   
        <script language="VBS">
            function perkalian(p,q,r,s)
                dim hitung
               
                hitung = carimax(p,q,r,s)*carimin(p,q,r,s)
               
                perkalian = hitung
            end function
        </script>       
    </head>
    <body>
        <script language="VBS">
            a=cint(inputbox("masukkan A"))
            b=cint(inputbox("masukkan B"))
            c=cint(inputbox("masukkan C"))
            d=cint(inputbox("masukkan D"))
           
            nilmin = carimin(a,b,c,d)
            nilmax = carimax(a,b,c,d)
            hasil = perkalian(a,b,c,d)               
           
            document.write "Nilai Min = " & nilmin & "</br>"
            document.write "Nilai Max = " & nilmax & "</br>"
            document.write "Hasil perkalian = " & hasil

        </script>
    </body>
</html>

3.  Sekumpulan statement, variabel, parameter yang dijadiakan satu untuk mengerjakan satu atau lebih operasi dan mempunyai satu nilai balik, feeback bisa bertipe data apa saja sesuai deklarasi disebut . . . .
            A.      Procedure
            B.      Function
            C.      Parameter
            D.      Fungsi rekrusif
            E.       Pointer to function

4.       Deklarasi Procedure pada Bahasa C yang tepat adalah . . . .
            A.      Procedure NamaProcedure(Parameter:TipeData);
            B.      Function NamaFunction(Parameter:TipeData);
            C.      Function NamaFunction(Parameter:TipeData):TipeDataFreeback;
            D.      Procedure NamaProcedure(Parameter:TipeData):TipeDataFreeback;
            E.       NamaProcedure(NamaParameter);

5.       Suatu variabel yang berfungsi menampung nilai yang akan dikirim ke dalam fungsi atau sebaliknya adalah . . . .
            A.      Procedure
            B.      Function
            C.      Parameter
            D.      Fungsi rekrusif
            E.       Pointer to function
6.       Parameter yang digunakan untuk menampung nilai yang akan dijadikan keluaran yang akan dikirimkan ke bagian yang memanggil fungsi tersebut adalah . . . .
            A.      Parameter Input
            B.      Parameter Output
            C.      Parameter Input/Output
            D.      Function Input
            E.       Function Output
7.       Parameter yang digunakan untuk menampung nilai yang akan dijadikan masukan yang akan dikirimkan ke bagian yang memanggil fungsi tersebut adalah . . . .
            A.      Parameter Input
            B.      Parameter Output
            C.      Parameter Input/Output
            D.      Function Input
            E.       Function Output


8. Tuliskan contoh  function  1 buah !

Contoh Function : { F(x) = 2x2 + 5x – 8 , x € R } Function F (input x : real ) << Real { mengembalikan nilai F (x) = 2x2 + 5x – 8, x € R } DEKLARASI { tidak ada } ALGORITMA Return 2*x*x + 5*x - 8

9. lengkapilah program dibawah ini :

#i#include <iostream>
using namespace std;
......................
int a=5, b=6, c=8, d=11; cout<<"a + b = "<<jumlah(a,b)<<endl; cout<<"c + d = "<<jumlah(c,d); }
jajawab :

int jumlah (int x, int y){ return x+y; }
iiint main()
11
1110. syntaks apa yang harus dilakukan untuk memamnggil fungsi:
ja
  jawab :
main()

SOAL STRUCTURE

1. bagaimana cara mendeklrasikan struct

1
2
3
4
5
struct nama_struct{
/*macam-macam deklarasi variabel
*…
*/
}nama_object;

Keterangan

nama_struct : merupakan identitas dari struct tersebut.

{ …variabel… } : merupakan sepasang block, tempat dimana semua variabel dikelompokan sebagai member dari struct tersebut. pembuatan variabel di dalam struct sama sekali tidak ada perbedaan dengan mendirikan variabel biasa.

nama_object : merupakan deklarasi yang menggunakan struct tersebut menjadi tipe data dari deklarasi tersebut. kita dapat mendirikan banyak object di tempat tersebut, masing-masing dipisahkan dengan tanda koma , . Object selalu diletakan setelah penutup block dan sebelum semicolon ; .

         2. bagaimana cara mengakses member struct 

    1
2
3
4
struct siswa{
    string nama; //member
    float nilai ; //member
}

3. tuliskan contoh struct dalam struct


struct Tinggal

{

     char Jalan[40];

     char Kota[15];

     char Pos[5];

};

 

struct Tgl_Lahir

{

     int Tanggal;

     int Bulan;

     int Tahun;

};

4. tuliskan contoh struct dalam array

struct nama_struct

{

     <tipe_data> nama_field_1;

     <tipe_data> nama_field_2;

     ...

     <tipe_data> nama_field_n;

};

5. tuliskan contoh nested struct

struct tanggal {

int hari;

int bulan;

int tahun;

};

struct karyawan {

char NIP [10];

char nama [20];

struct tanggal tgl_masuk;

float gaji;

};

6. tuliskan contoh array of struct

ypedef struct {

char npm [10];

char nama [20];

char alamat [30];

unsigned angkatan;

float ipk;

} mahasiswa ;

mahasiswa data[100];


7. jelaskan apa itu struct ?

Structure atau struct adalah kumpulan dari beberapa variabel dengan beragam tipe data yang dibungkus dalam satu varabel.


8. mengapa kita sangat membutuhkan struct :

karena struct dapat menampung data berkelompok misal nya ingin membuat biodata mahasiswa 

9. Variabel-variabel yang menjadi anggota struct disebut dengan ?

elemen struct 

10. Pengaksesan elemen struct dilakukan secara individual dengan menyebutkan nama variabel struct diikuti dengan ?

Operator titik (.)

SOAL FILE STREAM 


1. Keadaan dari sebuah file atau sebuah device yang memungkinkan rangkaian item dapat   dibaca atau ditulis adalah…… 
a. Servlet
b. Stream
c. I/O
d. Applet
2. Dibawah ini  yang bukan bagian dari Package java.io adalah……
a. Reader/Writer dan turunannya
b. InputStream/OutputStream dan turunannya
c. I/O Network (socket TCP/IP)
d. Superclass dari semua input stream
3. Kelas Reader/Writer yang bekerja pada stream teks (bahasa apapun) disebut……
a. Exception
b. Output stream
c. Input stream
d. Character stream
4. Untuk membaca/menulis file non teks dapat menggunakan……
a. Filter OutputStream dan ByteArray OutputStream
b. Object OutputStream dan Filter InputStream
c. File InputStream dan File OutputStream

d. File Reader dan File Writer 

5. Fungsi ofstream adalah ?

menulis file 

6. fungsi dari ifstream adalah ?

membaca file 

7. fungsi dari fstream adalah ?

untuk menulis file dan membaca file 

8. perintah untuk membuka file ?

ofstream nama_obyek ;

9. sebuah file yang dapat dibaca maupun ditulis  ?

file stream

10. file stream digunakan untuk ?

membuat file rangkaian dapat dibaca maupun ditulis 


1
10

Komentar