Pengertian soft skill alogaritma
dan pemograman kasus elektro
Soft skill adalah
suatu kemampuan, bakat, atau keterampilan yang ada di dalam diri setiap
manusia. Soft skill adalah kemampuan yang dilakukan dengan cara non teknis,
artinya tidak berbentuk atau tidak kelihatan wujudnya. Namun , softskill
ini dapat dikatakan sebagai keterampilan personal dan inter personal.
Yang dimaksud
softskill personal adalah kemampuan yang di manfaatkan untuk kepentingan diri
sendiri. Misalnya, dapat mengendalikan emosi dalam diri, dapat menerima
nasehat orang lain, mampu memanajemen waktu, dan selalu berpikir positif. Itu
semua dapat di kategorikan sebagai softskill personal.
Kemudian yang
dimaksud softskill inter personal adalah kemampuan yg dimanfaatkan untuk diri
sendiri dan orang lain. Contohnya, kita mampu ber hubungan atau ber
interaksi dengan orang lain, bekerja sama dengan kelompok lain, dan lain lain.
Nah, softskill juga
harus di iringi dengan hardskill, karena kita hidup tidak boleh hanya mempunyai
softskill yang berkualitas saja, tapi hardskill kita perlu diperhatikan. Dengan
memiliki hardskill yang baik, kita bisa menjadi manusia yang berkualitas.
Misalnya, kita di sekolahkan oleh orang tua kita, kita akan memiliki ilmu
pengetahuan, nah ilmu tersebut akan kita gunakan dalam kehidupan kita nanti,
oleh karena itu, hardskill dan softskill yang seimbang dapat menumbuhkan
jiwa/pribadi yang berkualitas.
1.1 Konsep Dasar
Algoritma merupakan fondasi yang harus dikuasai oleh setiap
mahasiswa yang ingin menyelesaiakan sebuah permasalahan logika secara
terstruktur, efektif dan efisien yaitu yang ingin menyusun program computer
untuk menyelesaikan suatu persoalan.
1.2 Defisini Algoritma
Ada beberapa definisi algoritma diantaranya adalah :
- Algoritma adalah penyusunan langkah-langkah penyelesaian masalah dalam bentuk kalimat dengan jumlah kata terbatas tetapi tersusun secara logis dan matematis.
- Algoritma adalah suatu prosedur yang jelas untuk menyelesaikan suatu persoalan dengan menggunakan langkah-langkah tertentu dan terbatas jumlahnya.
- Algoritma adalah susunan langkah yang pasti, yang bila diikuti maka akan mentransformasi data input menjadi output yang berupa informasi.
1.3 Sejarah Algoritma
Sejarah mencatat bahwa algoritma berasal dari sebuah kata
al-khawarizmi yang berasal dari seorang muslim yang bernama lengkap Abu Ja’far
Muhammad Ibnu Musa Al-Kwarizmi, beliau merupakan ahli matematika dan astronomi
dari Persia, dan juga merupakan penulis buku “Aljabar wal Muqobala”. Beliau
dianggap sebagai pencetus pertama algoritma karena di dalam buku tersebut Abu
Ja’far menjelaskan langkah-langkah dalam menyelesaikan berbagai persoalan
arirmatika (aljabar).
1.4 Ciri-ciri Algoritma
Menurut Donald E. Knuth penulis buku
algoritma abad XX, menyatakan bahwa ada beberapa ciri algoritma, yaitu :
- Algoritma mempunyai awal dan akhir, suatu algoritma harus berhenti setelah mengerjakan serangkaian tugas. Dengan kata lain, suatu algoritma memiliki langkah yang terbatas.
- Setiap langkah harus didefinisikan dengan tepat, sehingga tidak memiliki arti ganda, tidak membingungkan (not ambiguous)
- Memiliki masukan (input) atau kondisi awal
- Memiliki keluaran (output) atau kondisi akhir
- Algoritma harus efektif, bila diikuti benar-benar maka akan menyelesaikan masalah.
1.5 Sifat Algoritma
Sesuai dengan ciri-ciri dari algoritma pada penjelasan di atas,
maka dapat disimpulkan bahwa sifat suatu algoritma adalah :
- Input : Suatu algoritma mempunyai input atau kondisi awal sebelum dilaksanakan, bias berupa nilai-nilai peubah yang diambil dari himpunan khusus.
- Output : Suatu algoritma akan menghasilkan output setelah dilaksanakan. Suatu algoritma akan mengubah sebuah kondisi awal menjadi kondisi akhir, dimana nilai output diperoleh dari nilai input yang telah diproses melalui algoritma.
- Definiteness : Langkah-langkah yang dituliskan dalam algoritma terdefini dengan jelas sehingga mudah dilaksanakan oleh pengguna algoritma.
- Finiteness : Suatu algoritma harus memiliki kondisi akhir atau output setelah sejumlah langkah yang terbatas jumlahnya dilakukan terhadap setiap kondisi awal atau input yang diberikan.
- Effevtiveness : Setiap langkah dalam algortima dilaksanakan dalam suatu selang waktu tertentu sehingga pada akhirnya didapatkan solusi sesuai dengan yang diharapkan.
- Generality : Langkah-langkah algoritma berlaku untuk setiap himpunan input yang sesuai dengan persoalan yang diberikan, tidak hanya untuk himpunan tertentu.
1.6 Struktur Algoritma
Agar algoritma yang ditulis lebih teratur, maka struktur
algoritma sebaiknya dibagi ke dalam beberapa bagian. Diantaranya :
- Bagian kepala (header) : memuat nama algoritma serta informasi atau keterangan tentang algoritma yang ditulis
- Bagian Deklarasi ( definisi variable ) : memuat definisi nama variable, nama tetapan, nama prosedur, nama fungsi, tipe data yang akan digunakan dalam algoritma.
- Bagian Deskripsi (rincian langkah ) : memuat langkah-langkah penyelesaian masalah, termasuk beberapa perintah seperti baca data, tampilkan, ulangi, yang mengubah data input menjadi output.
Contoh berikut ini adalah struktur algoritma.
Algoritma ini akan menghitung luas sebuah luas lingkaran dengan input jejari
lingkaran tersebut. Luas lingkaran adalah phi*jari*jari.
Algoritma Luas_lingkaran
{Menghitung sebuah luas lingkaran apabila jari-jari tersebut
diberikan}
Deklarasi
{Definisi nama tetapan}
Const phi = 3.14;
{Definisi nama peubah/variabel}
Real jari-jari, Luas;
Deskripsi
Read(jari-jari);
Luas = phi * jari-jari * jari_jari;
Write(Luas);
1.7 Defisini Pemrograman
Pemrograman adalah aktifitas yang berhubungan dengan
pembuatan program dengan mengikuti kaidah bahasa pemrograman tertentu. Dalam
konteks pemrograman terdapat sejumlah bahasa pemrograman seperti Pascal, C, C#,
dan BASIC.
Adapun secara garis besar bahasa pemrograman dikelompokkan
menjadi :
- Bahasa pemrograman tingkat tinggi ( high-level language )
Adalah bahasa pemrograman yang berorientasi kepada bahasa
manusia. Program yang dibuat dengan menggunakan bahasa pemrograman yang mudah
dipahami oleh manusia, biasanya menggunakan bahasa inggris, misalnya IF, FOR,
While, dll.
Contoh bahasa pemrograman tingkat tinggi adalah : C, C#,
BASIC, PHP, VB, VB.NET, JAVA, dll.
- Bahasa pemrograman tingkat rendah ( low-level language )
Adalah bahasa pemrograman yang berorientasi kepada mesin.
Bahasa ini hanya menggunakan kode biner ( hanya mengenal bilangan 0 dan 1 )
atau suatu kode sederhana untuk menggantikan kode-kode tertentu dalam system
biner.
Contoh : kode ASCII yang merepresentasikan karakter ke dalam
bilangan biner.
1.8 Langkah-langkah penyelesaian masalah
dengan Pemrograman
Sebelum dapat menyelesaikan masalah dengan program, terdapat
langkah-langkah yang perlu dilakukan terlebih dahulu :
- Menganalisis masalah
Yaitu tindakan untuk mengidentifikasi informasi yang menjadi
keluaran pemecahan masalah dan data-data yang menjadi masukan.
Dengan kerangka pemecahan masalah = Masukan ->
Algoritma -> Keluaran
- Membuat algoritma
Yaitu menuangkan ide dari pengidentifikasian masalah ke
dalam bentuk algoritma baik dengan menggunakan Flowchart atau PseudoCode
- Menuangkan algortima ke dalam bentuk program.
Yaitu proses membuat kode dengan menggunakan sebuah
bahasa pemrograman untuk mendapatkan hasil sesuai dengan permasalahan
- Mengeksekusi dan menguji program (implementasi).
Yaitu proses pengujian terhadap suatu program yang
digunakan, apakah nantinya berhasil sesuai yang diharapkan atau masih terjadi
kesalahan-kesalahan.
1.9 Contoh-Contoh Algortima
Contoh 1 :
Ada tiga bejana yaitu bejana A, B. Bejana A berisi tinta
berwarna merah, bejana B berisi tinta berwarna hijau.
Pertanyaannya adalah : bagaimana caranya agar bejana A dapat
terisi dengan tinta berwarna hijau dari bejana B, dan bejana B terisi dengan
tinta berwarna merah dari bejana A ?
Dari pertanyaan di atas dapat kita definisikan bahwa untuk
memindahkan isi dari bejana A ke bejana B maka dibutuhkan satu lagi bejana
kosong, misalnya adalah bejana C.
Maka langkah-langkahnya penyelesaiannya adalah :
- Isi bejana C (asalnya kosong) dari bejana A (Tinta Merah)
- Isi bejana A (yang sudah kosong) dari bejana B (Tinta Hijau)
- Isi bejana B (yang sudah kosong) dari bejana C (Tinta Merah)
- Jadi bejana A berisi tinta Hijau, bejana B berisi tinta Merah dan bejana C tetep kosong.