Tugas – Sorting and Searching

Sorting

  • Bubble Sort is what we put inside “for” statement

 

  • Selection Sort is a kind of sort we put from the smallest index to the biggest index

 

  • Insertion Sort is a kind of sort that finds the smallest by taking the first number and compare, and put it in the first if it is smaller than the number taken.
  • Quick Sort is a recursive function, somewhat a comparison sort
  • Merge Sort, using a “division” method

Searching

  • Linear Search, is checking each element in sequence until the element wanted is found.
  • Binary Search uses the same method as merge sort, but the difference is it is for searching.
  • Interpolation Search is the same as binary, but for a mass amount of data.

Tugas – Pointers and Arrays

Sesi ini mengajarkan tentang pointer dan arrays.

 

Pointer biasanya digunakan untuk menyimpan ‘alamat’ dari sebuah variabel. Simbol menggunakan pointer adalah ‘*’.

contoh:

jika X memiliki alamat 1234 dan variabel senilai 2. Variabel ptr (untuk pointer) dengan baris :

int x;

int *ptr;

ptr = &x;

maka nilai ptr senilai 1234.

pointer to pointer adalah variabel yang menyimpan alamat sebuah variabel pointer.

Array merupakan sebuah tipe variabel yang memiliki kumpulan data. tipe data memiliki tipe data yang sama, dan data bisa dipilih secara individual, jadi tidak ada ikatan yang membuat data tersebut harus dipilih secara bersamaan.

jika program tersebut memiliki baris berisi : int A[10]; , maka hasil tersebut akan seperti 10 kotak yang berbaris, dan isinya ‘0’ dikarenakan tidak memiliki value saat mengisi. perhitungan baris tersebut tidak mulai dari 1 (bukan 1,2,3,…,10), tetapi berawal dari ‘0’ (0,1,2,3,…..,9)

cara menginput value pada array yaitu hanya menambahkan ={} dan menulis secara berurutan ({1,2,3,4 dan seterusnya})

untuk menampilkan sebuah data pada array, menggunakan:

printf(“%d”,A[posisi ke-n]);

intinya, sama seperti biasanya.

ada 2 tipe pointer, pointer variabel, yang bisa dirubah, dan pointer constant, yang tidak bisa dirubah.

array bisa dibuat secara dimensional. contoh pertama merupakan one-dimensional array. cara membuat 2-dimensional array adalah : int a[row][col];. begitu juga dengan 3 dimensional array: int a[row][col][depth];.

array dapat menginput variabel tipe integer dan character saja.

string merupakan karakter array yang berakhir dengan karakter ‘null’

contoh, cara menginput variabel char:

char name[10]: saya ian; (contoh tersebut memiliki 8 karakter (spasi termasuk 1 karakter).

perbedaan string dan character hanya dengan cara penginputan data. String menggunakan petik dua (“), sedangkan character petik satu (‘).

data string dapat dimanipulasikan. dengan menggunakan library ‘string.h’, berikut fungsi fungsinya:

  • strlen() = menghasilkan jumlah karakter pada sebuah kata dengan hasil integer
  • strcpy(s1,s2) = menduplikat s2 ke s1
  • strncpy(s1,s2,n) = menduplikat n karakter pertama dari s2 ke s1
  • strcat(s1,s2) = menambahkan string s2 di akhir s1
  • strncat(s1,s2,n) = menambahkan n karakter pertama s2 di akhir s1
  • strcmp(s1,s2) = membandingkan value s1 dan s2, jika sama menghasilkan 0.
  • dan lain lain

 

 

 

 

 

 

Tugas – Program Control : Repetition

Sesi ini membahas tentang bahasa yang digunakan untuk melakukan repetisi dalam sebuah program.

Ada 3 tipe repetisi, yaitu :

  1. For
  2. While
  3. Do-While

For adalah repetisi, disaat beberapa kondisi masih berlaku, maka masih bisa melakukan statement yang sesuai. Jika 1 diantara banyak kondisi tidak sesuai, maka tidak dilakukan statement.

while adalah repetisi disaat SATU kondisi masih berlaku, maka masih bisa melakukan statement yang sesuai. jika kondisi tidak sesuai, maka tidak dilakukan statement.

Do-While terbalik dengan While, disaat dia melakukan statement dahulu, baru mengecek apakah kondisinya sesuai. jika sesuai, program tidak akan dijalankan lagi.

ada 2 cara untuk modifikasi repetisi, dengan Break dan Continue.

Break digunakan untuk menghentikan looping. Continue digunakan untuk melewati statement yang ada pada sebuah baris.

 

Tugas – Program Control : Selection

Karena telat datang kelas (macet), jadi hanya bisa mengikuti pelajaran kurang lebih setengah dari yang dijelaskan.

Saat masuk sudah dijelaskan tentang switch case, yang memiliki arti statement yang sama seperti if-else, tapi hanya saja dipermudah dan diperpendek.

contoh, kalau if-else menggunakan statement hampir 4 baris hanya untuk 1 kondisi, tetapi switch case hanya menggunakan 1 baris untuk 1 kondisi.

penggunaan switch case adalah seperti berikut:

jika kondisi 1 terpenuhi, maka dipakai statement pada kondisi tersebut.

jika tidak, maka lanjut ke kondisi berikutnya sampai terpenuhi.

jika semua kondisi tidak terpenuhi, maka akan menghasilkan statement yang menandakan bahwa semua kondisi yang ada tidak terpenuhi.

operator “?” merupakan operator ‘singkat’ dari “if”, seperti berikut penggunaannya:

(a>b) ? a:b

jika kondisi (a>b) terpenuhi, maka hasil yang dikeluarkan adalah a. Jika tidak, maka hasil yang dikeluarkan adalah b.

goto and label merupakan operator yang langsung ke label yang ditempatkan.

ada 4 jenis error, dengan bagian masing-masing, sebagai berikut:

1. Compile Time Error, error yang jalan saat statement pada program tersebut rusak karena adanya karakter yang dibutuhkan hilang.

2. link time error, error yang jalan setelah compiling, dikarenakan ada yang hilang (kurang tau karena bagian ini tidak mendengarkan)

3. Run time error, error yang jalan saat program sudah jalan, dikarenakan overlimit dari sebuah variabel

4. Logical error, error yang merupakan perbedaan hasil dari sebuah statement. Harusnya hasilnya a keluarnya b.

Tugas – Operator, Operand, and Arithmetic

pada sesi ini di jelaskan operator yang digunakan dalam algoritma, dan cara menghitung binary dengan cara cepat (2 pangkat sekian).

 

operator yang digunakan hampir sama seperti pelajaran matematika, seperti +, -, * (kali), / (bagi). ada juga operator modulus, yaitu sisa dari sebuah pembagian (contoh : 10 % 2 = 0, 11 % 2 = 1).

operator ada juga yang menandakan sebuah kondisi, seperti sama dengan, lebih besar, lebih kecil, dan lain lain. operator seperti ini menggunakan lambang =,<, dan >.

ada 1 operator lagi yang menandakan jawaban true atau false, yaitu operator dan, atau, dan bukan. operator tersebut menggunakan lambang &, |, dan !.

Tugas – Kelas Algoritma dan Pemograman

Kata “Algoritma” berasal dari nama seseorang yaitu al-khwarizmi, lalu disaat mulai pelajaran pembicara menawarkan pembawaan materi menggunakan bahasa inggris.

Tiap operasi komputer memiliki input, process, output. Input merupakan informasi yang kita masukkan, process merupakan pengolahan informasi pada input, dan output merupakan hasil dari process. Contoh yang diberikan adalah rise and shine algorithm. Kode yang digunakan pada algoritma merupakan case sensitive, yaitu ada perbedaan jika kata yang sama menggunakan huruf besar dan huruf kecil.

Selain input, process, dan output, ada juga store, compare, ama loop. Store yaitu menyimpan, compare itu membandingkan, dan loop merupakan pengulangan (sesuai dengan kondisi yang dibutuhkan).

Algoritma dapat dibuat dengan flow chart, yang dilambangkan dengan simbol-simbol yang ada dengan arti yang diberikan.

Dari sebuah program komputer, ada struktur yang terdiri dari tiga, yaitu sequence, yaitu urutan program, selection, yaitu pemilihan, dan repetition, yaitu pengulangan.

Pada semester ini, mahasiswa diwajibkan belajar bahasa C++, yang menggunakan struktur yang ada pada algoritma. Dalam membuat program, dibutuhkan ‘keywords’ yang ada dan khusus digunakan untuk C++, seperti printf, readf, dan lainlain. Untuk penyimpanan informasi pada input, dibutuhkan sebuah variabel, yang sesuai dengan input yang ingin diisi. Contoh :

-Jika input berupa “4”, maka variabel merupakan integer.

-Jika input berupa “sapi”, maka variabel merupakan string.

Terakhir, ingatlah bahwa setiap program yang anda tulis di setiap barisnya harus ditutup dengan ‘;’.

First Post ! (Introduction and FEP)

What’s up readers! Pertama kali thankyou buat yang mau nyisihin waktu buat baca blog gue, dengan isi-isinya yang bakal mengandung hal-hal bodoh, seperti diri gue sendiri. Ya awalnya ini hanya sekedar ‘tugas kuliah’, tapi gue tergerak untuk bisa post ini paling lama 2 minggu sekali, so enjoy the posts untuk kedepannya nanti!

Ya, sebuah hal yang lucu adalah ketika gue, yang orangnya ga ‘nerd’ amat, ajaibnya masuk jurusan yang mengandung orang ‘nerd’. Jadi gue pertama kali masuk binus untuk mengikuti FEP adalah tanggal 27 Juli, tepat setelah liburan lebaran selesai. Dengan penasarannya, gue bertanya-tanya dengan kakak kakak kelas binus, yaitu temen sekolah gue dan temen gereja gue. 5 dari 5 orang mengatakan “FEP bosen men, isinya gitu gitu doing.” dengan otomatis, gue malas untuk mengikuti FEP yang berjalan 6 hari itu.

Hari pertama FEP cukup membuat gue penasaran dan malas, maka dengan tidak siap gue pergi ke sana dan menyetir. Hari sebelumnya gue tanya bokap perjalanan dari rumah ampe kampus berapa lama. Kata bokap gue sih “Kalo pagi sepi, jadi kamu berangkat jam 6 aja.” Jadi gue ikutin aja deh jam 6 jalan dari rumah. Selama perjalanan lancar lancar aja, lalu sampai lah gue di kemanggisan. Tiba-tiba macet. Dengan santai gue berfikir “ah, ga lah gabakal lama” tau taunya, kejebak macet 20 menit. Selama di mobil, gue hanya bisa tarik nafas dalam dalam, atoga mengeluarkan kebun binatang dari mulut gue yang manis ini. Karena Tuhan sungguh baik, gue sampai tepat waktu. Bayangin, sampe kampus tibatiba ada parkiran kosong SATU, bayangin, SATU. Maka itu gue parkir dengan tenang, dan langsung jalan ke kelas.

FEP ternyata ga boring-boring amat lah. Bisa ngelewatin hal hal yang unik, lucu, ‘annoying’. Gue bisa tau lingkungan binus seperti apa, bisa kenal rektor, bisa tau apa yang bakal dipelajari. Hal yang paling lucu selama FEP adalah seorang rektor berkata “Bina Nusantara terletak di tempat strategis….” Lah, ga sesuai ama yang dikasitau dong. Gue aja perjalanan bisa 1 jam lebih, uda gitu kalo pulang keluar kampus harus nunggu 30 menit baru bisa keluar. HEBAT.

Hari terakhir FEP merupakan hari yang sibuk. Ada expo, terus ending FEP yaitu yel-yel, dan hawanya disana panas. Jadi ya gue cuma bisa menikmati aja hari itu. Jadi tujuan adanya expo adalah untuk mendaftar UKM yang ada dan ingin diikuti. Ya awalnya sih cumaa mau daftar UKM basket ama BNCC. Tapi semua dapat berubah begitu saja. Awal-awalnya ngelewatin demonstrasi rappelling dari swanarapala (pecinta alam intinya). Tiba tiba ngerasa keren aja, jadi dengan bodohnya gue join itu. Lalu karena gue memang ingin mengembangkan bakat basket, makanya gue ikut UKM basket. Kemudian gue sudah menetapkan untuk tidak ikut UKM apapun lagi. Beberapa waktu kemudian, ada kakak kelas tibatiba manggil “ayo ikut bVoice! ayo ikut bVoice!” yak arena gue tidak mempunyai bakat untuk meng-entertain­ orang dengan baik, maka itu gue tidak ikut, tapi gue dipaksa secara halus, jadi yaudah deh daftar, mumpung ga bayar juga hahahaha.

Setelah FEP, gue libur lagi (yuhuu). Oleh karena itu gue menikmati libur gue dengan eifisen, sampai tanggal 7 September, yaitu mulai GO (General Orientation). Disaat itulah gue mulai belajar apa yang akan dipelajari 4 tahun kedepan (kalo lancar). Ditengah-tengah itu pun ada yang namanya HTTP, atau yang disebut dengan HIMTI Togetherness and Top Performance, yang isinya seperti acara pentas seni biasa, tapi gue Cuma bisa ampe jam 11, dikarenakan latihan basket. Hanya 2 jam gue mengikuti acara itu, tapi isinya cukup keren. Dengan adanya acara tampil nyanyi, video yang cukup menarik, dan (kata temen temen gue) goodie bag yang isinya sangat amat berharga. Jadi sebuah penyesalan gue gabisa menyusul dan mengakhiri acara bersama sama.

Setelah GO berjalan, ada yang namanya CLO (Campus Life Orientation), yaitu saat dimana semua kakak kelas sudah masuk, dan kita sudah belajar hal yang sesungguhnya. Ya sejujurnya, gue semangat, karena ini masa depan gue dan gue ingin bisa memberi yang terbaik bagi negara gue, ga cuma lulus doang lalu kerja di luar negeri dan menetap disana. Demi berkembangnya negara kita, gue berencana untuk bisa berkontribusi bagi negara gue agar kedepannya industry game bisa lebih inovatif, cerdas, baik, dan tidak merusak orang-orang yang akan bermain. Jadi ya semoga post ini bermanfaat bagi yang membaca, dan semoga bisa membuat kalian lebih tertarik untuk masuk kuliah di tempat yang diinginkan dan belajar sesuai dengan hobi kalian.

Quote yang akan gue sampein hari ini adalah “Pekerjaan yang sangat baik dan menyenangkan, adalah hobi anda.”

Signing out, this is your man, and see you 2 minggu kedepan.