Jumat, 30 Oktober 2015

ORACLE

Pengertian Oracle

Database Oracle adalah Database relasional yang terdiri dari kumpulan data dalam suatu sistem manajemen Database RDBMS. Perusahaan Software Oracle memasarkan jenis Database ini untuk bermacam-macam aplikasi yang bisa berjalan pada banyak jenis dan merk perangkat keras komputer (platform).
Database Oracle ini pertama kali dikembangkan oleh Larry Ellison, Bob Miner dan Ed Oates lewat perusahaan konsultasinya bernama Software Development Laboratories (SDL) pada tahun 1977. Pada tahun 1983, perusahaan ini berubah nama menjadi Oracle Corporation sampai sekarang. (wikipedia indonesia)
Database Oracle terdiri dari beberapa komponen berikut ini :
Software Oracle
Database, yang tersimpan dalam bentuk file pada satu disk atau lebih.
Instance Oracle, terdiri dari background process dan shared memory area
Server process, yang meng-handle user dan aplikasi yang telah terhubung dengan Database, dan juga mengatur memori dan temporary storage yang digunakan process tersebut.
Oracle Net, yang memungkinkan komunikasi antara client application dengan Database oracle pada sebuah jaringan.
Kerjaan DBA pada umumnya sebagai berikut :
Menginstal Software oracle
Meng-create database oracle
Upgrade database dan software oracle
Menyalakan dan mematikan Database oracle
Me-manage storage database
Me-manage user dan security database
Mengelola object Database seperti table, index, views, dll
Backup dan recovery
Monitoring dan tuning database
Diagnosis dan reporting error-error yang kritikal
Tools yang biasa digunakan pada Database oracle
Oracle Universal Installer : Digunakan untuk instalasi software oracle, dan dapat juga digunakan untuk menjalankan Oracle database configuration assistant untuk menginstal sebuah database
Oracle Database Configuration Assistant : Digunakan untuk meng-create database dari template yang dibuat oleh oracle, atau kita dapat membuat database sendiri sesuai keinginan kita
Database Upgrade Assistant : Tools yang membantu kita dalam melakukan upgrade database.
Net Configuration Assistant : Digunakan untuk konfigurasi listener dan naming methods, yang merupakan komponen penting dalam oracle database network
Oracle Enterprise Manager Database Control : Tools yang digunakan untuk me­-manage oracle database interface yang berbasis web.

SAP (System Application and Product)

Pengertian SAP



SAP” adalah suatu nama mungkin sudah tidak asing lagi untuk praktisi-praktisi IT dunia, maupun di Indonesia. “SAP” ini adalah singkatan dari “System Analysis and Program Development (in German : Systemanalyse und Proggrammentwicklung)” yang ditemukan oleh Wellenreuther, Hopp, Hector, Plattner, dan Tschira pada tahun 1972. Yang kemudian berganti menjadi “Systems Application and Products in Data Processing” pada tahun 1977. “SAP”yang dikenal pada saat ini adalah sistem R/3-nya yang sudah teruji oleh perusahaan-perusahaan dunia dalam menjalankan bisnisnya, yang lebih dikenal dengan SAP R/3. Sebelum sampai ke generasi R/3, SAP sudah melewati tahap R/1 dan R/2. Selain sistem R/3 yang terkenal banyak juga solusi-solusi bisnis lainnya antara lain SAP BI (Business Intelligence) yang digunakan untuk Data Warehousing, SEM (Strategic Enterprise Management), SCM (Supply Chain Management), CRM dan masih banyak solusi-solusi bisnis lain yang ditawarkan oleh SAP untuk berbagai jenis bidang usaha di dunia.
SAP adalah merupakan salah satu software ERP (Enterprise Structure) terkemuka dunia yang sekarang ini sedang banyak diimplementasikan oleh perusahaan-perusahaan di Asia.  Di Indonesia sendiri, sudah banyak perusahaan-perusahaan besar dan menengah yang sudah berhasil mengimplementasikan SAP untuk mendukung proses bisnisnya. Memang harga untuk mendapatkan suatu ERP dunia juga harus dibayar mahal baik dari segi licensenya, konsultan IT, dan juga SDM yang masih langka.

A.Sejarah Singkat Enterprise Resource Planning (ERP)
ERP berkembang dari manufacturing resouces planning (MRP II) dimana MRP II sendiri adalah hasil evalusi dari material requirement planning (MRP) yang berkembang sebelumnya. Sistem ERP secara modular biasanya menangani proses manufaktur, logistik, distribusi persediaan (inventori), pengapalan, invois dan akunting perusahaan. Ini berarti bahwa sistem ini nanti akan membantu mengontrol aktivitas bisnis seperti penjualan, pengiriman, produksi, manajemen persediaan, manajemen kualitas dan sumber daya manusia.
Enterprise Resource Planning (ERP) dan pendahulunya, Manufacturing Resource Planning (MRP II), memungkinkan terjadinya kemajuan yang sangat besar dalam manajemen proses-proses manufakturing. ERP juga salah satu faktor penyumbang pada performa ekonomi Amerika yang luar biasa pada era 1990-an. Tidak diragukan bahwa ERP adalah tonggak sejarah dalam proses industri. Berikut beberapa contoh bagus mengenai penerapan ERP di berbagai perusahaan.
1.Enterprise Resource Planning membantu sebuah perusahaan menaikan 20% tingkat penjualannya di tengah industri yang sedang menurun. Wakil presiden bidang penjualan menjelaskan, “Kita berhasil menangkap bisnis dari saingan-saingan kita. Berkat ERP, kini kita dapat mengirim lebih cepat dari mereka dan tepat waktu”.
2.Enterprise Resource Planning membantu sebuah perusahaan Fortune 50 dalam mencapai penghematan biaya yang sangat besar dan mendapatkan keunggulan daya saing yang signifikan. Wakil presiden bidang logistik menyatakan, “ERP menyediakan kunci untuk menjadi perusahaan global. Keputusan dapat diambil dengan data yang akurat dan dengan proses yang menghubungkan demand dan supply di berbagai belahan dunia. Perubahan ini bernilai miliaran bagi kami dalam penjualan di seluruh dunia”.
Investasi ERP sangat mahal dan pilihan ERP yang salah bisa menjadi mimpi buruk. ERP yang berhasil digunakan oleh sebuah perusahaan tidak menjadi jaminan berhasil di perusahaan yang lain. Perencanaan harus dilakukan untuk menyeleksi ERP yg tepat.
B.Pengertian ERP
Sistem ERP adalah sebuah terminologi yang secara de facto adalah aplikasi yang dapat mendukung transaksi atau operasi sehari-hari yang berhubungan dengan pengelolaan sumber daya sebuah perusahaan, seperti dana, manusia, mesin, suku cadang, waktu, material dan kapasitas. Sistem ERP dibagi atas beberapa sub-sistem yaitu sistem finansial, sistem distribusi, sistem manufaktur, sistem maintenance dan sistem human resource.
ERP(Enterprise Resource Planning) System adalah sistem informasi yang diperuntukkan bagi perusahan manufaktur maupun jasa yang berperan mengintegrasikan dan mengotomasikan proses bisnis yang berhubungan dengan aspek operasi, produksi maupun distribusi di perusahaan bersangkutan.
Pada prinsipnya, dengan sistem ERP sebuah industri dapat dijalankan secara optimal dan dapat mengurangi biaya-biaya operasional yang tidak efisien seperti biaya inventory (slow moving part, dan lain-lain), biaya kerugian akibat ‘machine fault’ dan lain-lain. Di negara-negara maju yang sudah didukung oleh infrastruktur yang memadaipun, mereka sudah dapat menerapkan konsep JIT (Just-In-Time). Di sini, segala sumberdaya untuk produksi benar-benar disediakan hanya pada saat diperlukan (fast moving). Termasuk juga penyedian suku cadang untuk maintenance, jadwal perbaikan (service) untuk mencegah terjadinya machine fault, inventory.
C.Beberapa variasi ERP
Di sistem manufaktur sendiri bisa terdapat beberapa variasi:
1.make-to-stock (diproduksi untuk dijadikan stok)
2.assemble-to-order (dirakit berdasarkan permintaan)
3.assemble-to-stock (dirakit untuk dijadikan stok)
4.make-to-order (diproduksi berdasarkan permintaan).
Contoh make-to-stock misalnya: pabrik kertas dimana kertas itu sudah menjadi suatu komoditi yang bisa dijual kapan saja. Sebuah contoh assemble-to-stock misalnya: pabrik TV yang mendatangkan komponennya secara knockdown yang kemudian di rakit untuk dijadikan TV siap jual.
Pada dasarnya, semakin kompleks suatu industri, maka sistem manufaktur tersebut juga makin menuju ke sistem assemble-to-order atau make-to-order. Sebagai contoh, industri pesawat nyaris tidak mungkin memakai sistem make to stock karena komponennya saja perlu di rancang khusus. Untuk industri seperti itu, beberapa vendor sistem ERP juga menyediakan sistem Project Management sebagai ganti dari sistem produksi.
D.Proses dalam ERP
Sistem ERP dirancang berdasarkan proses bisnis yang dianggap ‘best practice’ – proses umum yang paling layak ditiru. Misalnya, bagaimana proses umum yang sebenarnya berlaku untuk pembelian (purchasing), penyusunan stok di gudang dan sebagainya.
Untuk mendapatkan manfaat yang sebesar-besarnya dari sistem ERP, maka industri kita juga harus mengikuti ‘best practice process’ (proses umum terbaik) yang berlaku. Di sini banyak timbul masalah dan tantangan bagi industri kita di Indonesia. Tantangannya misalnya, bagaimana merubah proses kerja kita menjadi sesuai dengan proses kerja yang dihendaki oleh sistem ERP, atau merubah sistem ERP untuk menyesuaikan proses kerja kita. Management sebagai ganti dari sistem produksi sebelumnya.
Apa itu ERP? ERP (Enterprise Resource Planning) sebuah akronim yang memang belum menggambarkan makna yang sebenarnnya. Agar mudah memahaminya, abaikan kata Planning dan Resource, tapi perhatikan kata Enterprise. Di kata Enterprise itulah letak makna ERP yang sebenarnya.
ERP merupakan software yang mengintegrasikan semua departemen dan fungsi suatu perusahaan ke dalam satu sistem komputer yang dapat melayani semua kebutuhan perusahaan, baik dari departemen penjualan, HRD, produksi atau keuangan. Meski kebutuhannya berbeda, ERP harus mampu memenuhinya. Satu syarat yang tidak boleh ditawar-tawar lagi adalah terintegrasi, yang menggabungkan berbagai kebutuhan pada satu software dalam satu logical database, sehingga memudahkan semua departemen berbagi informasi dan berkomunikasi.
Sebagai contoh, order penjualan yang dicatat di departemen penjualan akan secara otomatis diketahui kapan harus dikirim oleh bagian gudang. Begitu juga, bagian keuangan akan mengetahui kapan kas akan masuk dari pelanggan. Berkurangnya jumlah barang di gudang secara otomatis akan diketahui pula oleh bagian perencanaan produksi. Jika jumlah barang mencapai kondisi tertentu, sistem akan membuat permintaan produksi. Saat itu, informasi mengenai bahan baku yang dibutuhkan telah pula disajikan oleh sistem.
Setelah bagian perencanaan produksi me-review informasi dan menyetujuinya, secara otomatis informasi akan mengalir ke bagian pembelian, yang memungkinkannya menghubungi pemasok untuk negosiasi harga dan pengiriman. Saat itu, bagian pembelian juga mendapatkan berbagai informasi berharga mengenai kinerja para pemasoknya.
Setelah kesepakatan diperoleh, order pembelian dibuat dengan menekan satu tombol dan informasi rencana kedatangan barang telah sampai di bagian penerimaan barang. Sementara itu, bagian keuangan akan memperoleh informasi berapa jumlah uang yang harus disiapkan untuk order pembelian. Demikian seterusnya, sehingga keseluruhan alur proses bisnis di perusahaan tersebut menjadi sangat efisien. Perubahan-perubahan yang terjadi di satu bagian dapat diantisipasi dengan baik oleh bagian terkait lainnya.
Meski banyak analis dan vendor perangkat lunak mendefinisikan berbeda-beda, namun maknanya relatif sama. Ada yang menyebutnya ERP, karena merupakan evolusi dari MRP – Material Requirement Planning menjadi MRP II – Manufacturing Resource Planning, yang kemudian menjadi ERP – Enterprise Resource Planning. Ada juga yang menyebut ERM – Enterprise Resource Management, sekedar mendekatkan makna dan akronimnya. Suatu sistem yang mengelola seluruh sumber daya perusahaan.
ERM ini yang kemudian mendorong munculnya jargon baru TI, seperti CRM (Customer Relationship Management), SCM (Supply Chain Management), PLM (Product Lifecycle Management) dan SRM (Supplier Relationship Management). Jargon-jargon baru itu, pada intinya, adalah pemanfaatan lebih lanjut suatu sistem yang fokus utamanya adalah customer untuk CRM, rantai pergerakan barang untuk SCM, daur hidup produk untuk PLM serta supplier untuk SRM. Posisi ERM ada di tengah-tengah dan dikelilingi oleh CRM, SCM, PLM dan SRM.
ERP akan berkembang terus sesuai dengan tuntutan konsumen. Yang jelas perkembangan ERP pada masa depan ini akan dititik-beratkan pada beberapa hal, yaitu, lebih mendukung customer service, lebih mendukung vertical industri spesifik (vertical industry), dan juga lebih mendukung proses pengambilan keputusan

JARINGAN CISCO

Pengertian Cisco Router   
 
 
Cisco adalah peralatan utama yang banyak digunakan pada Jaringan Area Luas atau Wide Area Network (WAN). Dengan cisco router, informasi dapat diteruskan ke alamat-alamat yang berjauhan dan berada di jaringan computer yang berlainan. Yang bertujuan untuk dapat meneruskan paket data dari suatu LAN ke LAN lainnya, Cisco router

menggunakan tabel dan protocol routing yang berfungsi untuk mengatur lalu lintas data. Paket data yang tiba di router diperiksa dan diteruskan ke alamat yang dituju. Agar paket data yang diterima dapat sampai ke tujuannya dengan cepat, router harus memproses data tersebut dengan sangat tepat. Untuk itu, Cisco Router menggunakan Central Processing Unit (CPU) seperti yang digunakan di dalam komputer untuk memproses lalu lintas data tersebut dengan cepat. Seperti komputer, cisco router juga mempunyai sejumlah jenis memori yaitu ROM, RAM, NVRAM
dan FLASH, yang berguna untuk membantu kerjanya CPU. Selain itu dilengkapi pula dengan sejumlah interface untuk berhubungan dengan dunia luar dan keluar masuk data. Sistem operasi yang digunakan oleh cisco router adalah Internetwork Operating System (IOS). Memori yang digunakan oleh cisco router masing-masing mempunyai kegunaan sendiri- sendiri sebagai berikut :
ROM berguna untuk menyimpan sistem bootstrap yang berfungsi untuk mengatur proses boot dan menjalankan Power On Self Test (POST) dan IOS image.

• RAM berguna untuk menyimpan running configuration dan dan sistem operasi IOS yang aktif.

• NVRAM berguna untuk menyimpan konfigurasi awal (start-up configuration).

• FLASH berguna untuk menyimpan IOS image. Dengan menggunakan FLASH, IOS versi baru dapat diperoleh dari TFTP server tanpa harus mengganti komponen dalam router. 

2. Sejarah Cisco Router
 
Pada awal 1980-an, ada sepasang suami istri yaitu Len dan Sandy Bosack yang dulu bekerja di dua departemen komputer yang berbeda yang terletak di Stanford University. Pasangan ini sedang menghadapi masalah dalam membuat komputer mereka berkomunikasi satu sama lain. Untuk mengatasi masalah ini, mereka membuat sebuah server gateway di ruang tamu mereka yang menuju cara sederhana membuat dua departemen berkomunikasi satu sama lain dengan bantuan protokol IP. Mereka mendirikan cisco Systems (dengan c kecil) pada tahun 1984, memiliki server gateway komersial kecil yang membawa sebuah revolusi dalam Networking. Nama perusahaan diubah menjadi Cisco Systems, Inc pada tahun 1992. Advanced Gateway Server (AGS) adalah produk pertama yang dipasarkan perusahaan. Setelah ini datang Mid-Range Gateway Server (MGS), Compact Gateway Server (cgs), Integrated Gateway Server (IGS) dan AGS +.
        Akhirnya menciptakan router cisco 4000, 7000, 2000, dan 3000 series. Router ini masih ada dan meningkatkan setiap hari. Cisco adalah pemimpin besar dunia ketika datang ke jaringan untuk Internet. Produk perusahaan ini mengarah pada kemudahan dalam mengakses dan mentransfer informasi terlepas dari perbedaan waktu, tempat atau platform. Sertifikasi CCNA adalah sertifikat yang pertama dalam jajaran sertifikasi Cisco dan merupakan pendahulu untuk semua sertifikasi Cisco. Program CCNA dibuat untuk memberikan dasar yang kokoh yang tidak hanya untuk Cisco Internetwork Operating System (IOS) dan hardware Cisco, tetapi juga internetworking secara umum. Untuk mendapatkan Cisco Certified Internetwork Expert (CCIE) maka Ciscon membuat suatu seri sertifikasi, yaitu:
- CCNA (Cisco Certified Network Associate)
- CCNP (Cisco Certified Network Professional)
- CCIE (Cisco Certified Internetwork Expert)

PEMOGRAMAN C++

C++ adalah bahasa pemrograman komputer yang di buat oleh Bjarne Stroustrup, yang merupakan perkembangan dari bahasa C dikembangkan di Bong Labs (Dennis Ritchie) pada awal tahun 1970-an, Bahasa itu diturunkan dari bahasa sebelumnya, yaitu B, Pada awalnya, bahasa tersebut dirancang sebagai bahasa pemrograman yang dijalankan pada sistem Unix, Pada perkembangannya, versi ANSI (American National Standart Institute) Bahasa pemrograman C menjadi versi dominan, Meskipun versi tersebut sekarang jarang dipakai dalam pengembangan sistem dan jaringan maupun untuk sistem embedded, Bjarne Stroustrup pada Bel labs pertama kali mengembangkan C++ pada awal 1980-an. Untuk mendukung fitur-fitur pada C++, dibangun efisiensi dan sistem support untuk pemrograman tingkat rendah (low level coding).[1] Pada C++ ditambahkan konsep-konsep baru seperti class dengan sifat-sifatnya seperti inheritance dan overloading.[butuh rujukan] Salah satu perbedaan yang paling mendasar dengan bahasa C adalah dukungan terhadap konsep pemrograman berorientasi objek (Object Oriented Programming).[2]
tercipta untuk mu .[3]

Standarisasi

Year C++ Standard Informal name
2011 ISO/IEC 14882:2011[4] C++11
2007 ISO/IEC TR 19768:2007[5] C++TR1
2003 ISO/IEC 14882:2003[6] C++03
1998 ISO/IEC 14882:1998[7] C++98
Pada tahun 1998, C++ Standar Komite (ISO/IEC JTC1/SC22/WG21 Working Group)mengeluarkan Standar Internasional ISO/IEC 14882:1998 yang digunakan selama beberapa tahun. Pada tahun 2003 dirilis versi yang telah dikoreksi, ISO/IEC 14882:2003. Pada tahun 2005, Laporan Teknis yang disebut "Laporan Teknis Perpustakaan 1" (sering dikenal sebagai TR1),dirilis. Revisi terbaru dari standar C++ adalah C+11 (sebelumnya dikenal C++0x) telah disetujui oleh ISO/IEC pada tanggal 12 Agustus 2011. Telah diterbitkan sebagai 14882:11.

Contoh Program C++

Contoh program sederhana C++ untuk hello world dengan menggunakan Pustaka Dasar C++ dapat dilihat di bawah ini:[butuh rujukan]
[8]
#include <iostream>
using namespace std;
int main()
{
 cout <<"hello world"<<endl;
 return 0;
}

Keterangan

Baris pertama :
#include <iostream.h>
Sebagai bagian dari proses kompilator, Kompilator dari c++ menjalankan program yang dinamakan preprosesor.[butuh rujukan] Preprosesor memiliki kemampuan menambahkan dan menghapus kode dari sumber, Pada bagian #include memberitahuakan preprosesor untuk menyertakan kode dari iostream, Berkas iostream berisi deklarasi untuk berbagai fungsi yang dibutuhkan oleh perangkat lunak, atau class-class yang dibutuhkan.[8]
Baris kedua :
int main ()
Pernyataan ini mendeklarasikan fungsi utama, bahwa suatu program C++ dapat berisi banyak fungsi, yang harus selalu memiliki sebuah fungsi utama (main function), Fungsi adalah modul yang berisi kode-kode untuk menyelesaikan masalah-masalah tertentu. Kata Void menandakan fungsi main tidak bertipe.[8]
Baris ketiga :
{
Kurung kurawal buka menandakan awal program.[8]
Baris keempat :
std::cout << "Hello world\n";
Cout adalah sebuah object dari Pustaka perangkat lunak standart C++ yang digunakan untuk mencetak string ke piranti output standart, yang biasanya adalah layar komputer, Compiler menghubungkan kode dari pustaka perangkat lunak standar itu dengan kode yang telah ditulis untuk mendapatkan hasil executable, Tanda
\n
adalah format modifier yang digunakan untuk berganti baris setelah menampilkan string, jika ada cout lain pada program tersebut, maka string yang menyertainya akan dituliskan pada baris bawahnya.[8] Baris kelima:
}
Kurung kurawal tutup menandakan akhir program.[9]

Kata yang dipesan

Kelompok pertama

C++ mempunyai 32 buah kata yang dipesan (reserved words), Kata kunci kelompok pertama merupakan turunan dari bahasa C, di antaranya:.[9]
auto const double float int short struct unsigned
break continue else for long signed switch void
case default enum goto register sizeof typedef volatile
char do extern if return static union while
[10]

Kelompok kedua

Kata yang dipesan kelompok kedua berjumlah 30. Kata-kata ini adalah baru dan hanya ada di bahasa C++.[10]
asm dynamic_cast namespace reinterpret_cast try
bool explicit new static_cast typeid
catch false operator template typename
class friend private this using
const_cast inline public throw virtual
delete mutable protected true wchar_t
Kata-kata yang dipesan tersebut di atas tidak boleh dipakai sebagai nama variable, class, enum, macro, dan struct.[10]
  1. include <stdio.h>
int maksimum (int,int); void tulis (int);
main() int nilai 1,nilai 2,nilai maks; printf (*\n ketikkan dua bilangan bulat:); scanf("%d%d",& nilai 1,nilai 2);
nilai maks=maksimum (nilai 1,nilai 2); tulis(nilai maks); returns 0;
int maksimum(int x1,int x2) if (x1>x2) return x1; else return x2;
void tulis(int x) printf("\n hasilnya adalah :%d",x);

Tipe data dasar

Untuk menyimpan suatu variabel diperlukan tempat khusus di dalam memori komputer, Besar dan tipe dari Variabel-variabel di dalam standar program C++ dispesifikasikan sebagai berikut.[10]
Nama Keterangan Ukuran Jangkauan
char Abjad/karakter atau untuk bilangan bulat kecil 1 byte signed: -128 to 127 unsigned: 0 to 255
short int (short) Bilangan bulat dengan jangkauan pendek 2 byte signed: -32768 to 32767 unsigned: 0 to 65535
int Bilangan bulat 4 byte signed: -2147483648 to 2147483647 unsigned: 0 to 4294967295
long int (long) Integer dengan jangkauan panjang 4 byte signed: -2147483648 to 2147483647 unsigned: 0 to 4294967295
bool Boolean, dapat bernilai benar atau salah (true or false) i byte true or false
float Angka dengan titik mengambang (bilangan cacah) 4 byte 3.4e +/- 38 (7 digit)
double Bilangan cacah dengan ketelitian ganda 8 byte 1.7e +/- 308 (15 digits)
long double Bilangan cacah dengan ketelitian ganda panjang 8 byte 1.7e +/- 308 (15 digits)
wchar_t Karakter lebar, biasa dipakai untuk Unicode karakter 2 byte 1 karakter lebar

C++ compiler

  • Acorn C/C++
  • Borland C++
  • C++/CX
  • C++Builder
  • Cfront
  • Clang
  • CodeWarrior
  • Comeau C/C++
  • ConceptGCC
  • Digital Mars
  • GNU Compiler Collection
  • HP aC++
  • IBM XL C++
  • Intel C++ Compiler
  • MinGW
  • Norcroft C compiler
  • Open64
  • Oracle Solaris Studio
  • PathScale
  • The Portland Group
  • ROSE (compiler framework)
  • Shed Skin
  • Softune
  • TenDRA Compiler
  • THINK C
  • Turbo C++
  • Visual C++
  • IBM VisualAge
  • Watcom C/C++ compiler
  • Zortech

C++ programming language family

  • Algorithmic skeleton
  • C++/CLI
  • C++/CX
  • Charm++
  • Embedded C++
  • Felix (programming language)
  • Intel Array Building Blocks
  • Intel Parallel Studio
  • Managed Extensions for C++
  • R++
  • Sieve C++ Parallel Programming System
  • Threading Building Blocks
  • ÎœC++

Referensi

  1. ^ Hanif al fatta (2006). Dasar Pemrograman C++ disertai dengan Pengenalan Pemrograman Berorientasi Objek. ISBN 979-763-582-1.
  2. ^ Bruce Eckel (2000). Thinking in C++. Jilid 1 dari Thinking in C++ Introduction to Standard C+, Bruce Eckel. ISBN 0139798099, 9780139798092 Check |isbn= value (bantuan).
  3. ^ Bjarne Stroustrup (2000). The C++ programming language, Prentice Hall, 2000. ISBN 0201889544, 9780201889543 Check |isbn= value (bantuan).
  4. ^ "ISO/IEC 14882:2011".
  5. ^ "ISO/IEC TR 19768:2007".
  6. ^ "ISO/IEC 14882:2003".
  7. ^ "ISO/IEC 14882:1998".
  8. ^ a b c d e Nicolai M. Josuttis (1991). C++ primer Jilid 54848 dari Programming languages, penerbit Addison-Wesley, 1991. ISBN 0201548488, 9780201548488 Check |isbn= value (bantuan).
  9. ^ a b Nicolai M. Josuttis (2002). Object-oriented programming in C++, Penerbit J. Wiley, 2002, Tebal 610 halaman. ISBN 0470843993, 9780470843994 Check |isbn= value (bantuan).
  10. ^ a b c d Gregory Satir, Doug Brown (2002). C++: the core language, Penerbit, O'Reilly Media, Inc., 1995, Tebal 207 halaman. ISBN 156592116X, 9781565921160 Check |isbn= value (bantuan).

KALIMAT EFEKTIF

Pengertian Kalimat Efektif


Kalimat efektif adalah kalimat yang sesuai dengan kaidah bahasa baik ejaan maupun tanda bacanya sehingga mudah dipahami oleh pembaca atau pendengarnya. Dengan kata lain, kalimat efektif mampu  menimbulkan kembali gagasan-gagasan pada pendengar atau pembacanya seperti apa yang dimaksudkan oleh penulis.
Suatu kalimat dapat dikatakan sebagai kalimat efektif jika memiliki beberapa syarat sebagai berikut:
1. Mudah dipahami oleh pendengar atau pembacanya.
2. Tidak menimbulkan kesalahan dalam menafsirkan maksud sang penulis.
3. Menyampaikan pemikiran penulis kepada pembaca atau pendengarnya dengan tepat.
4. Sistematis dan tidak bertele-tele.

Prinsip-Prinsip Kalimat Efektif:

Kalimat efektif memiliki prinsip-prinsip yang harus dipenuhi yaitu kesepadanan, kepararelan, kehematan kata, kecermatan, ketegasan, kepaduan dan kelogisan kalimat. Prinsip-prinsip kalimat efektif tersebut akan diuraikan sebagai berikut:

A. Kesepadanan Struktur
Kespadanan adalah keseimbangan antara gagasan atau pemikiran dengan struktur bahasa yang dipakai dalam kalimat. Kesepadanan dalam kalimat ini diperlihatkan dengan adanya kesatuan gagasan dan kesatuan pikiran. Ciri-ciri kalimat yang memiliki kesepadanan struktur, yaitu:
1. Memiliki subjek dan predikat yang jelas
Contoh:
Bagi semua siswa kelas 2 harus mengikuti kegiatan study tour.       (Tidak efektif)
Semua siswa kelas 2 harus mengikuti kegaiatan study tour.              (Efekti)
Untuk menghindari ketidak jelasan subjek, hindarilah pemakaian kata depan (Preposisi) di depan Subjek.
2. Tidak memiliki subjek yang ganda di dalam kalimat tunggal.
Contoh:
Pembangunan Jalan itu kami dibantu oleh semua warga desa.                       (Tidak Efekti)
Dalam membangun jembatan itu, kami dibantu oleh semua warga desa.     (Efektif)

B. Kepararelan Bentuk
Kalimat efektif memiliki kesamaan bentuk kata yang digunakan di dalam kalimat. Yang dimaksud dengan kesamaan bentuk kata adalah jika kata pertama berbentuk verba, maka kata selanjutnya berbentuk verba. Namun, jika kata pertama berbentuk nomina, maka kata selanjutnya berbentuk nomina.
Contoh:
Langkah-langkah dalam menulis kalimat efektif adalah memahami, mengetahui, dan pengaplikasian definisi kaliamt efektif.       (Tidak efektif)
Langkah-langkah dalam menulis kalimat efektif adalah memahami, mengetahui, dan mengaplikasikan definisi kalimat efektif.          (Efektif)


Advertisement

C. Kehematan Kata
Kalimat efektif tidak menggunakan kata-kata atau frasa yang tidak perlu digunakan. Untuk menghindari pemborosan kata di dalam kalimat, hal yang harus diperhatikan adalah: 
1. Menghindari unsur yang sama pada kalimat majemuk
Contoh:
Saya tidak suka buah apel dan saya tidak suka duren.        (Tidak efektif)
Saya tidak suka buah apel dan duren.                                    (Efektif)
2. Menghindari kesinoniman dalam kalimat
Contoh:
Saya hanya memiliki 3 buah buku saja.          (Tidak efektif)
Saya hanya memiliki 3 buah buku.                   (Efektif)
3. Menghindari penjamakan kata pada kata jamak
Para mahasiswa-mahasiswa berunjuk rasa di depan gedung rektorat.    (Tidak efektif)
Para mahasiswa berunjuk rasa di depan gedung rektorat.                          (Efektif)

D. Kecermatan
Yang dimaksud kecermatan adalah cermat dan tepat dalam memilih kata sehingga tidak menimbulkan kerancuan dan makna ganda.
Contoh:
Guru baru pergi ke ruang guru.            (Tidak efektif)
Guru yang baru pergi ke ruang guru.   (Efektif)

E. Ketegasan
Kalimat efektif memberikan penegasan kepada ide pokonya sehingga ide pokonya menonjol di dalam kalimat tersebut.  Berikut cara memberikan penegasan pada kalimat efektif.
1. Meletakan kata kunci di awal kalimat
Contoh:
Sudah saya baca buku itu.      (Tidak efektif)
Buku itu sudah saya baca.      (Efektif)
2. Mengurutkan kata secara bertahap.
Contoh:
Pertemuan itu dihadiri oleh menteri pendidikan, gubernur dan presiden.   (Tidak efektif)
Pertemuan itu dihadiri oleh presiden, menteri pendidikan dan gubernur.     (Efektif)

F. Kepaduan
Kalimat efektif memiliki kepaduan pernyataan sehingga informasi yang disampaikan tidak terpecah-pecah.
Contoh:
Budi membicaran tentang pengalaman liburannya.   (Tidak efektif)
Budi membicarak pengalaman liburannya.                   (Efekti)

G. Kelogisan
Ide kalimat dalam kaliamat efektif dapat diterima atau dimengerti oleh akal dan sesuai dengan kaidah EYD.
Contoh:
Waktu dan tempat kami persilahkan!     (Tidak efektif)
Bapak kepala sekolah kami persilahkan! (Efekti)
Demikianlah prinsip-prinsip dalam kalimat efektif yang harus ada atau dipenuhi dalam pembuatan kalimat efektif agar tujuan komunikatif kalimat tersebut dapat tersampaikan dengan jelas kepada pendengar atau pembacanya.

Contoh-contoh kalimat efektif:
  • Karena tidak tidur semalaman, dia terlambat datang ke sekolah.
  • Dia memakai baju merah.
  • Sesudah dipahami dan dihayati pancasila harus diamalkan dalam kehidupan sehari-hari.
  • Tugas itu bagi saya sangat mudah.
  • Semua mahasiswa diwajibkan membayar uang kuliah sebelum tanggal 26 Februari 2015.
  • Saya sedang membuat nasi goreng.
  • Selanjutnya, saya akan menjelaskan pentingnya air bagi kehidupan. 

LOGIKA PROPOSISI

PENGERTIAN PROPOSISI
Proposisi adalah suatu keputusan. Keputusan yang dipermasalahkan dalam filsafat logika adalah keputusan yang berhubungan dengan term-term yang terangkai dalam suatu kalimat. Jadi proposisi atau keputusan adalah pernyataan tentang relasi yang terdapat diantara dua buah term. Suatu proposisi mempunyai tiga unsur sebagai berikut:
  1. Subyek
  2. Predikat;
  3. Kopula (penghubung antara subyek dan predikat).
Misalnya proposisi: ‘Semua manusia adalah hamba Allah’. Semua manusia sebagai subyek; hamba Allah sebagai predikat; adalah sebagai kopula.
Menurut logika tradisional, proposisi mestinya terdiri atas tiga bagian, yaitu subyek, predikat dan kopula. Kopula mesti ada dan fungsinya menyatakan hubungan yang terdapat antara subyek dan predikat. Hubungan yang dinyatakan oleh kopula mungkin berupa afirmasi, artinya kopula menyatakan bahwa diantara subyek dan predikat tidak terdapat suatu hubungan apapun.
Dalam Logika dikenal adanya dua macam proposisi, menurut sumbernya, yaitu proposisi analitik dan proposisi sintetik. Proposisi analitik adalah proposisi yang predikatnya mempunyai pengertian yang sudah terkandung pada subyeknya, seperti :
Burung adalah hewan. Kata “hewan” pengertiannya sudah terkandung pada subyek “burung”. Jadi predikat pada proposisi analitik tidak mendatangkan pengetahuan baru. Untuk menilai benar tidaknya proposisi serupa kit lihat ada tidaknya pertentangan dalam diri pernyataan itu. Prposisi analitik disebut juga proposisi a priori.
Proposisi sintetik adalah proposisi yang predikatnya mempunyai pengertian yang bukan menjadi keharusan bagi subyeknya, seperti :
Manggis itu manis. Kata “manis” pengertiannya belum terkandung ada subyeknya, yaitu “manggis”. Jadi kata “manis” merupakan pengetahuan baru yang didapat melalui pengalaman. Roosisi sintetik adalah lukisan dari kenyataan empirik maka untuk menguji benar salahnya diukur berdasarkan sesuai tidaknya dengan kenyataan empiriknya. Proposisi ini disebut proposisi a posteriori.

MACAM-MACAM PROPOSISI MENURUT BENTUKNYA
  1. Proposisi Kategorik
Proposisi kategarik adalah proposisi yang mengandung pernyataan tanpa adanya syarat. Proposisi kategorik yang paling sederhana terdiri dari satu term subyek, satu term predikat, satu kopula dan satu quantifier. Subyek adalah term yang menjadi pokok pembicaraan. Predikat adalah term yang menerangkan subyek. Kopula adalah kata yang menyatakan hubungan antara term subyek dan term predikat. Quantifier adalah kata yang menunjukan banyaknya satuan yang diikat oleh term subyek.
Sebagian                manusia           adalah              pedagang
Quantifier             subyek             kopula             predikat
Perlu diketahui, meskipun dalam suatu proposisi tidak menyatakan quantifier-nya tidak berarti subyek dari proposisi tersebut tidak mengandung pengertian banyaknya satuan diikatnya. Perhatikan proposisi yang quantifier-nya dinyatakan :
  • Proposisi universal :     Semua tanaman membutuhkan air.
  • Proposisi partikular :     Sebagian manusia dapat menerima pendidikan tinggi.
  • Proposisi singular :     Seorang yang bernama Hasan adalah seorang guru.
Proposisi tersebut dapat dinyatakan tanpa disebut quantifier-nya tanpa mengubah kuantitas proposisinya :
  • Proposisi universal : Tanaman membutuhkan air.
  • Proposisi partikular : Manusia dapat menerima pendidikan tinggi.
  • Proposisi singular : Hasan adalah guru.
Dari kombinasi antara kuantitas dan kualitas proposisi maka kita kenal enam macam proposisi, yaitu :
  1. Universal positif, seperti : Semua manusia akan mati
  2. Partikular positif, seperti : Sebagian manusia adalah guru
  3. Singular positif, seperti : Rudi adalah pemain bulu tangkis
  4. Universal negatif, seperti : Semua kucing bukan burung
  5. Partikular negatif, seperti : Beberapa mahasiswa tidak lulus
  6. Singular negatif, seperti : Fatimah bukan gadis pemalu
Proposisi universal positif, kopulanya mengakui hubungan subyek dan predikat secara keseluruhan, dalam Logika dilambangkan dengan huruf A. Proposisi partikular positif kopula mengakui hubungan subyek dan predikat sebagian saja dilambangkan dengan huruf I. Proposisi singular positif karena kopulanya mengakui hubungan subyek dan predikat secara keseluruhan maka juga dilambangkan dengan huruf A. Huruf A dan I masing-masing sebagai lambang proposisi universal positif dan partikular positif diambil dari dua huruf hidup pertama kata Latin Affirmo yang berarti mengakui.
Proposisi universal negatif kopulanya mengingkari hubungan subyek dan predikatnya secara keseluruhan, dalam Logika dilambangkan dengan huruf E. Proposisi partikular negatif kopulanya mengingkari hubungan subyek dan predikat sebagian saja, dilambangkan dengan huruf O. Proposisi singular negatif karena kopulanya mengingkari hubungan subyek dan predikat secara keseluruhan, juga dilambangkan dengan huruf E. Huruf E dan O yang dipakai sebagai lambang tersebut diambil dari huruf hidup dalam kata nEgo, bahasa Latin yang berarti menolak atau mengingkari.
Dengan pembahasan diatas maka kita mengenal lambang, permasalahan dan rumus proposisi sebagai berikut :
Lambang Permasalahan Rumus
A Universal Positif Semua S adalah P
I Partikular positif Sebagian S adalah P
E Universal negatif Semua S bukan P
O Partikular negatif Sebagian S bukan P
  1. Proposisi Hipotetik
Pada proposisi kategorik kopula menghubungkan dua buah term sedang pada proposisi hipotetik kopula menghubungkan dua buah pernyataan. Sebuah proposisi hipotetik, misalnya : ‘Jika hujan turun maka desa akan banjir’ pada dasarnya terdiri dari dua proposisi kategorik ‘Hujan turun’ dan ‘Desa akan banjir’.’Jika’ dan ‘maka’ pada contoh diatas adalah kopula, ‘hujan turun’ sebagai pernyataan pertama disebut sebab atauantecedent dan ‘desa akan banjir’ sebagai pernyataan kedua disebut akibat ataukonsekuen.
Proposisi hipotetik mempunyai dua buah bentuk. Yaitu:
  • Jika A adalah B maka A adalah C, seperti “Jika Feri rajin maka ia akan naik kelas”.
  • Jika A adalah B maka C adalah D, seperti “Jika permintaan bertambah, maka harga akan naik”.
  1. Proposisi Disyungtif
Seperti juga proposisi hipotetik, proposisi disyungtif pada hakikatnya juga terdiri dari dua buah proposisi kategorika. Sebuah proposisi disyungtif seperti : Proposisi jika tidak benar maka salah ; jika dianalisis menjadi : ‘Poposisi itu benar’ dan Proposisi itu salah”. Kopula yang berupa ‘jika’ dan ‘maka’ mengubah dua proposisi kategorik menjadi permasalahan disyungtif. Kopula dari proposisi disyungtif bervariasi sekali, seperti :
  • Hidup kalau tidak makan adalah mati.
  • Eko di kantin atau di perpus.
  • Jika bukan Dian yang memberi maka Dodi.
Bentuk-bentuk proposisi disyungtif yaitu:
  1. Proposisi disyungtif sempurna.
  • Mempunyai alternatif kontradiktif
  • Rumus : A mungkin B mungkin non B, seperti “Fajar mungkin masih hidup mungkin sudah mati (non-hidup)”.
  1. Proposisi disyungtif tidak sempurna.
  • idak sempurna alternatifnya tidak berbentuk kontradiktif.
  • Rumus : A mungkin B mungkin C, seperti “Gilang berhelm hitam atau berhelm putih”.
DISTRIBUSI DALAM LOGIKA
Distribusi berhubungan erat dengan pembahasan denotasi term obyek dan predikat terutama sekali term predikat. Distribusi merupakan penyebaran. Ada dua istilah yang harus diketahui adalah :
  • Tertebar (distributed) : term obyek atau predikat melingkupi seluruh denotasinya.
  • Tak tertebar (undistributed) : term obyek atau predikat hanya menyebut sebagian denotasinya.
Berikut adalah contoh tertebar tidaknya predikat dalam proposisi kategorik dari semua permasalahan :
  • Universal positif :
Semua merpati          adalah              burung
Distributed                               undistributed       
  • Partikular positif :
Sebagian mahasiswa            adalah             rajin”
Undistributed                                     Undistributed
  • Universal negatif :
Semua burung          bukan              ular
Distributed                              Distributed
  • Partikular negatif :
Semua mahasiswa                 tidak                rajin
Undistributed                                       Distributed
Leonard Euler (1707-1783) seorang ahli matematika Swiss menemukan jalan yang memudahkan kita memahami masalah penyebaran dengan diagram sebagai berikut :
  • Diagram I :
S.P
Denotasi S (Subyek) dan denotasi P (predikat) sama luasnya, misalnya : Semua makhluk adalah ciptaan Tuhan. Diagram ini untuk bentuk A yang term subyek dan predikatnya sama-sama tertebar.
  • Diagram II :
P
S
Denotasi P (predikat) lebih luas daripada denotasi S (subyek); misalnya : Semua anggota MPR bisa baca tulis. Diagram ini untuk bentuk A dan S tertebar dan P tidak tertebar. Jadi ada dua diagram untuk bentuk A.
  • Diagram III :
 P
S
Denotasi S sebagian tercangkup dalam denotasi P, misalnya : Sebagian mahasiswa adalah seniman. Diagram ini untuk bentuk I (S tak-tertebar, P tak-tertebar).
  • Diagram IV :
P
S
Denotasi S dan P tidak berkaitan secara keseluruhan : misalnya: Semua merpati bukan kucing. Diagram ini untuk bentuk E (S tertebar dan P tertebar ).
  • Diagram V :
P
S
Denotasi S sebagian tidak tercakup dalam denotasi P; misalnya : Sebagian mahasiswa tidak jujur. Diagram ini bentuk O (S tak-tertebar dan P tertebar).

DEKLARASI DAN INISIALISASI

Inisialisasi dan Deklarasi dalam Java
Ketika perintah deklarasi variabel dilaksanakan, komputer akan menyiapkan memori untuk digunakan oleh variabel ini. Memori ini harus diinisialisasi,yaitu diberi suatu nilai awal sebelum bisa digunakan dalam perintah berikutnya. Pada variabel lokal, pernyataan deklarasi sering diikuti oleh perintah pemberi nilai awal. Misalnya,
int i; // Deklarasi variabel yang bernama i
i = 0; // Beri nilai awal
Kita bisa juga melakukan deklarasi sekaligus inisialisasi variabel tersebut. Kedua pernyataan di atas bisa kita gabung menjadi
int i = 0; // Deklarasi variabel i sekaligus memberi nilai awal 0
Komputer akan tetap melakukan perintah di atas dalam dua langkah: deklarasi variabel, kemudian mengisi nilai awal 0. Nilai awal tidak harus berupa suatu bilangan, tetapi bisa juga berupa ekspresi yang menghasilkan suatu nilai. Dan juga kita boleh melakukan inisialisasi beberapa variabel sekaligus dalam 1 baris. Misalnya:
int x = 0, y = 1;
int awal, akhir = ‘A’ // Ok, tapi hanya akhir yang akan diinisialisasi
int N = 3, M = N+2; // Ok, karena N sudah diberi nilai awal sebelum digunakan oleh
Fitur ini biasa ditemui pada perulangan for, karena pernyataan 1 baris ini bisa dimasukkan sebagai variabel kontrol di awal pernyataan for. Karena variabel kontrol biasanya tidak berhubungan dengan bagian program di luar perulangan, maka akan lebih praktis jika deklarasi variabel kontrol itu dilakukan di awal perulangan.Contoh:
for ( int i = 0; i < 10; i++ ) {
System.out.println(i);
}
Tanda kurung { dan } di awal dan akhir untuk mempertegas bahwa i hanya bersifat lokal di dalam perulangan yang tidak bisa diakses lagi setelah perulangan selesai.
{
int i;
for ( i = 0; i < 10; i++ ) {
System.out.println(i);
}
}
Variabel anggota juga bisa diinisialisasi di mana dia dideklarasikan.Contoh:
public class Bank {
static double sukuBunga = 0.1; // sama dengan 10%
static long maxPenarikan = 3000000;
.
. // Perintah dan variabel lain
.
}
Variabel anggota statik akan dibuat pada saat kelas mulai dimasukkan memori oleh interpreter Java, inisialisinya pun dilaksanakan pada saat itu. Pada variabel anggota, deklarasi dan inisialisasi ini bukan hanya sekedar singkatan dari 2 perintah seperti pada variabel lokal. Pernyataan deklarasi adalah pernyataan yang bisa dibuat di luar subrutin, sedangkan inisialisasi tidak bisa dilakukan di luar subrutin.
Contoh di bawah tidak diperbolehkan dalam Java.
public class Bank {
static double sukuBunga;
sukuBunga = 0.1; // ILEGAL, perintah ini harus ada di dalam subrutin
}
Karenanya, deklarasi variabel anggota biasanya juga dirangkai dengan inisialisasi nilai awalnya. Jika tidak ada nilai awal yang diberikan, maka nilai awal bawaan akan digunakan.
Misalnya “static int i;” setara dengan “static int i = 0;”.
Konstanta dan Sifat “final”
Kadang-kadang dalam kondisi tertentu, kita ingin nilai suatu variabel tidak boleh berubah setelah diberi nilai awal. Misalnya, D diinisialisasi dengan nilai 3.14159, maka nilai ini akan bisa diubah oleh bagian lain dalam program. Di sini mungkin sang programmer ingin mendefinisikan suatu konstanta yang diberi nama “D” sebagai pengganti dari bilangan 3.14159.
Dengan cara ini, program akan lebih mudah dimengerti apabila program tersebut ditulis dalam “keliling = D*diamater;” daripada “pokok = 3.14159*diameter;”.
Dalam java, sifat “final” bisa digunakan pada deklarasi variabel untuk membuat nilai suatu variabel tidak bisa diubah setelah diinisialisasi. Misalnya
final static double D = 3.14159;
Apabila kita mencoba mengganti isi variabel tersebut, misalnya di tengah program dengan perintah “D = 20;” komputer akan menampilkan pesan kesalahan sintaks pada saat kompilasi.
Sifat “final” boleh diberikan pada variabel lokal dan bahkan pada parameter formal, akan tetapi paling berguna apabila diberikan pada variabel anggota. Variabel anggota statik yang dideklarasikan dengan sifat “final” juga disebut sebagai konstanta yang diberi nama.
Program akan jauh lebih mudah dibaca dengan menggunakan konstanta bernama ini jika diberikan pada sesuatu angka penting yang digunakan dalam program. Gaya penulisan yang dianjurkan untuk konstanta bernama ini adalah dengan menggunakan huruf besar dengan baris bawah (jika diperlukan).Contohnya:
final static double PI = 3.14159;
Gaya penulisan seperti ini juga digunakan oleh kelas standar Java, yang di dalamnya terdapat banyak sekali konstanta bernama. Misalnya, konstanta D sudah didefinisikan Java dalam kelas Math, yaitu Math.D, sehingga kita tidak perlu mendefinisikannya sendiri.
Contoh lain adalah memberikan nama untuk gaya huruf, seperti Font.PLAIN, Font.BOLD dan Font.ITALIC. Konstanta ini digunakan untuk menandai gaya huruf untuk digunakan oleh subrutin lain dalam kelas Font.
Salah satu alasan untuk menggunakan konstanta bernama adalah supaya kita bisa mengubah isinya dengan cepat apabila di kemudian hari kita ingin memiliki nilai konstanta yang berbeda. Apabila nilai ini diubah, maka kita harus mengkompilasi ulang program kita, karena nilai ini tidak bisa diubah ketika program dieksekusi.
Misalnya kita definisikan suku Bunga pada contoh di atas sebagai konstanta bernama, yaitu
static final double SUKU_BUNGA = 0.1;
Suatu saat misalnya 2 tahun kemudian, bank tersebut ingin mengubah suku bunganya menjadi 5% atau 0.05. Kita bisa mengubah nilainya hanya di satu tempat yaitu di mana deklarasi SUKU_BUNGA berada. Kita tidak perlu mencari semua nilai 0.1 di dalam program untuk menggantinya satu per satu. Selain repot, mungkin membingungkan karena 0.1 bisa digunakan untuk nilai lainnya, bukan hanya nilai suku bunga.
Aturan Penamaan dan Jangkauan (scope)
Ketika deklarasi variabel dieksekusi, komputer akan menyediakan tempat di memori untuk variabel tersebut. Nama variabel dapat digunakan oleh kode program untuk mengacu pada alamat di mana data tersebut disimpan di dalam memori. Bagian di dalam kode sumber (yaitu program Java yang kita tulis, masih dalam bentuk yang dimengerti manusia sebelum dikompilasi menjadi bahasa mesin) di mana variabel tersebut valid dan bisa digunakan disebut jangkauan variabel. Bukan hanya variabel yang memiliki jangkauan, tetapi juga nama subrutin dan nama parameter formal.
Untuk subrutin statik, jangkauannya lebih mudah dipahami. Jangkauan subrutin statik adalah kelas di mana ia didefinisikan. Kita bisa juga memanggil subrutin itu dari dalam kelas dirinya sendiri. Dalam pemrograman tingkat lanjut, teknik ini disebut rekursi (recursion), yaitu subrutin yang memanggil dirinya sendiri.
Untuk variabel anggota suatu kelas, aturannya sama, tetapi dengan sedikit pengecualian. Kita boleh memiliki variabel lokal atau parameter formal yang namanya sama dengan variabel anggota static. Jika ini terjadi, maka variabel anggota akan disembunyikan oleh Java. Dalam contoh berikut :
public class Game {
static int hitung; // variabel anggota
static void mainGame() {
int hitung; // variabel lokal
.
. // Perintah untuk main game
.
}
.
. // Variabel dan subrutin lain
.
} // akhir kelas Game
Kita lihat bahwa dalam subrutin mainGame(), “hitung” mengacu pada dua hal yaitu variabel lokal dan variabel anggota statik. Di luar kelas Game, “hitung” hanya mengacu pada variabel anggota statik. Dalam situasi seperti ini, di dalam subrutin mainGame() maka “hitung” sebagai variabel anggota akan disembunyikan oleh Java. Untuk menggunakan variabel anggota ini, kita bisa menggunakan nama lengkapnya yaituGame.hitung. Akan tetapi trik ini tidak bisa digunakan untuk variabel anggota yang tidak statik.
Jangkauan parameter formal di dalam suatu subrutin berada di dalam blok di mana ia dideklarasikan. Sehingga pada “for (int i=0; i<10; i++)” variabel i hanya bisa di lihat di dalam blok perulangan for, tetapi tidak valid di luar perulangan ini meskipun pada subrutin yang sama. Akan tetapi kita tidak boleh mendeklarasikan parameter formal dengan nama yang sama dengan variabel lokal yang berlaku di sana.Contohnya: void subrutinJelek(int y) { int x; while (y > 0) {
int x; // ERROR: x sudah didefinisikan sebelumnya
.
.
.
}
}
Dalam bahasa pemrograman lain, pernyataan di atas masih dibolehkan, yaitu dengan menyembunyikan x pada deklarasi sebelumnya. Akan tetapi pada Java, segera setelah blok yang memuat suatu variabel selesai, namanya bisa dipergunakan kembali.Contohnya:
void subrutinBagus(int y) {
while (y > 10) {
int x;
.
.
.
// Jangkauan x berakhir di sini
}
while (y > 0) {
int x; // OK: Deklarasi x sebelumnya sudah kadaluarsa
.
.
.
}
}
Ada beberapa hal lain yang menarik di Java. Nama subrutin dan variabel boleh sama, karena komputer akan selalu dapat membedakan mana subrutin atau variabel dengan melihat tanda buka kurung ‘(‘ setelah namanya. Variabel tidak pernah menggunakan tanda kurung setelah namanya. Sehingga suatu kelas boleh memiliki variabel anggota yang bernama “hitung” dan subrutin yang bernama “hitung()”.
Lebih jauh lagi, nama suatu kelas boleh menggunakan nama subrutin atau variabel yang sudah ada. Komputer bisa melihat apakah suatu nama berupa kelas, variabel atau subrutin. Kelas adalah juga tipe data, sehingga suatu kelas bisa digunakan untuk mendeklarasikan variabel dengan tipe kelas tersebut, atau membuat subrutin yang keluarannya bertipe kelas tersebut.
Atau sebagai contoh, perintah berikut bisa diterima oleh program Java :
static Test Test(Test Test) {
.
.
.
}
Test pertama adalah tipe keluaran suatu fungsi. Test kedua adalah nama subrutin. Yang ketiga adalah tipe data parameter, dan keempat adalah nama parameter normal.

VARIABEL DAN KONSTANTA

Variabel
  1. Pengertian Variabel
Pengertian variabel yang diambil dari wikipedia adalah berubah-ubah, tidak tetap. pengertian lainnya adalah deklarasi sesuatu yang memiliki nilai bervariasi, kemudian dapat juga didefiniskan sebagai hal yang berbeda beda dalam bahasa pemprograman yang diwakili oleh simbol untuk variasi nilai tertentu.
Variabel adalah suatu besaran yang dapat diubah atau berubah sehingga mempengaruhi peristiwa atau hasil penelitian. Dengan menggunakan variabel, kita akan mmeperoleh lebih mudah memahami permasalahan. Hal ini dikarenakan kita seolah-olah seudah mendapatkan jawabannya. Biasanya bentuk soal yang menggunakan teknik ini adalah soal counting (menghitung) atau menentuakan suatu bilangan. Dalam penelitian sains, variable adalah bagian penting yang tidak bisa dihilangkan.
1.1 Pengertian Variabel Menurut Ahli
  1. F.N Kerlinger
Variabel adalah sebuah konsep. Konsep tersebut memiliki nilai yang bermacam-macam. Variabel dapat merupakan sebuah konsep yang telah diubah, hal ini dilakukan dengan memusatkan aspek tertentu dari variabel itu sendiri.
  1. Freddy Rankuti
Variabel adalah sebuah konsep yang memiliki nilai yang bervariasi, maka nilai variabel dapat dibedakan menjadi empat tingkatan skala, yaitu rasio, ordinal, nominal dan internal.
  1. Sutrisno Hadi
Variabel adalah variasi dari objek penelitian, seperti ukuran tinggi manusia yang divariasikan menjadi tingkatan umur, kelamin bahkan lokasi tinggal manusia tersebut.
  1. Bagja Waluya
Variabel adalah konsep yang tidak pernah ketinggalan dalam setiap eksperimen/penelitian (research). Variabel diartikan sebagai gejala yang memiliki variasi.
  1. Tia Mutiara
Variabel adalah sesuatu yang menjadi fokus perhatian (center of attention) atau pusat yang memberikan pengaruh (effect) dan mempunyai nilai (value). Hal ini membuat variabel dapat berubah. Variabel dapat disebut juga sebagai peubah. Objek penelitian yang dapat menentukan hasil penelitian juga merupakan variabel.
  1. Macam Macam Variabel Dan Contohnya
  2.1  Variabel  Independen
Variable ini sering disebut sebagai variabel predictor, variabel pengaruh, kausa, variabel perlakuan, treatment, variabel risiko, stimulus, dan juga dikenal sebagai variabel bebas dan variabel predictor.
Variabel ini merupakan variabel yang menjadi sebab terjadinya perubahan atau mempengaruhi timbulnya variabel terikat (dependen). Oleh karena itu, variabel ini disebut variabel bebas (independent). Variabel bebas juga sering tuliskan dalam Structural Equation Modelling  sebagai variabel eksogen.
Contoh Hipotesis :
Terdapat pengaruh jumlah jam mengajar guru dalam seminggu terhadap kualitas dalam mengajar.
Variabel Independen : Jumlah jam mengajar
Variabel Dependen   : Kualitas mengajar
2.2  Variabel Dependen
Variabel ini sering disebut sebagai variabel konsekuen, variabel kriteria, variabel pengaruh, terikat, tergantung, dan variabel output.
Berbeda dengan variabel independet, variabel dependen dalam SEM atau permodelan persamaan struktural, variabel independen juga dikenal sebagai variabel indogen.
Alasan variabel dependen disebut variabel terikat adalah karena setiap variabel independen  akan mempengaruhi variabel terikat / independen
Contoh Hipotesis :
Terdapat pengaruh penggunaan buku teks berbahasainggris terhadap pemahaman konsep fisika siswa
Variabel dependen : Pemahaman konsep fisika
Variabel Independen: penggunaan buku teks berbahasa inggris
2.3  Variable Moderator
Pengertian Variabel Moderator adalah variabel yang berpengaruh baik itu memperkuat maupun memperlemah  hubungan (relation) antara variabel bebas dan variabel terikat.
Variabel independen kedua merupakan nama lain untuk variabel moderator.
Contoh Hipotesis :
Terdapat hubungan motivasi belajar dan hasil belajar  siswa yang positif bila peranan guru dalam menciptakan lingkunganbelajar sangat baik.
Variabel Independen : motivasi belajar
Variabel dependen : hasil belajar Variabel moderator : lingkungan belajar.
2.4 Variabel Intervening
Pengertian variabel intervening adalah variabel yang secara teoritis mempengaruhi hubungan (relation) antara variabel bebas dengan variabel terikat, tetapi tidak dapat diamati dan diukur.
Variabel ini merupakan variabel penyela/Antara yang terletak diantara variabel bebas dan bariabel terikat, sehingga Variabel Bebas tidak secara langsung mempengaruhi berubahnya atau timbulnya Variabel Terikat.
Contoh :
Tinggi rendahnya pendapatan akan mempengaruhi secara tidak langsung terhadap umur harapan hidup. Di sini ada variabel antaranya yaitu yang berupa gaya hidup seseorang. Antara variabel penghasilan dan gaya hidup terdapat variabel moderator yaitu Budaya Lingkungan Tempat Tinggal.
2.5 Variabel  kontrol
Pengertian variabel kontrol adalah variabel yang dikendalikan atau dibuat konstan sehingga hubungan variabel bebas terhadap variabel terikat tidak dipengaruhi oleh faktor dari luar yang tidak diteliti.
Variabel kontrol sering dipakai oleh peneliti dalam penelitian yang bersifat membandingkan, melalui penelitian eksperimental.
Contoh Hipotesis :
Terdapat pengaruh letak kampus terhadap pemilihan jurusan pada saat pendaftaran di kalangan calon mahasiswi baru.
Variabel Independen : Letak kampusVariabel dependen : Jurusan yang dipilihVariabel kontrol : calon mahasiswi baru
  1. Konstanta
  2. Pengertian Konstanta
Konstanta adalah variabel yang nilai datanya bersifat tetap dan tidak bisa diubah. Jadi konstanta adalah juga variabel, dan bedanya adalah pada nilai yang disimpannya. Jika nilai datanya sepanjang program berjalan tidak berubah-ubah, maka sebuah varibel lebih baik diperlakukan sebagai konstanta. Pada sebuah kode program, biasanya nilai data dari konstanta diberikan langsung di bagian deklarasi konstanta. Sedangkan untuk variabel, biasanya hanya ditentukan nama variabel dan tipe datanya tanpa isian nilai data. Aturan penamaan variabel juga berlaku untuk penamaan konstanta. Demikian juga aturan penetapan tipe data.Sebagai contoh, jika kita membuat program perhitungan matematik yang menggunakan nilai pi (3.14159) yang mungkin akan muncul dibanyak tempat pada kode program, kita dapat membuat pi sebagai konstanta. Penggunaan konstanta pi akan lebih memudahkan penulisan kode program dibanding harus mengetikkan nilai 3.14159 berulang-ulang

Selasa, 27 Oktober 2015

ALGORITMA DAN PEMOGRAMAN


1.  Apakah Itu Algoritma
Ditinjau dari asal-usul katanya, kata Algoritma sendiri mempunyai sejarah yang aneh. Orang hanya menemukan kata algorism yang berarti proses menghitung dengan angka arab. Anda dikatakan algorist jika Anda menghitung menggunakan angka arab. Para ahli bahasa berusaha menemukan asal kata ini namun hasilnya kurang memuaskan. Akhirnya para ahli sejarah matematika menemukan asal kata tersebut yang berasal dari nama penulis buku arab yang terkenal yaitu Abu Ja’far Muhammad Ibnu Musa Al-Khuwarizmi. Al-Khuwarizmi dibaca orang barat menjadi Algorism. Al-Khuwarizmi menulis buku yang berjudul Kitab Al Jabar Wal-Muqabala yang artinya “Buku pemugaran dan pengurangan” (The book of restoration and reduction). Dari judul buku itu kita juga memperoleh akar kata “Aljabar” (Algebra). Perubahan kata dari algorism menjadi algorithm muncul karena kata algorism sering dikelirukan dengan arithmetic, sehingga akhiran –sm berubah menjadi –thm. Karena perhitungan dengan angka Arab sudah menjadi hal yang biasa, maka lambat laun kata algorithm berangsur-angsur dipakai sebagai metode perhitungan (komputasi) secara umum, sehingga kehilangan makna kata aslinya. Dalam bahasa Indonesia, kata algorithm diserap menjadi algoritma.
2.  Definisi Algoritma

“Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis dan logis”. Kata logis merupakan kata kunci dalam algoritma. Langkah-langkah dalam algoritma harus logis dan harus dapat ditentukan bernilai salah atau benar. Dalam beberapa konteks, algoritma adalah spesifikasi urutan langkah untuk melakukan pekerjaan tertentu. Pertimbangan dalam pemilihan algoritma adalah, pertama, algoritma haruslah benar. Artinya algoritma akan memberikan keluaran yang dikehendaki dari sejumlah masukan yang diberikan. Tidak peduli sebagus apapun algoritma, kalau memberikan keluaran yang salah, pastilah algoritma tersebut bukanlah algoritma yang baik.
Pertimbangan kedua yang harus diperhatikan adalah kita harus mengetahui seberapa baik hasil yang dicapai oleh algoritma tersebut. Hal ini penting terutama pada algoritma untuk menyelesaikan masalah yang memerlukan aproksimasi hasil (hasil yang hanya berupa pendekatan). Algoritma yang baik harus mampu memberikan hasil yang sedekat mungkin dengan nilai yang sebenarnya.
Ketiga adalah efisiensi algoritma. Efisiensi algoritma dapat ditinjau dari 2 hal yaitu efisiensi waktu dan memori. Meskipun algoritma memberikan keluaran yang benar (paling mendekati), tetapi jika kita harus menunggu berjam-jam untuk mendapatkan keluarannya, algoritma tersebut biasanya tidak akan dipakai, setiap orang menginginkan keluaran yang cepat. Begitu juga dengan memori, semakin besar memori yang terpakai maka semakin buruklah algoritma tersebut. Dalam kenyataannya, setiap orang bisa membuat algoritma yang berbeda untuk menyelesaikan suatu permasalahan, walaupun terjadi perbedaan dalam menyusun algoritma, tentunya kita mengharapkan keluaran yang sama. Jika terjadi demikian, carilah algoritma yang paling efisien dan cepat.
3.  Beda Algoritma dan Program

Program adalah kumpulan pernyataan komputer, sedangkan metode dan tahapan sistematis dalam program adalah algoritma. Program ditulis dengan menggunakan bahasa pemrograman. Jadi bisa disebut bahwa program adalah suatu implementasi dari bahasa pemrograman. Beberapa pakar memberi formula bahwa :

Program = Algoritma + Bahasa (Struktur Data)
Bagaimanapun juga struktur data dan algoritma berhubungan sangat erat pada sebuah program. Algoritma yang baik tanpa pemilihan struktur data yang tepat akan membuat program menjadi kurang baik, demikian juga sebaliknya.
Pembuatan algoritma mempunyai banyak keuntungan di antaranya :
  • Pembuatan atau penulisan algoritma tidak tergantung pada bahasa pemrograman manapun, artinya penulisan  algoritma independen dari bahasa pemrograman dan komputer yang melaksanakannya.
  • Notasi algoritma dapat diterjemahkan ke dalam berbagai bahasa pemrograman.
  • Apapun bahasa pemrogramannya, output yang akan dikeluarkan sama karena algoritmanya sama.
Beberapa hal yang perlu diperhatikan dalam membuat algoritma :
  • Teks algoritma berisi deskripsi langkah-langkah penyelesaian masalah. Deskripsi tersebut dapat ditulis dalam notasi apapun asalkan mudah dimengerti dan dipahami.
  • Tidak ada notasi yang baku dalam penulisan teks algoritma seperti notasi bahasa pemrograman. Notasi yang digunakan dalam menulis algoritma disebut notasi algoritmik.
  • Setiap orang dapat membuat aturan penulisan dan notasi algoritmik sendiri. Hal ini dikarenakan teks algoritma tidak sama dengan teks program. Namun, supaya notasi algoritmik mudah ditranslasikan ke dalam notasi bahasa pemrograman tertentu, maka sebaiknya notasi algoritmik tersebut berkorespondensi dengan notasi bahasa pemrograman secara umum.
  • Notasi algoritmik bukan notasi bahasa pemrograman, karena itu pseudocode dalam notasi algoritmik tidak dapat dijalankan oleh komputer. Agar dapat dijalankan oleh komputer, pseudocode dalam notasi algoritmik harus ditranslasikan atau diterjemahkan ke dalam notasi bahasa pemrograman yang dipilih. Perlu diingat bahwa orang yang menulis program sangat terikat dalam aturan tata bahasanya dan spesifikasi mesin yang menjalannya.
  • Algoritma sebenarnya digunakan untuk membantu kita dalam mengkonversikan suatu permasalahan ke dalam bahasa pemrograman.
  • Algoritma merupakan hasil pemikiran konseptual, supaya dapat dilaksanakan oleh komputer, algoritma harus ditranslasikan ke dalam notasi bahasa pemrograman. Ada beberapa hal yang harus diperhatikan pada translasi tersebut, yaitu :
a.  Pendeklarasian variabel
Untuk mengetahui dibutuhkannya pendeklarasian variabel dalam penggunaan bahasa pemrograman apabila    tidak semua bahasa pemrograman membutuhkannya.
b.  Pemilihan tipe data
Apabila bahasa pemrograman yang akan digunakan membutuhkan pendeklarasian variabel maka perlu hal ini dipertimbangkan pada saat pemilihan tipe data.
c.  Pemakaian instruksi-instruksi
Beberapa instruksi mempunyai kegunaan yang sama tetapi masing-masing memiliki kelebihan dan kekurangan yang berbeda.
d.  Aturan sintaksis
Pada saat menuliskan program kita terikat dengan aturan sintaksis dalam bahasa pemrograman yang akan digunakan.
e.  Tampilan hasil
Pada saat membuat algoritma kita tidak memikirkan tampilan hasil yang akan disajikan. Hal-hal teknis ini diperhatikan ketika mengkonversikannya menjadi program.
f.  Cara pengoperasian compiler atau interpreter.
Bahasa pemrograman yang digunakan termasuk dalam kelompok compiler atau interpreter.
4.  Algoritma Merupakan Jantung Ilmu Informatika

Algoritma adalah jantung ilmu komputer atau informatika. Banyak cabang ilmu komputer yang mengarah ke dalam terminologi algoritma. Namun, jangan beranggapan algoritma selalu identik dengan ilmu komputer saja. Dalam kehidupan sehari-hari pun banyak terdapat proses yang dinyatakan dalam suatu algoritma. Cara-cara membuat kue atau masakan yang dinyatakan dalam suatu resep juga dapat disebut sebagai algoritma. Pada setiap resep selalu ada urutan langkah-langkah membuat masakan. Bila langkah-langkahnya tidak logis, tidak dapat dihasilkan masakan yang diinginkan. Ibu-ibu yang mencoba suatu resep masakan akan membaca satu per satu langkah-langkah pembuatannya lalu ia mengerjakan proses sesuai yang ia baca. Secara umum, pihak (benda) yang mengerjakan proses disebut pemroses (processor). Pemroses tersebut dapat berupa manusia, komputer, robot atau alat-alat elektronik lainnya. Pemroses melakukan suatu proses dengan melaksanakan atau “mengeksekusi” algoritma yang menjabarkan proses tersebut.
Algoritma adalah deskripsi dari suatu pola tingkah laku yang dinyatakan secara primitif yaitu aksi-aksi yang didefenisikan sebelumnya dan diberi nama, dan diasumsikan sebelumnya bahwa aksi-aksi tersebut dapat kerjakan sehingga dapat menyebabkan kejadian.
Melaksanakan algoritma berarti mengerjakan langkah-langkah di dalam algoritma tersebut. Pemroses mengerjakan proses sesuai dengan algoritma yang diberikan kepadanya. Juru masak membuat kue berdasarkan resep yang diberikan kepadanya, pianis memainkan lagu berdasarkan papan not balok. Karena itu suatu algoritma harus dinyatakan dalam bentuk yang dapat dimengerti oleh pemroses. Jadi suatu pemroses harus:
  • Mengerti setiap langkah dalam algoritma.
  • Mengerjakan operasi yang bersesuaian dengan langkah tersebut.
5.  Mekanisme Pelaksanaan Algoritma oleh Pemroses
Komputer hanyalah salah satu pemroses. Agar dapat dilaksanakan oleh komputer, algoritma harus ditulis dalam notasi bahasa pemrograman sehingga dinamakan program. Jadi program adalah perwujudan atau implementasi teknis algoritma yang ditulis dalam bahasa pemrograman tertentu sehingga dapat dilaksanakan oleh komputer.
Kata “algoritma” dan “program” seringkali dipertukarkan dalam penggunaannya. Misalnya ada orang yang berkata seperti ini: “program pengurutan data menggunakan algoritma selection sort”. Atau pertanyaan seperti ini: “bagaimana algoritma dan program menggambarkan grafik tersebut?”. Jika Anda sudah memahami pengertian algoritma yang sudah disebutkan sebelum ini, Anda dapat membedakan arti kata algoritma dan program. Algoritma adalah langkah-langkah penyelesaikan masalah, sedangkan program adalah realisasi algoritma dalam bahasa pemrograman. Program ditulis dalam salah satu bahasa pemrograman dan kegiatan membuat program disebut pemrograman (programming). Orang yang menulis program disebut pemrogram (programmer). Tiap-tiap langkah di dalam program disebut pernyataan atau instruksi. Jadi, program tersusun atas sederetan instruksi. Bila suatu instruksi dilaksanakan, maka operasi-operasi yang bersesuaian dengan instruksi tersebut dikerjakan komputer.
Secara garis besar komputer tersusun atas empat komponen utama yaitu, piranti masukan, piranti keluaran, unit pemroses utama, dan memori. Unit pemroses utama (Central Processing Unit – CPU) adalah “otak” komputer, yang berfungsi mengerjakan operasi-operasi dasar seperti operasi perbandingan, operasi perhitungan, operasi membaca, dan operasi menulis. Memori adalah komponen yang berfungsi menyimpan atau mengingatingat.
Yang disimpan di dalam memori adalah program (berisi operasi-operasi yang akan dikerjakan oleh CPU) dan data atau informasi (sesuatu yang diolah oleh operasi-operasi). Piranti masukan dan keluaran (I/O devices) adalah alat yang memasukkan data atau program ke dalam memori, dan alat yang digunakan komputer untuk mengkomunikasikan hasil-hasil aktivitasnya. Contoh piranti masukan antara lain, papan kunci (keyboard), pemindai (scanner), dan cakram (disk). Contoh piranti keluaran adalah, layar peraga (monitor), pencetak (printer), dan cakram.
Mekanisme kerja keempat komponen di atas dapat dijelaskan sebagai berikut. Mula-mula program dimasukkan ke dalam memori komputer. Ketika program dilaksanakan (execute), setiap instruksi yang telah tersimpan di dalam memori dikirim ke CPU. CPU mengerjakan operasioperasi yang bersesuaian dengan instruksi tersebut. Bila suatu operasi memerlukan data, data dibaca dari piranti masukan, disimpan di dalam memori lalu dikirim ke CPU untuk operasi yang memerlukannya tadi. Bila proses menghasilkan keluaran atau informasi, keluaran disimpan ke dalam memori, lalu memori menuliskan keluaran tadi ke piranti keluaran (misalnya dengan menampilkannya di layar monitor).
6.  Belajar Memprogram dan Belajar Bahasa Pemrograman
Belajar memprogram tidak sama dengan belajar bahasa pemrograman. Belajar memprogram adalah belajar tentang metodologi pemecahan masalah, kemudian menuangkannya dalam suatu notasi tertentu yang mudah dibaca dan dipahami. Sedangkan belajar bahasa pemrograman berarti belajar memakai suatu bahasa aturan-aturan tata bahasanya, pernyataan-pernyataannya, tata cara pengoperasian compiler-nya, dan memanfaatkan pernyataan-pernyataan tersebut untuk membuat program yang ditulis hanya dalam bahasa itu saja. Sampai saat ini terdapat puluhan bahasa pemrogram, antara lain bahasa rakitan (assembly), Fortran, Cobol, Ada, PL/I, Algol, Pascal, C, C++, Basic, Prolog, LISP, PRG, bahasabahasa simulasi seperti CSMP, Simscript, GPSS, Dinamo. Berdasarkan terapannya, bahasa pemrograman dapat digolongkan atas dua kelompok besar :
  • Bahasa pemrograman bertujuan khusus. Yang termasuk kelompok ini adalah Cobol (untuk terapan bisnis dan administrasi). Fortran (terapan komputasi ilmiah), bahasa rakitan (terapan pemrograman mesin), Prolog (terapan kecerdasan buatan), bahasa-bahasa simulasi, dan sebagainya.
  • Bahasa perograman bertujuan umum, yang dapat digunakan untuk berbagai aplikasi. Yang termasuk kelompok ini adalah bahasa Pascal, Basic dan C. Tentu saja pembagian ini tidak kaku. Bahasabahasabertujuan khusus tidak berarti tidak bisa digunakan untuk aplikasi lain. Cobol misalnya, dapat juga digunakan untuk terapan ilmiah, hanya saja kemampuannya terbatas. Yang jelas, bahasabahasa pemrograman yang berbeda dikembangkan untuk bermacam-macam terapan yang berbeda pula.
Berdasarkan pada apakah notasi bahasa pemrograman lebih “dekat” ke mesin atau ke bahasa manusia, maka bahasa pemrograman dikelompokkan atas dua macam :
  • Bahasa tingkat rendah. Bahasa jenis ini dirancang agar setiap instruksinya langsung dikerjakan oleh komputer, tanpa harus melalui penerjemah (translator). Contohnya adalah bahasa mesin. CPU mengambil instruksi dari memori, langsung mengerti dan langsung mengerjakan operasinya. Bahasa tingkat rendah bersifat primitif, sangat sederhana, orientasinya lebih dekat ke mesin, dan sulit dipahami manusia. Sedangkan bahasa rakitan dimasukkan ke dalam kelompok ini karena alasan notasi yang dipakai dalam bahasa ini lebih dekat ke mesin, meskipun untuk melaksanakan instruksinya masih perlu penerjemahan ke dalam bahasa mesin.
  • Bahasa tingkat tinggi, yang membuat pemrograman lebih mudah dipahami, lebih “manusiawi”, dan berorientasi ke bahasa manusia (bahasa Inggris). Hanya saja, program dalam bahasa tingkat tinggi tidak dapat langsung dilaksanakan oleh komputer. Ia perlu diterjemahkan terlebih dahulu oleh sebuah translator bahasa (yang disebut kompilator atau compiler) ke dalam bahasa mesin sebelum akhirnya dieksekusi oleh CPU. Contoh bahasa tingkat tinggi adalah Pascal, PL/I, Ada, Cobol, Basic, Fortran, C, C++, dan sebagainya.
Bahasa pemrograman bisa juga dikelompokkan berdasarkan pada tujuan dan fungsinya. Di antaranya adalah :
7.  Menilai Sebuah Algoritma

Ketika manusia berusaha memecahkan masalah, metode atau teknik yang digunakan untuk memecahkan masalah itu ada kemungkinan bisa banyak (tidak hanya satu). Dan kita memilih mana yang terbaik di antara teknikteknik itu. Hal ini sama juga dengan algoritma, yang memungkinkan suatu permasalahan dipecahkan dengan metode dan logika yang berlainan. Yang menjadi pertanyaan adalah bagaimana mengukur mana algoritma yang terbaik?. Beberapa persyaratan untuk menjadi algoritma yang baik adalah :
  • Tingkat kepercayaannya tinggi (realibility). Hasil yang diperoleh dari proses harus berakurasi tinggi dan benar.
  • Pemrosesan yang efisien (cost rendah). Proses harus diselesaikan secepat mungkin dan frekuensi kalkulasi yang sependek mungkin.
  • Sifatnya general. Bukan sesuatu yang hanya untuk menyelesaikan satu kasus saja, tapi juga untuk kasus lain yang lebih general.
  • Bisa dikembangkan (expandable). Haruslah sesuatu yang dapat kita kembangkan lebih jauh berdasarkan perubahan requirement yang ada.
  • Mudah dimengerti. Siapapun yang melihat, dia akan bisa memahami algoritma Anda. Susah dimengertinya suatu program akan membuat susah di-maintenance (kelola).
  • Portabilitas yang tinggi (portability). Bisa dengan mudah diimplementasikan di berbagai platform komputer.
  • Precise (tepat, betul, teliti). Setiap instruksi harus ditulis dengan seksama dan tidak ada keragu-raguan, dengan demikian setiap instruksi harus dinyatakan secara eksplisit dan tidak ada bagian yang dihilangkan karena pemroses dianggap sudah mengerti. Setiap langkah harus jelas dan pasti.
Contoh :   Tambahkan 1 atau 2 pada x.
Instruksi di atas terdapat keraguan.
  • Jumlah langkah atau instruksi berhingga dan tertentu. Artinya, untuk kasus yang sama banyaknya, langkah harus tetap dan tertentu meskipun datanya berbeda.
  • Efektif. Tidak boleh ada instruksi yang tidak mungkin dikerjakan oleh pemroses yang akan menjalankannya.
Contoh :   Hitung akar 2 dengan presisi sempurna.
Instruksi di atas tidak efektif, agar efektif instruksi tersebut diubah.
Misal : Hitung akar 2 sampai lima digit di belakang koma.
  • Harus terminate. Jalannya algoritma harus ada kriteria berhenti. Pertanyaannya adalah apakah bila jumlah instruksinya berhingga maka pasti terminate?
  • Output yang dihasilkan tepat. Jika langkah-langkah algoritmanya logis dan diikuti dengan seksama maka dihasilkan output yang diinginkan.
Sedangkan kriteria Algoritma menurut Donald E. Knuth adalah :
  1. Input: algoritma dapat memiliki nol atau lebih inputan dari luar.
  2. Output: algoritma harus memiliki minimal satu buah output keluaran.
  3. Definiteness (pasti): algoritma memiliki instruksi-instruksi yang jelas dan tidak ambigu.
  4. Finiteness (ada batas): algoritma harus memiliki titik berhenti (stopping role).
  5. Effectiveness (tepat dan efisien): algoritma sebisa mungkin harus dapat dilaksanakan dan efektif. Contoh instruksi yang tidak efektif adalah: A = A + 0 atau A = A * 1
Namun ada beberapa program yang memang dirancang untuk unterminatable : contoh Sistem Operasi.
8.  Penyajian Algoritma
Penyajian algoritma secara garis besar bisa dalam 2 bentuk penyajian yaitu tulisan dan gambar. Algoritma yang disajikan dengan tulisan yaitu dengan struktur bahasa tertentu (misalnya bahasa Indonesia atau bahasa Inggris) dan pseudocode. Pseudocode adalah kode yang mirip dengan kode pemrograman yang sebenarnya seperti Pascal, atau C, sehingga lebih tepat digunakan untuk menggambarkan algoritma yang akan dikomunikasikan kepada pemrogram. Sedangkan algoritma disajikan dengan gambar, misalnya dengan flowchart. Secara umum, pseudocode mengekspresikan ide-ide secara informal dalam proses penyusunan algoritma. Salah satu cara untuk menghasilkan kode pseudo adalah dengan meregangkan aturan-aturan bahasa formal yang dengannya versi akhir dari algoritma akan diekspresikan. Pendekatan ini umumnya digunakan ketika bahasa pemrograman yang akan digunakan telah diketahui sejak awal.

Flowchart merupakan gambar atau bagan yang memperlihatkan urutan dan hubungan antar proses beserta pernyataannya. Gambaran ini dinyatakan dengan simbol. Dengan demikian setiap simbol menggambarkan proses tertentu. Sedangkan antara proses digambarkan dengan garis penghubung. Dengan menggunakan flowchart akan memudahkan kita untuk melakukan pengecekan bagian-bagian yang terlupakan dalam analisis masalah. Di
samping itu flowchart juga berguna sebagai fasilitas untuk berkomunikasi antara pemrogram yang bekerja dalam tim suatu proyek.
Ada dua macam flowchart yang menggambarkan proses dengan komputer, yaitu :
  • Flowchart sistem yaitu bagan dengan simbol-simbol tertentu yang menggambarkan urutan prosedur dan proses suatu file dalam suatu media menjadi file di dalam media lain, dalam suatu sistem pengolahan data. Beberapa contoh Flowchart sistem:
  • Flowchart program yaitu bagan dengan simbol-simbol tertentu yang menggambarkan urutan proses dan hubungan antar proses secara mendetail di dalam suatu program.

Kaidah-Kaidah Umum Pembuatan Flowchart Program
Dalam pembuatan flowchart Program tidak ada rumus atau patokan yang bersifat mutlak. Karena flowchart merupakan gambaran hasil pemikiran dalam menganalisis suatu masalah dengan komputer. Sehingga flowchart yang dihasilkan dapat bervariasi antara satu pemrogram dengan yang lainnya. Namun secara garis besar setiap pengolahan selalu terdiri atas 3 bagian utama, yaitu :
  1. Input,
  2. Proses pengolahan dan
  3. Output
Untuk pengolahan data dengan komputer, urutan dasar pemecahan suatu masalah:
  1. START, berisi pernyataan untuk persiapan peralatan yang diperlukan sebelum menangani pemecahan persoalan.
  2. READ, berisi pernyataan kegiatan untuk membaca data dari suatu peralatan input.
  3. PROSES, berisi kegiatan yang berkaitan dengan pemecahan persoalan sesuai dengan data yang dibaca.
  4. WRITE, berisi pernyataan untuk merekam hasil kegiatan ke peralatan output.
  5. END, mengakhiri kegiatan pengolahan.
Walaupun tidak ada kaidah-kaidah yang baku dalam penyusunan flowchart, namun ada beberapa anjuran :
  1. Hindari pengulangan proses yang tidak perlu dan logika yang berbelit sehingga jalannya proses menjadi singkat.
  2. Jalannya proses digambarkan dari atas ke bawah dan diberikan tanda panah untuk memperjelas.
  3. Sebuah flowchart diawali dari satu titik START dan diakhiri dengan END.
Berikut merupakan beberapa contoh simbol flowchart yang disepakati oleh dunia pemrograman :
Untuk memahami lebih dalam mengenai flowchart ini, akan diambil sebuah kasus sederhana.

Kasus : Buatlah sebuah rancangan program dengan menggunakan flowchart, mencari luas persegi panjang.


Solusi : Perumusan untuk mencari luas persegi panjang adalah :
L = p . l
di mana, L adalah Luas persegi panjang, p adalah panjang persegi, dan l adalah lebar persegi.
Keterangan :
  1. Simbol pertama menunjukkan dimulainya sebuah program.
  2. Simbol kedua menunjukkan bahwa input data dari p dan l.
  3. Data dari p dan l akan diproses pada simbol ketiga dengan menggunakan perumusan L = p. l.
  4. Simbol keempat menunjukkan hasil output dari proses dari simbol ketiga.
  5. Simbol kelima atau terakhir menunjukkan berakhirnya program dengan tanda End.
9.  Struktur Dasar Algoritma
Algoritma berisi langkah-langkah penyelesaian suatu masalah. Langkah-langkah tersebut dapat berupa runtunan aksi (sequence), pemilihan aksi (selection), pengulangan aksi (iteration) atau kombinasi dari ketiganya. Jadi struktur dasar pembangunan algoritma ada tiga, yaitu:
  1. Struktur Runtunan
  2. Digunakan untuk program yang pernyataannya sequential atau urutan.
  3. Struktur Pemilihan
  4. Digunakan untuk program yang menggunakan pemilihan atau penyeleksian kondisi.
  5. Struktur Perulangan
  6. Digunakan untuk program yang pernyataannya akan dieksekusi berulang-ulang.

Dalam Algoritma, tidak dipakai simbol-simbol / sintaks dari suatu bahasa pemrograman tertentu, melainkan bersifat umum dan tidak tergantung pada suatu bahasa pemrograman apapun juga. Notasi-notasi algoritma dapat digunakan untuk seluruh bahasa pemrograman manapun.
Definisi Pseudo-code
Kode atau tanda yang menyerupai (pseudo) atau merupakan penjelasan cara menyelesaikan suatu masalah. Pseudo-code sering digunakan oleh manusia untuk menuliskan algoritma.
Contoh kasus : mencari bilangan terbesar dari dua bilangan yang diinputkan
Solusi Pseudo-code :
  1. Masukkan bilangan pertama
  2. Masukkan bilangan kedua
  3. Jika bilangan pertama > bilangan kedua maka kerjakan langkah 4, jika tidak, kerjakan langkah 5.
  4. Tampilkan bilangan pertama
  5. Tampilkan bilangan kedua
Solusi Algoritma :
  1. Masukkan bilangan pertama (a)
  2. Masukkan bilangan kedua (b)
  3. if a > b then kerjakan langkah 4
  4. print a
  5. print b
Contoh Lain Algortima dan Pseudo-code :
10.  Tahapan dalam Pemrograman
Langkah-langkah yang dilakukan dalam menyelesaikan masalah dalam pemrograman dengan komputer adalah :
  • Definisikan Masalah
  • Buat Algoritma dan Struktur Cara Penyelesaian
  • Menulis Program
  • Mencari Kesalahan
  • Uji dan Verifikasi Program
  • Dokumentasi Program
  • Pemeliharaan Program
Sumber :