Laporan Hasil Pembelajaran PLC Semester Ganjil 2016

LAPORAN PRESENTASI SEMESTER GANJIL 2016/2017

PENGENALAN BAHASA PEMROGRAMAN

PROGRAMING LANGUAGE CONCEPT

 

Session 2 (Describing Syntax and Semantics)

  1. C
  2. Pengenalan Bahasa C
  • C adalah bahasa pemrograman yang digunakan sebagai dasar bahasa pemrograman lain, seperti C# dan C++
  • C merupakan hasil pengembangan dari bahasa BCPL oleh Martin Richards (1966), bahasa B oleh Ken Thompson (1970), dan kemudian menjadi bahasa C oleh Dennis Ritchie.
  • C termasuk bahasa pemrograman tingkat menengah.
  • C digunakan untuk merancang berbagai aplikasi dan sistem operasi seperti DOTA dan Windows.
  1. Kelebihan
  • Tersedia untuk semua sistem operasi
  • Sedikit kata kunci
  • Terstruktur sehingga mudah dipahami
  • Digunakan banyak orang
  1. Kekurangan
  • Banyaknya operator
  • Pointer (penanda alamat) yang susah dipahami
  1. Versi
  • C K&R
  • ANSI C dan ISO C
  • C99

 

  1. Cara Penggunaan

#include <stdio.h>

int main()

{

statement;

getchar ();

return 0;

}

  1. Structure Theorem
  • Sequence

Tahapan algoritma

  • Selection

Seleksi kondisi sesuai syarat yang dimasukkan

  • Repetition

Pengulangan untuk kondisi

#include <stdio.h>

int main ()

{

int total = 0;

int gradeCounter = 0;

int grade = 0;

int gradeAverage = 0;

 

while (gradeCounter < 10){

printf(“Masukkan 10 nilai murid : \n”);

scanf (“%d” , &grade);

total = total + grade;

gradeCounter++;

}

fflush (stdin);

gradeAverage = total /10;

printf(“the average is %d\n”, gradeAverage);

if (gradeAverage >= 70){

printf (“PASS!\n”);}

 

else{

printf(“FAILED!\n”);}

 

getchar();

return 0;

}

 

 

  1. Syntax-Semantic

Syntax        : aturan penulisan untuk setiap statement

Semantic    : arti dari statement

 

  1. C
  2. Syntax

Syntax adalah aturan penulisan untuk setiap statement pada bahasa C

  1. Semantic
  2. Operational Semantic (operasi matematika)
  3. Denotational Semantic (looping)
  4. Axiomatic Semantic (if, and, or)

Catatan  jika syntax sudah benar namun menurut semantic salah, kemungkinan karena virus atau memori yang digunakan sudah tidak mencukupi.

  1. General Problem in C
  2. Recognizer
  3. Generators
  4. Ambiguous

Ex. int float = 0;

float adalah keyword yang tidak bisa dijadikan variabel

nilaiAkhir = 20/100*TM + 30/100*UTS + 50/100*UAS

ambigu jika tipe data yang digunakan adalah int karena hasil dari 20/100 adalah desimal, sementara int tidak membaca hasil desimal

 

  1. Grammar
  2. Backus Naur Form (BNF)
  3. Context – Free Grammar

Session 3 (Names, Bindings, Scopes)

  1. HTML
  2. Pengenalan HTML
  • C adalah bahasa pemrograman yang digunakan untuk membuat web
  • Sudah dikembangkan sejak Perang Dingin dengan nama ARPA
  1. Name
  • String untuk mengidentifikasi program
  • Tidak case sensitive
  • Diawali dan diakhiri dengan tanda < >
  1. Binding
  • Konsep dasar – menyimpan data pada memory sebagai penyimpan data dan pusat kegiatan sebelum program diproses
  • Penulisan harus dengan 2 bahasa (HTML dan CSS)
  • Ada 3 cara – tag, class, dan id
  • Ada 3 jenis Binding – collateral, sequential, dan recursive
  1. Teknik Penggabungan HTML dan CSS

<html>

<head>

<style/css>

</head>

  1. Scope – tidak ada dalam HTML

 

  1. PHP
  2. Pengenalan PHP
  • Hypertext Preprocessor
  • Memiliki banyak keunggulan seperti, gratis, dinamis, mudah, didukung dengan banyak platform
  • PHP juga dapat menggunakan berbagai jenis database, membuat cookies, dan encrypt data
  1. Variable
  • Lokasi penyimpanan sebuah nilai dari suatu infomasi
  • Tidak boleh diawali angka (alphanumeric), tanpa spasi, dan harus unik
  • Diawali dengan tanda $
  • Contoh : $angka = 5    atau     $_kata = “Halo”
  1. Name
  • Judul dari suatu informasi
  • Panjang suatu Name tidak terbatas
  1. Type

Jenis data yang digunakan dalam PHP seperti, string, integer, float, double, array, Boolean, object, resource, NULL

  1. Value

Nilai dari suatu variable bisa selalu berubah. Nilai variable harus selalu dideklarasi.

  1. Scope
  • Global : ada di setiap bagian program, diluar fungsi
  • Local : hanya ada di program yang relevan, dideklarasikan pada fungsi
  • Static : menyimpan nilai setelah dieksekusi
  1. Lifetime

3 jenis Lifetime, yaitu Static, Automatic, Dynamic

 

Session 5 (Expression and Assignments Statements)

  1. Java
  2. Operator – Operand

5 + 3

Ket. 5, 3    = operand

+        = operator

  • Unary   : 1 operand
  • Binary   : 2 operand
  • Ternary : 3 operand
  1. Overloaded Operator (perjumlahan matriks)

Tidak diperlukan karena – tidak rapi, menghindari error, rumit

  1. Conversion
  • Narrowing – float ” int
  • Widening – int ” float
  • Char 1 int
  1. Relational & Boolean Expression

<    less than

>    greater than

≤    less than or equal with

≥    greater than or equal with

== equal with

!=   not equal

  1. Logical Expression

&& and

||     or

!=   negation

  1. Short Circuit Evaluation

Digunakan untuk menghentikan operasi matematika dengan logical expression atau bitwise operator

  1. Assignment Statement

Statement yang berisi perintah, diakhiri dengan semicolon (;)

  1. Mixed Node Assignment
  2. Cara Kerja
  3. Fetching – mengambil operand
  4. Execute – melihat operator
  5. Cara Konversi
  • Implisit – langsung diconvert
  • Explisit – melalui variable

 

Session 6 (Control Structures Statement)

  1. Java
  2. Statement = perintah
  3. Looping = perintah berulang berurutan
  4. For

For (expression1; condition; expression2)

{statements}

  1. While

While (condition)

{statements}

  1. Do-While

Do {statements}

While (condition )

  1. Selection = menyeleksi perintah sesuai kondisi
  2. Switch case

Switch (variable){

Case a:

Statements;

Break;

Default:

Statements;

Break;

}

 

  1. If-else

If (condition)

{statement;}

Else if (condition)

{statement;}

Else (condition)

{statement;}

 

  1. Boolean

==              equal

!=               not equal

<                less than

<=              less than or equal with

>                greater than

>=              greater than or equal with

  1. C++
  2. Iterative
  3. Counter-control loop

For (expression1; condition; expression2)

{statements;}

  1. Pretest logically control loop

While (condition)

{statements;}

  1. Post test logically control loop

Do {statements;}

While (condition)

  1. Selection
  2. Multiple Ways

Switch (variable){

Case a:

Statements;

Break;

Default:

Statements;

Break;

}

 

  1. Two Ways

If (Boolean expression)

{statement;}

Else if (Boolean expression)

{statement;}

Else (Boolean expression)

{statement;}

 

  1. HTML (Javascript)
  2. Selection
  3. If-else

Example :

<html>

<body>

<script type=“text/javascript”>

var book=“maths”;

if(book==“history”){

document.write(“History book”);

}

else if (book==“maths”){

document.write(“Maths Book”);

}

else { document.write(“unknown book”);}

</script>

</body>

</html>

 

  1. Switch

Example :

<html>

<body>

<script type=”text/javascript”>

var grade=’A’;

document.write(“Entering switch block<br />”);

switch (grade)

{

case ‘A’: document.write(“Good job<br />”);

break;

case ‘B’: document.write(“Pretty good<br />”);

break;

case ‘C’: document.write(“Passed<br />”);

break;

case ‘D’: document.write(“Not so good<br />”);

break;

case ‘F’: document.write(“Failed<br />”);

break;

default:  document.write(“Unknown grade<br />”)

}

document.write(“Exiting switch block”);

</script>

<p>Set the variable to different value and then try…</p>

</body>

</html>

 

  1. Iterative
  2. While

Example :

<html>

<body>

<script type=”text/javascript”>

var count = 0;

document.write(“Starting Loop “);

while (count < 10){

document.write(“Current Count : ” + count + “<br />”);

count++;

}

document.write(“Loop stopped!”);

</script>

<p>Set the variable to different value and then try…</p>

</body>

</html>

 

  1. Do – While

Example :

<html>

<body>

<script type=”text/javascript”>

var count = 0;

document.write(“Starting Loop” + “<br />”);

do{

document.write(“Current Count : ” + count + “<br />”);

count++;

}

while (count < 5);

document.write (“Loop stopped!”);

</script>

<p>Set the variable to different value and then try…</p>

</body>

</html>

 

  1. For

Example :

<html>

<body>

<script type=”text/javascript”>

var count;

document.write(“Starting Loop” + “<br />”);

for(count = 0; count < 10; count++){

document.write(“Current Count : ” + count );

document.write(“<br />”);

}

document.write(“Loop stopped!”);

</script>

<p>Set the variable to different value and then try…</p>

</body>

</html>

 

Session 8 (Abstract Data Type)

  1. C++
  2. Tipe data abstrak ” Structure (struct)
  3. Perbedaan Array dan Struct

Array         : tipe data harus sama

Struct         : tipe data bisa disesuaikan

  1. Contoh

Typedef struct{

Type name1;

Type name2;

}sepatu;

 

Int main(){

Sepatu sepatu1;

}

  1. PHP
  2. Tipe data abstrak ” Definisi static
  3. Stack : LIFO (Last In First Out)
  4. Queue : FIFO (First In First Out)

 

 

Session 10 (Concurrency)

  1. Concurrency adalah kondisi dimana dua pekerjaan dilakukan bersamaan dalam satu proses. Concurrency diselesaikan dengan Synchronization
  2. Jenis Concurrency :
  3. Physical ” CPU/hardware; ada lebih dari 2 instruksi
  4. Logical ” 1 proses 2 instruksi dijalankan sedikit demi sedikit
  5. Level Concurrency :
  6. Machine instruction ” terjadi pada bahasa mesin
  7. High level language statement ” terjadi pada bahasa pemrograman
  8. Unit/Subprogram ” terjadi pada subprogram
  9. Program ” terjadi pada program (multitask)
  10. Tasks :
  11. Heavyweight ” masing-masing mempunyai address
  12. Lightweight ” mempunyai satu address
  13. Disjoint ” tidak terjadi communication
  14. Critical Region adalah melarang 2 pekerjaan dilakukan bersamaan
  15. Jenis Critical Region :
  16. Mutual exclusion ” 1 proses menunggu/tidak interrupt
  17. Continuously progress ” 1 proses ga boleh di stop
  18. Bounded waiting ” 1 proses mencapai limit, stop proses
  19. Parallel somputing ” masing-masing di waktu yang sama
  20. Concurrency ” dikerjakan 2 pekerjaan sekaligus dalam 1 proses
  21. Synchronization :
  22. Cooperation ” jika suatu pekerjaan belum selesai, pekerjaan lainnya tidak bisa dikerjakan
  23. Competition ” hasil suatu pekerjaan tertimpa oleh pekerjan lain yang keduanya dilakukan bersamaan
  24. Task Execution States :

New >> Ready >> Running >> Blocked >> Dead

  1. Race Condition :
  2. Competition & Cooperation
  3. Controlling Task Schedule
  4. Application Influence Task Scheduling
  5. Task Start & End Execution
  6. Liveness adalah program yang diyakini selesai dengan baik
  7. Deadlock adalah program yang diyakini tidak bisa bekerja dengan baik
  8. Metode Providing Sync :
  9. Semaphore ” cooperation – competition
  10. Monitors ” program yang mengawasi program utama
  11. Message passing ” communication

FEP from my view

Okay. Here I am on my very first post. Although this is an assignment, here, I crossed my heart to write this post willingly with my honesty and a little spark of my excitement. Forgive me to use some informal words because I don’t want to hide my innocent thought.

Let’s start.

Information Technology. Not like the other major in Binus University, IT class dominated by boys, and the girls as minority. I’ve prepared myself to only meet few girls in my class. I even used to think what if I find my self the only girl in the class. What will I do? How will I approach them? But, thanks God. I really do. I find another 3 girls on my class. And, the boys  are really concerned about us four (they easily noticed if a girl disappear). And my class is the only one who don’t have any girl Buddy Coordinator. Really, one of a kind. Honestly, I don’t feel awkward surrounded by boys because this boyish side of me. One of a kind. But, this kind of class is full of fun. We laughed, discussing, sharing, together. It is a pleasure to start my college world with these fellas.

Oh, give me a moment to appreciate their hard works, their kindness, their smiles, their patience to face us, their passion to welcome my class, BBN 01. For all BBN 01’s Buddy Coordinators. Thank you.

Anyway, the first step of FEP is G.O.

Go, go, go!

General Orientation.

One week. Use white shirt and black trousers. Don’t forget to use your Binusian Flazz Card. These are our routine for GO. First day, we got Briefing session. Nothing special. Stand up and introduce your name, your high school, and why you chose Binus as your college world, your new world. We picked our Leader and Vice Leader, joined message group, got to know our BC’s names, experienced tapping system for the first time, and went home. Here, we had not done our GO routine. We would have to. On the next day.

You would know everyone who recently join Binusian community if he or she wearing white shirt and black trousers. Take a glance and you would see Binusian 2020 everywhere, in every spot on Syahdan Campus. It was like an invasion. Literally. Even I found myself amused with how much of them. I mean, it all was just BBN, the second shift of GO. How about ABN, CBN, DBN, EBN? How about Alam Sutera Campus? I realised why Binus has 5 shifts for only Kemanggisan Campus. You will not know what mess would happen if there’s only one shift. I came with light steps and earphone’s buds kept my focus and my mood. A little smile on my sweaty face. I opened K1B’s door, tapped my Binusian Flazz Card, sat on my chair, told my mom I had already arrived safely on my class, stopped my music player, then said a warm Hi to everyone beside my chair. Binusian Journey, that’s what Binus Maya told about what session we would have that day. BC told us what will we bring on our Graduation Day. Global Employability & Enterpreneur Skills. Binus University promises to make sure every Binus-graduated have these skills. And for all who have EES system applied on them, have brighter future than who don’t. On this day, we got stronger reasons to finished your major in Binus University.

The next day, we got to know how exactly living your college world in Binus. Well, Binus University has every way different from any other universities. They got all system computerized. You will get your own schedule on Binus Maya. The absence system uses Binusian Flazz Card. You can use your Binusian Flazz Card for every Flazz-available payment. Don’t ever lose or broke it. Your payment will have Autodebt payment. And another things that very useful for your college world in Binus Univeristy. Another useful session for new Binusian.

Don’t ever be a nerd. Don’t ever just come to your scheduled class then go home. It’s a prohibited routine for every students. Do join Organization to exercise your soft skills. But, where can I get more information about Binus’ Organizations? Here, ‘Bunga Rampai’. The most favorite session of GO, where you just need to sit in a soft chair, put your focus on the stage, and enjoy the presentations prepared just for you. But, don’t forget to decide where the right organization that suitable to invest your unique skills. But, honestly, to the end of this session, I could not find what the right choice is. Fortunately, I collected all the brochures I got. This session is very useful. I mean it. You must know details about where you will invest your time, and your skills. And you will get it here.

Hidden Session

Before, there was one hidden session that did not written on GO schedule. Preparing Yel-Yel and Congratulation Video for 35th Binus birthday. We spared some time together. Discussed what songs we will use, wrote words by words, processed every movement, and practiced it. Together. I feel this hidden session left the most impession. We befriend, strengthen our friendship bond, get to know each other better. Thanks to BBN 01.

How Binusian keep on the right path of Life

This path of life is so long. You must have a guide to keep you safe, and God always can be your number one. Binus University also realizes this very well. Every Friday, 11 a.m, we always have a little time to praise God with your own Community. Binus has 6 community. For Catholic, we have “Keluarga Muda Katolik Binus University”. As a family, together, we praise God and share his kindness. KMK Binus University has many ways to praise God. And this day, we introduced to KMK Binus University in fun way.

Last Day

Saturday. August 6, 2016. This was the last day of GO. We gathered at Syahdan Campus, where we would met the other classes, performed our Yel-Yel, did our Binusian 2020’s Yel-Yel. This is the moment to show how strong your class’ bond, how fun your class is, and how great your teamwork in your friendship. This was prepared so well, included my class, BBN 01. After some practices, of course, we did our best. when MC started the session, before our turn, we were whispering our yel-yel. But, no matter what, we can’t remember some lyrics. We changed the forgotten words spontaneusly with some giggling. Two times, I was speechless because we really did our best. But, that’s okay. I would not ask more.

Expo. Here, we personally get in touch with every communities in Binus University. We can sign in or just ask more information directly to the activist that organize their community. It was so crowded. I was full in sweaty and tried to get some free air. But, it was worthy. I signed myself to be a Mentee in Binus Study Learning Center, or BSLC. For module and membership for 1 semester, I paid 135000 rupiahs.

 

Organization Skill.

For now, I know nothing for my organization skill in Binus. And, I have not sign in any organization to be an activist. I have some experiences in organization. I had to be a vice president of my high school English Club and a member in my Church community. So, I’m not a newbie in Organization. I hope, in my future organization in Binus, I get my organization friendly and not self-oriented. It’s hard to join an organization with some selfish people. Personally, I can’t tolerate those people because it will be not longer a organization but a club to show off yourself only. I hope too join organization with great communication and fun atmosphere inside. And I hope I won’t be any selfish person in my future organization in Binus.

 

Academic Orientation.

First important thing to do for our college life is to adapt our self into the real (not-imaginary) college life. Here, we really have to experience how to get a big class, small class, discussion, get our assignment, and how to face exam. There are a lot of fun. Let me share those great experiences here.

Big Class.

It’s important to keep your focus here. Once you sway with comfortable chair and sleepy atmosphere, you will lose so much information. To learn about something, it’s better to understand the big concept first. Big class is where you will get just a concept.

Big Class also can hold a Talk Show. He or she as guess usually shares experiences in post-college life. Binus also regularly invites Lecturer Guest to help us explore something wider than what you can get in small class.

Small Class.

Small doesn’t mean it’s not worthy to follow. Small class is where you can explore deeply the concept that you have got from big class. In small class, we must have be active to ask more than on big class. We can discuss topic more personally with lecturer and friends beside. Small class is more intense than big class. Your participation can affect how much you understand the topic. Taking notes is a must-have skill. With notes, you can review what you learn on small class before. Notes are quite important because not every detail is written on Binus’ slides. Sometimes, lecturer points out some important point on verbal, so you must have simple documentation to remind you the topic anytime. Notes can be your guide to your exam too.

Assignments and Exams.

On 2020, Binus University gonna be a World-Class University, so every little thing inside Binus will be provided with extra hi-class technology. On collect assignments, we use Binus Maya as one of Binus’ facilities. With this kind of system, of course, we can save papers. On exam system, Binus also use online system. We just need a click to collect our answers on server. On the last day of our AO, we faced Exam to examine what we have got in all our class. Coding in C and Information Technology are the topics that have been examined this day. Personallly, I had no problems, but my fellas beside forgot to submit answers after the exam time ended. Many of them enjoyed them selves to code and forgot to take attention in time management. I hope this will not happen on me and my friends again.

HTTP –exclusive for Information Technology major-

We started this morning by watching Zootopia. With great sound system by BPPT Auditorium, we waited this event started on 9 a.m. Exactly 9 a.m., even Zootopia had not reached the end of the story. HTTP started. HIMTI Togetherness and Top Performance 2016 with Passion, Innovation, and Togetherness. A robot showed up and said Hi to all audiences and counted down,

And 3, 2, 1… Here we go.

First, all of the chairmans of HIMTI delivered their speeches. One thing caught me. As Binus University’s vision is to be World Class University on 2020, HIMTI’s vision is to be World Class Organization. Then, I thought that, wow, awesome. I am a member of World-Class-Organization-wannabe. Yeah, wannabe. Because on 2020, I must leave Binus Graduated. Too bad.

After 3,5 hours, we had lunch. May I shared my opinion on our lunch? To be honest, it was bad. I’m thankful that they provided us with lunch, but, it was so bad. My mood crushed down. We spent another 1,5 hours to enjoy some stands. After this, there was talkshow with BiMax robot’s creator and Bi5’s creator. BiMax is a robot that can use Bahasa and it can tell stories in Bahasa. Bi5 is a program that you can use to know a person’s personality instantly, with just a Twitter ID.

After this, on stage, some group of people visualized how HIMTI works. This segment is called Visualization. It was fun and clearly tell you how to join HIMTI and what benefit you will get. But, again, this was too long. I felt it was dragged too much.

And, we met another free 1,5 hours. Have nothing to do, my friends and me were gathered and tried to win Photo Contest. Unfortunately, we could not upload the photo properly.

And, here we are. After that boring free time, we found the auditorium with no chair. They were thrown away for us to enjoy the stage performance with our own legs. We had Revolution, girl dance crew, Vibing High, a band with a rapper and a lot of energy, and DJ on the house. Great way to end this long-time event.

Honest review from my view. The whole segments are too much to follow. I could not help myself yawning and sleeping because it felt dragged too much. It will be better if they put shorter duration on every segment. It would be delivered much better and they still got our attention. But, unfortunately, they did not get our focus. Well, I still want to thank organizer to provide HIMTI Kit. It was the best benefit I could get from HTTP. But, again, it will be better to provide it with offline installer on CD.