Selasa, 18 Desember 2018

Algorithm and Programming

Rekursi,Cloud,Sort dan Searching


Vincent Sanjaya  __  2201739286 // CB01-CL // LH01-LEC



Ada 3 Jenis model service cloud yaitu


- IaaS
Infrastruktur sebagai layanan (IaaS) adalah penawaran komputasi awan di mana vendor menyediakan akses pengguna ke sumber daya komputasi seperti server, penyimpanan, dan jaringan. Organisasi menggunakan platform dan aplikasi mereka sendiri dalam infrastruktur penyedia layanan.

Fitur utama

Alih-alih membeli perangkat keras langsung, pengguna membayar IaaS sesuai permintaan.

Infrastruktur dapat ditingkatkan tergantung pada kebutuhan pemrosesan dan penyimpanan.

Menghemat biaya pembelian dan pemeliharaan perangkat keras mereka sendiri.

Karena data ada di awan, tidak akan ada satu pun titik kegagalan.

Memungkinkan virtualisasi tugas administratif, membebaskan waktu untuk pekerjaan lain.

- PaaS
Platform as a service (PaaS) adalah penawaran komputasi awan yang menyediakan lingkungan cloud bagi pengguna di mana mereka dapat mengembangkan, mengelola, dan mengirim aplikasi. Selain penyimpanan dan sumber daya komputasi lainnya, pengguna dapat menggunakan seperangkat alat prebuilt untuk mengembangkan, menyesuaikan, dan menguji aplikasi mereka sendiri.

Fitur utama

PaaS menyediakan platform dengan alat untuk menguji, mengembangkan, dan meng-host aplikasi di lingkungan yang sama.

Memungkinkan organisasi untuk fokus pada pengembangan tanpa harus khawatir tentang infrastruktur yang mendasarinya.

Penyedia mengelola keamanan, sistem operasi, perangkat lunak server, dan cadangan.

Memfasilitasi kerja kolaboratif bahkan jika tim bekerja dari jarak jauh.

- SaaS
Perangkat lunak sebagai layanan (SaaS) adalah penawaran komputasi awan yang memberikan pengguna akses ke perangkat lunak berbasis cloud vendor. Pengguna tidak menginstal aplikasi di perangkat lokal mereka. Sebaliknya, aplikasi berada di jaringan cloud jarak jauh yang diakses melalui web atau API. Melalui aplikasi ini, pengguna dapat menyimpan dan menganalisis data dan berkolaborasi dalam proyek.

Fitur utama

Vendor SaaS menyediakan pengguna dengan perangkat lunak dan aplikasi melalui model berlangganan.

Pengguna tidak perlu mengelola, menginstal atau meng-upgrade perangkat lunak; Penyedia SaaS mengelola ini.

Data aman di awan; kegagalan peralatan tidak mengakibatkan hilangnya data.

Penggunaan sumber daya dapat diskalakan tergantung pada kebutuhan layanan.

Aplikasi dapat diakses dari hampir semua perangkat yang terhubung ke internet, dari mana saja di dunia. 





Rekursi dan Modular Programming

Program dibagi menjadi modulModul dalam bahasa pemrograman C diimplementasikan menggunakan fungsi. Fungsi dibentuk melalui pengelompokan beberapa pernyataan untuk melakukan pekerjaan tertentu. Modul diperlukan ketika blok pernyataan tertentu sering digunakan oleh kode berbeda lain dalam suatu program Juga disebut Sub-Program. 

Keuntungan menggunakan Modul:

  1. Desain top-down dengan sub tujuan, program besar dibagi menjadi modul yang lebih kecil
  2. Dapat dilakukan oleh lebih dari satu pengembang / programmer
  3. Lebih mudah untuk melakukan debug, karena alur logis mudah diikuti dan lebih mudah untuk menandai kesalahan titik
  4. Modifikasi dapat dilakukan tanpa mempengaruhi keseluruhan kode
  5. Lebih mudah untuk didokumentasikan

Fungsi Rekursif



Fungsi Rekursif memiliki dua komponen:
Casing dasar:
mengembalikan nilai (konstan) tanpa memanggil panggilan rekursif berikutnya.
Langkah pengurangan:
urutan nilai input yang menyatu dengan case dasar.

Contoh: (Fungsi faktorial)
Casing dasar: n = 0
Langkah pengurangan: f (n) = n * f (n-1)


Sorting and Searching

Penyortiran perlu mempercepat operasi pencarian dalam daftar.

Jenis penyortiran:
Naik
Turun

Algoritme penyortiran:
1. Penyortiran internal
     Semua data yang akan diurutkan dimuat ke RAM
2. Penyortiran eksternal
     Menyortir proses menggunakan penyimpanan sekunder



Simple:
  Bubble sort
Selection sort
Insertion sort

Intermediate:
  Quick Sort
Merge Sort



Pencarian adalah tindakan untuk mengambil informasi berdasarkan kunci tertentu dari beberapa informasi yang disimpan
Kunci digunakan untuk melakukan pencarian rekaman yang diinginkan dari satu set daftar data
Kunci harus unik, artinya tidak boleh ada kunci yang sama dalam data
Contoh:
Data siswa terdiri dari nama, nim, jenis kelamin, alamat, tempat dan tanggal lahir
nim digunakan sebagai kunci dari data, karena itu unik.


Beberapa jenis algoritma pencarian:
Linear Search
Binary Search
Interpolation Search




Rabu, 24 Oktober 2018

Tugas Algoritma Pemograman BINUS2 -Vincent Sanjaya - 2201739286


Algorithm and Programming

Pertemuan 17 Oktober 2018
Array And Pointer


Vincent Sanjaya  __  2201739286 // CB01-CL // LH01-LEC

Blog ini dibuat dengan sumber materi dari:
Ø  PPT Session 12 




Pointer adalah variable yang digunakan untuk menyimpan memory address.
Syntax :
        <type>  *ptr_name;
2 operator yang sering digunakan yaitu : * (content dari) dan & (alamat dari)



Konsep pointer :










Pointer to Pointer

Pointer to pointer adalah variable yang menyimpan address dari pointer lain.
Syntax    :
    <type> **ptr_ptr
Example :
        

Selasa, 16 Oktober 2018

Tugas Algoritma Pemograman BINUS -Vincent Sanjaya - 2201739286




Algorithm and Programming

Pertemuan 10 Oktober 2018
Program Control: Repetition

Vincent Sanjaya  __  2201739286 // CB01-CL // LH01-LEC

Blog ini dibuat dengan sumber materi dari:
Ø  PPT Session 9 - 10 Oct 2018 - Program Control: Repetition



Repetition(Pengulangan) adalah satu atau beberapa instruksi yang diulang dalam jangka waktu tertentu.Jumlah pengulangannya dapat didefinisikan oleh program atau diprogramkan nanti pada saat berjalannya program.
Repetition/looping memiliki 3 tipe yaitu :
  • For
  • While
  • do-while

FOR :

For memiliki syntax sebagai berikut :


for(exp1;exp2;exp3)statement;
    atau:
for(exp1;exp2;exp3){
     statements;
}

dengan :
exp1 : inisialisasi
exp2 : kondisi
exp3:  increment dan decrement


exp1 dan exp3 dapat terdiri dari beberapa ekspresi yang dipisahkan oleh koma

contoh : 
       
      void reverse (char ss[])
      {
           int c,i,j;
           for(i = 0,j = strlen(ss)  - 1; i < j; i++,j--){
                     c = ss[i];
                     ss[i] = ss[j];
                     ss[j] = c;
            }
        }


Hal hal yang perlu kita ketahui :
    • Infinite loop :loop tanpa kondisi stop.untuk menghentikan loop ini gunakan break.
    • Nested loop :loop didalam loop.repetisi akan dilakukan dari dalam loop

While:

while memiliki syntax sebagai berikut:

        while(exp)   {

         statements;
        
         }

exp adalah boolean expression yang akan menghasilkan true(bukan 0) atau false ( sama dengan 0).statement akan di eksekusi ketika boolean expression menghasilkan true. pengecheckan terhadap kondisi (exp) dilakukan sebelum melakukan statements
contoh:

       while(x < 10){
        printf("%d\n",x);
        x++;
        }


Do-while:

do-while memiliki syntax sebagai berikut:

       do {

       statements;

       while(exp);

exp adalah boolean expression sama seperti while.Namun do-while menjalankan statement terlebih dahulu sebelum menjalankan kondisi.
contoh :
          
        do{
             printf("%d\n",counter);
         }while(++counter <= 10);


Repetition Operation:

  • Pada while operation ,block of statement tidak akan dieksekusi jika boolean expression bernilai false.
  • Pada do-while operation,block of statement akan dieksekusi minimal sekali lalu akan berjalan seperti biasanya.
  • Repetisi dapat diakhiri dengan berbagai cara yaitu :
    • Sentinel
    • Question

Break vs Continue:

  • Break

    • menghentikan loop
    • menghentikan switch

  • Continue
    • Melakukan skip pada statement dan lanjut ke loop selanjutnya
Demikian dari post saya. Semoga blog ini berguna untuk kalian yang ingin belajar. Mohon maaf bila ada salah kata. Terima kasih telah membaca.