Algoritma dan Pemrograman



Logika merupakan hal yang penting bagi seseorang untuk membuat suatu algoritma dan merupakan dasar dalam menentukan langkah-langkah algoritma. Logika adalah ilmu yang mempelajari prinsip-prinsip yang harus diikuti agar dapat berpikir benar menurut aturan yang berlaku. Dengan logika, manusia dapat memilah mana yang benar dan mana yang salah. Selain itu, dengan logika yang baik seseorang dapat berpikir logis dan sistematis.

  1. Pengertian Algoritma

Algoritma merupakan urutan langkah-langkah logis (benar sesuai dengan logika manusia) dalam penyelesaian masalah yang disusun secara sistematis. Kata logis merupakan keyword dalam algoritma. Susunan langkah-langkah dalam algoritma harus logis dan dapat ditentukan apakah bernilai salah atau benar. Jika langkah-langkahnya tidak logis maka output yang dihasilkan tidak benar.


Tujuan mempelajari logika dan algoritma adalah untuk membiasakan diri berpikir logis dan sistematis dalam menyusun tahapan-tahapan penyelesaian masalah.



Gambar: dokumen pribadi


Algoritma disusun dengan pelaksanaan proses yang memiliki urutan instruksi logis yang dikerjakan sejumlah operasi di sebuah processor (pemroses). Komputer merupakan salah satu pemroses. Agar algoritma dapat dilaksanakan oleh komputer, maka algoritma tersebut harus dimanipulasi ke dalam bahasa pemrograman hingga akhirnya dinamakan program.


Program ditulis dalam bahasa pemrograman dan kegiatan membuat program disebut dengan programming. Sedangkan orang yang menyusun atau menulis kode program disebut dengan programmer.


Setiap langkah disebut pernyataan atau instruksi atau bisa disebut dengan sintaks (syntax) yang merupakan cara penulisan kode program. Susunan instruksi atau syntax tidaklah sama pada semua bahasa pemrograman, ia mengikuti bahasa pemrograman yang digunakan. Jika suatu instruksi dilaksanakan, maka operasi-operasi yang terkait dengan instruksi tersebut akan dikerjakan oleh komputer.

Proses

Pada dasarnya, komputer tersusun dari 4 komponen utama, yaitu piranti masukan (input), piranti keluaran (output), unit pemroses (CPU), dan memori.



Gambar: dokumen pribadi


Awalnya, program dimasukan ke dalam memori komputer. Kemudian program dijalankan (execute), setiap instruksi yang telah terekam di dalam memori lalu dikirimkan ke CPU. CPU menjalankan operasi-operasi yang sesuai dengan instruksi tersebut. Apabila suatu operasi memerlukan data, maka data akan dibaca dari input device (piranti masukan). Apabila proses menghasilkan keluaran atau informasi, maka keluaran tersebut akan disimpan di memori. Kemudian mengeluarkan hasilnya ke output device (piranti keluaran) misalnya, menampilkannya di layar monitor.

Pertimbangan Memilih Algoritma

Ada beberapa pertimbangan dalam pemilihan algoritma diantaranya sebagai berikut.

  1. Algoritma harus benar

Tidak peduli sebagus apapun algoritma, jika memberikan keluaran yang salah pasti algoritma tersebut bukan algoritma yang baik.

  1. Seberapa baik hasil yang dicapai

Algoritma yang baik harus mampu memberikan hasil sedekat mungkin dengan nilai yang sebenarnya.

  1. Efisiensi algoritma

Efisiensi algoritma ini mencakup 2 hal yaitu efisiensi waktu dan memori. Meskipun algoritma yang kita hasilkan benar, tetapi jika waktu menunggu harus berjam-jam maka akan terlalu memakan waktu. wasting time. Setiap orang memerlukan output dengan waktu yang cepat. Begitu juga dengan penyimpanan atau memori, semakin besar memori yang terpakai, maka semakin tidak baik algoritma tersebut.


Manfaat Belajar Algoritma

Beberapa manfaat dari mempelajari algoritma dalam kehidupan sehari-hari diantaranya sebagai berikut.

  1. Memperkuat cara berpikir agar dapat menyelesaikan masalah.

  2. Membantu otak agar dapat berpikir jangka panjang.

  3. Memperkuat analisis ketika merancang program.


1 komentar:

  1. 1. Pengujian merupakan sebuah proses mengeksekusi program dengan tujuan untuk menemukan error pada program.

    2.
    - Pengujian menunjukkan adanya cacat

    Pengujian menunjukkan adanya cacat pada perangkat lunak. Tujuan pengujian adalah untuk membuat perangkat lunak gagal. Pengujian yang cukup mengurangi keberadaan cacat. Dalam hal penguji tidak dapat menemukan cacat setelah pengujian regresi berulang tidak berarti bahwa perangkat lunak bebas bug. Menguji pembicaraan tentang keberadaan cacat dan jangan bicara tentang tidak adanya cacat. Bahkan beberapa pengujian tidak dapat memastikan perangkat lunak 100% bebas bug. Pengujian dapat mengurangi jumlah cacat tetapi tidak menghilangkan semua cacat.

    - Pengujian menyeluruh adalah hal yang tidak mungkin

    Pengujian menyeluruh artinya adalah Menguji semua fungsi menggunakan semua input dan prakondisi yang valid dan tidak valid, dikenal sebagai Pengujian menyeluruh.

    Mengapa tidak mungkin bisa melakukan Pengujian Lengkap?

    Karena untuk melakukan pengujian secara menyeluruh membutuhkan waktu yang lebih lama, sedangkan software memiliki jadwal untuk segera rilis. Sehingga akan pengujian akan difokuskan pada risiko dan prioritas dari perangkat lunak itu sendiri. Dengan cara menguji beberapa kasus uji dan menganggap perangkat lunak itu benar dan akan menghasilkan output yang benar di setiap kasus uji. Jika perangkat lunak akan menguji setiap kasus uji maka akan membutuhkan lebih banyak biaya, tenaga, dll. Dan yang tidak praktis.

    - Pengujian Lebih Awal

    Cacat yang terdeteksi pada fase awal SDLC akan sangat lebih murah. Jadi melakukan pengujian awal dapat mengurangi biaya memperbaiki cacat. Untuk kinerja perangkat lunak yang lebih baik, pengujian perangkat lunak akan dimulai pada tahap awal yaitu pengujian akan dilakukan pada tahap analisis persyaratan.

    - Pengelompokan cacat

    Clustering Cacat dalam pengujian perangkat lunak berarti bahwa modul kecil atau fungsionalitas berisi sebagian besar bug atau memiliki kegagalan paling operasional.

    Sesuai Prinsip Pareto (Aturan 80-20), 80% masalah berasal dari 20% modul dan sisa 20% masalah dari sisa 80% modul. Jadi pengujian lebih ditekankan pada 20% modul di mana akan menghadapi 80% bug.

    - Paradoks pestisida

    Pestisida Paradox dalam pengujian perangkat lunak adalah proses pengulangan kasus pengujian yang sama berulang-ulang, akhirnya, kasus pengujian yang sama tidak akan lagi menemukan bug baru. Jadi untuk mengatasi Paradox Pestisida ini, perlu untuk meninjau kasus uji secara teratur dan menambah atau memperbarui mereka untuk menemukan lebih banyak cacat.

    - Pengujian tergantung pada konteks

    Pendekatan pengujian tergantung pada konteks perangkat lunak yang kami kembangkan. Kami menguji perangkat lunak secara berbeda dalam konteks yang berbeda. Sebagai contoh, aplikasi perbankan online membutuhkan pendekatan pengujian yang berbeda dibandingkan dengan situs e-commerce

    - Tidak Ada Kesalahan merupakan Kesalahan

    Jika perangkat lunak yang dibangun 99% bebas bug tetapi tidak mengikuti persyaratan (tidak memenuhi kebutuhan bisnis) pengguna maka tidak dapat digunakan. Tidak hanya diperlukan bahwa perangkat lunak 99% bebas bug tetapi juga harus memenuhi kebutuhan bisnis, jika tidak, perangkat lunak tersebut tidak dapat digunakan.

    3. Black box testing adalah uji coba terhadap fungsionalitas sebuah aplikasi atau program apa pun yang sedang dikembangkan. Sedangkan, white box testing adalah metode uji coba struktur internal aplikasi melalui sebuah software.
    4. Strategi pengujian perangkat lunak adalah metode pengujian software yang mengintegrasikan metode desain kasus pengujian software kedalam langkah-langkah perencanaan yang tersusun rapi sehingga menghasilkan konstruksi software yang sukses.
    5.
    - Project Manager
    - System Analyst
    - UI/UX Designer
    - Technical Writer
    - Quality Assurance
    - Network Engineer
    - System Engineer
    - Frontend Designer
    - Web Developer
    - Mobile Apps Developer
    - Desktop Application Developer

    BalasHapus

Python Operators

  Apa yang dimaksud dengan operator dalam bahasa pemrograman Python? Operator merupakan simbol spesial di bahasa pemrograman Python untuk pe...