google.com, pub-9228471708496696, DIRECT, f08c47fec0942fa0

Thursday, July 4, 2024

Kumpul Modul Ajar Informatika Kelas XI Fase F

Modul Ajar Informatika  Kelas XI Fase F


Download Modul Ajar

Materi Informatika Kelas 11 BK

 

Decomposition (Dekomposisi)

Tahap pertama, dekomposisi, yaitu mengurai masalah atau tugas menjadi bagian-bagian yang lebih kecil dan lebih dapat dikelola. Ini melibatkan pemahaman mendalam tentang masalah yang ingin diselesaikan sehingga, kita bisa menemukan masalah yang terjadi dengan menyelesaikannya satu persatu

 

Pattern Recognition (Pengenalan Pola)

Pengenalan pola akan membantu kamu dalam memecahkan masalah. Pada tahap ini, kita akan berupaya Memahami data atau informasi yang terkait dengan masalah adalah langkah penting. Kemudian detikers, mencari pola atau persamaan data tersebut berkaitan atau tidak dengan masalah.

 

Abstraction (Abstraksi)

Beberapa hal yang dilakukan pada tahap abstraksi antara lain, melihat permasalahan, melakukan generalisasi, dan melakukan identifikasi informasi. Dengan cara ini, kita dapat melihat informasi penting dan mengabaikan informasi yang kurang relevan.

 

Algorithm Design (Perancangan Algoritma)

Setelah memahami masalah dan data, langkah berikutnya adalah merancang algoritma. Algoritma adalah serangkaian langkah logis yang harus diambil untuk mengolah data dan mencapai solusi. Algoritma ini harus merinci proses yang sistematis dan terstruktur.

Materi Informatika kelas 11 Contorh Pemograman

 

Jenis dan Bahasa Pemrograman

Pemrograman adalah proses menciptakan instruksi untuk mengendalikan perilaku komputer atau mesin lainnya. Dalam pemrograman, pengembang menggunakan bahasa pemrograman untuk merancang algoritma dan membuat perangkat lunak yang menjalankan tugas tertentu. Bahasa pemrograman adalah set aturan dan sintaks yang digunakan untuk berkomunikasi dengan komputer dan memberikan petunjuk tentang apa yang harus dilakukan.

Pemrograman terbagi menjadi beberapa paradigma, yang merupakan pendekatan berbeda dalam merancang dan mengembangkan perangkat lunak. Beberapa paradigma pemrograman utama termasuk pemrograman berorientasi objek, pemrograman fungsional, dan pemrograman prosedural. Setiap paradigma memiliki cara pandang yang unik tentang bagaimana program harus dikonstruksi.

Contoh-contoh Jenis Pemrograman yang Ada Saat Ini:

  1. Pemrograman Berorientasi Objek (OOP): Pendekatan ini merancang program sebagai kumpulan objek yang memiliki atribut dan perilaku. Contohnya termasuk Java, C++, Python, C#.
  2. Pemrograman Fungsional: Paradigma ini berfokus pada penggunaan fungsi sebagai entitas utama dalam program. Contohnya termasuk Haskell, Lisp, Erlang.
  3. Pemrograman Prosedural: Pendekatan ini mengorganisasi program sebagai serangkaian prosedur atau fungsi. Contohnya termasuk C, Pascal.
  4. Pemrograman Logika: Paradigma ini menggunakan logika formal untuk memecahkan masalah. Contohnya termasuk Prolog.
  5. Pemrograman Berbasis Skrip: Bahasa pemrograman yang digunakan untuk menulis skrip yang berjalan pada interpretasi. Contohnya termasuk JavaScript, Perl, Ruby.
  6. Pemrograman Visual: Menggunakan antarmuka grafis untuk merancang logika program. Contohnya termasuk Scratch, LabVIEW.
  7. Pemrograman Paralel dan Terdistribusi: Menggunakan beberapa komputer atau prosesor untuk memecahkan masalah. Contohnya termasuk MPI, OpenMP.
  8. Pemrograman Deklaratif: Fokus pada mendefinisikan apa yang harus dicapai tanpa menjelaskan langkah-langkah detailnya. Contohnya termasuk SQL.
  9. Pemrograman Aplikasi Web: Terkait dengan pengembangan aplikasi berbasis web. Contohnya termasuk HTML, CSS, JavaScript.
  10. Pemrograman Game: Khusus untuk pembuatan permainan komputer. Contohnya termasuk C++, C#, UnityScript (kini digantikan oleh C# di Unity).
  11. Pemrograman Mobile: Fokus pada pengembangan aplikasi untuk perangkat mobile. Contohnya termasuk Swift, Kotlin.
  12. Pemrograman Bahasa Alami: Membuat program berinteraksi dengan manusia melalui bahasa alami. Contohnya adalah Chatbot.
  13. Pemrograman Kecerdasan Buatan (AI): Fokus pada pengembangan algoritma dan model AI. Contohnya termasuk Python (dengan pustaka seperti TensorFlow dan PyTorch).
  14. Pemrograman Sistem: Untuk pengembangan sistem operasi dan perangkat lunak tingkat rendah. Contohnya termasuk C, C++.
  15. Pemrograman Embedded: Khusus untuk pengembangan perangkat keras tertanam. Contohnya termasuk C, C++, Python (MicroPython).

Contoh-contoh bahasa pemrograman:

  1. Python: Bahasa pemrograman serbaguna yang dikenal dengan sintaks yang mudah dibaca dan ditulis. Digunakan dalam berbagai bidang seperti pengembangan web, analisis data, kecerdasan buatan, dan lebih banyak lagi.
  2. JavaScript: Bahasa pemrograman yang umum digunakan untuk pengembangan aplikasi web. Digunakan untuk mengatur interaksi dan perilaku halaman web di sisi klien.
  3. Java: Bahasa pemrograman yang populer untuk pengembangan aplikasi desktop, aplikasi web, permainan, dan banyak lagi. Terkenal karena portabilitasnya (dapat dijalankan di berbagai platform).
  4. C++: Bahasa pemrograman yang merupakan pengembangan dari bahasa C, dengan dukungan untuk pemrograman berorientasi objek. Digunakan dalam pengembangan perangkat lunak berperforma tinggi, permainan, dan aplikasi sistem.
  5. C#: Bahasa pemrograman yang dikembangkan oleh Microsoft, banyak digunakan untuk pengembangan aplikasi Windows, aplikasi desktop, dan pengembangan permainan dengan platform Unity.
  6. Ruby: Bahasa pemrograman yang dikenal karena kerangka kerjanya, Ruby on Rails, yang digunakan untuk pengembangan aplikasi web. Memiliki sintaks yang elegan.
  7. Swift: Bahasa pemrograman yang dikembangkan oleh Apple, digunakan untuk pengembangan aplikasi iOS, macOS, watchOS, dan tvOS.
  8. Kotlin: Bahasa pemrograman yang merupakan alternatif untuk pengembangan aplikasi Android selain Java. Diakui oleh Google sebagai bahasa resmi untuk pengembangan Android.
  9. PHP: Bahasa pemrograman yang banyak digunakan untuk pengembangan situs web dinamis dan interaktif. Umumnya berjalan di sisi server.
  10. R: Bahasa pemrograman yang fokus pada analisis statistik dan grafik. Digunakan oleh ilmuwan data dan analis statistik.
  11. Go (Golang): Bahasa pemrograman yang dikembangkan oleh Google dengan fokus pada kinerja dan efisiensi. Digunakan dalam pengembangan aplikasi berbasis jaringan dan sistem.
  12. Scala: Bahasa pemrograman yang berjalan di atas platform Java Virtual Machine (JVM) dan mendukung pemrograman fungsional serta berorientasi objek.
  13. Perl: Bahasa pemrograman yang awalnya dirancang untuk pemrosesan teks dan manipulasi string. Digunakan dalam administrasi sistem, pengembangan web, dan lebih banyak lagi.
  14. Haskell: Bahasa pemrograman fungsional yang menekankan pemrograman deklaratif dan matematis.
  15. Rust: Bahasa pemrograman yang fokus pada keamanan dan kinerja tinggi, sering digunakan dalam pengembangan sistem dan perangkat lunak yang kritis.
  16. TypeScript: Sejenis ekstensi dari JavaScript yang menambahkan tipe data statis, membantu mengurangi kesalahan dalam pengembangan aplikasi besar.
  17. Lua: Bahasa scripting ringan dan cepat yang umumnya digunakan dalam permainan video, aplikasi seluler, dan skrip server.
  18. Julia: Bahasa pemrograman yang dikembangkan untuk analisis numerik dan komputasi ilmiah.
  19. Dart: Bahasa pemrograman yang digunakan dalam pengembangan aplikasi mobile dengan kerangka kerja Flutter, terutama untuk membuat aplikasi Android dan iOS.
  20. Perl: Bahasa pemrograman yang awalnya dirancang untuk pemrosesan teks dan manipulasi string. Digunakan dalam administrasi sistem, pengembangan web, dan lebih banyak lagi.

Materi Informatika Kelas 11 SMA Fase F ( Pemograman )

 Pengertian Pemrograman

Pemrograman menurut buku “Oxford Dictionary of Computer Science” adalah seluruh aktivitas teknis yang dilakukan untuk menghasilkan suatu program, termasuk analisis kebutuhan dan seluruh langkah desain dan implementasi suatu program.

Langkah-Langkah Pemrograman

  • Menganalisis permasalahan (Analyzing): pemrogram menganalisis suatu kebutuhan atau keadaan saat ini untuk menghasilkan definisi permasalahan yang perlu diselesaikan dengan program. Permasalahan yang dianalisis bisa berupa masalah yang baru atau penyempurnaan dari solusi yang sudah ada. Kemampuan berpikir komputasional digunakan untuk mencari abstraksi dari permasalahan yang akan diselesaikan. Permasalahan yang kompleks dapat didekomposisi ke beberapa masalah yang lebih kecil, namun saling berkaitan. Hingga akhirnya, pemrogram akan mengenali pola permasalahan tersebut sebagai sebuah variasi dari problem generik. Tahap ini menghasilkan pernyataan masalah (problem statement) yang menjelaskan masukan (input), keluaran (output), serta batasan-batasan (constraint) dari program yang akan dibuat.
  • Mendesain solusi (Problem Solving): dari pernyataan masalah ini, pemrogram merencanakan strategi untuk menghasilkan keluaran berdasarkan masukan yang diterima. Pemrogram tidak harus merencanakan solusi dari awal. Mereka dapat menggunakan solusi atau potongan solusi yang sudah ada dari permasalahan yang telah diselesaikan sebelumnya. Bahkan, jika problem generik telah ditemukan, pemrogram dapat memodifikasi algoritma generik agar sesuai dengan permasalahan. Proses ini akan menghasilkan algoritma berupa narasi, pseudocode, atau diagram alir. Pada tahap ini, pemrogram juga akan mengevaluasi algoritma yang dibuat untuk memenuhi batasan dari permasalahan. Misalnya, apakah program dapat bekerja dengan cepat (kurang dari 1 detik) saat diberikan masukan yang berukuran besar, karena menunggu membuat pengguna tidak nyaman.
  • Mengimplementasikan solusi dalam bentuk program (Coding): Pada tahap ini, pemrogram akan menulis kode program untuk menjalankan solusi yang telah direncanakan sebelumnya dengan menggunakan suatu bahasa pemrograman. Memilih bahasa pemrograman menjadi pertimbangan di tahap ini. Selain itu, mengubah algoritma menjadi kode program juga melibatkan banyak pertimbangan teknis (misalnya: tipe data, struktur kontrol yang digunakan, dan lain-lain).
  • Menguji program (Testing): Setelah program dapat dijalankan, program tersebut harus diuji untuk memastikan program berjalan dengan benar, sesuai dengan batasanbatasan yang diberikan. Pengujian dapat dilakukan dengan menggunakan berbagai strategi pengujian. Salah satu yang telah kalian pelajari di Kelas X adalah menguji program menggunakan kasus uji (test case) yang dibuat sedemikan rupa sehingga mewakili seluruh kemungkinan masukan dari program.

Contoh Kasus Siklus Pemrograman

Selanjutnya mari kita coba lakukan keempat langkah tersebut untuk membuat sebuah program yang dapat membantu seseorang mengidentifikasi jenis segitiga berdasarkan panjang ketiga sisinya. Seperti kita ketahui, ada beberapa jenis segitiga berdasarkan kondisi panjang masing-masing sisinya, misalnya segitiga sama sisi, segitiga sama kaki, atau pun segitiga sembarang. Bayangkan sebuah program yang dapat menentukan apakah sebuah segitiga termasuk segitiga sama kaki, sama sisi, atau bukan keduanya, jika diberikan data berupa ketiga panjang sisi-sisi dari segitiga yang dimaksud. Misalnya jika diberikan masukan berupa panjang sisi-sisi: 2, 2 dan 3, maka program tersebut tentunya harus menghasilkan keluaran “segitiga sama kaki”.

Mendefinisikan Permasalahan

Deskripsi di atas sangat abstrak dan luas. Oleh karena itu, sebagai pemrogram kita perlu mendefinisikan ruang lingkup dari permasalahan yang diberikan. Pada pengembangan perangkat lunak, ruang lingkup tersebut disebut sebagai kebutuhan (requirement). Definisi ini perlu dibuat dengan baik karena pengecekan kebenaran program yang kita buat akan bergantung pada definisi permasalahan yang telah dibuat. Untuk menggali requirement, kalian dapat bertanya kepada pembuat soal, kepada guru, atau kepada orang-orang yang nantinya akan menggunakan program kalian.

Misalnya pada deskripsi mengidentifikasi jenis segitiga di atas, kita perlu mencari jawaban dari beberapa pertanyaan berikut: (a) Bagaimana caranya mengidentifikasi apakah data panjang sisisisi tersebut menunjukkan sisi sebuah segitiga? (karena bisa jadi tidak ada segitiga yang memiliki panjang sisi-sisi sebagaimana data yang diberikan) (b) Bagaimana menentukan jenis segitiga dari panjang sisi-sisinya? (c) Jenis segitiga apa saja yang harus kita identifikasi (misalnya: apakah kita harus bisa mengidentifikasi segitiga siku-siku?) (d) Batasan seperti apa yang harus dipenuhi oleh data masukan? (e) keluaran seperti apa yang harus diberikan oleh program? dan seterusnya. Setelah pertanyaan-pertanyaan tersebut terjawab, kalian dapat membuat definisi permasalahan yang lebih formal. Contoh berikut dapat menjadi salah satu cara untuk mendefinisikan permasalahan ini setelah kalian mendapatkan jawaban dari pertanyaan-pertanyaan di atas.

Mengidentifikasi Jenis Segitiga

Deskripsi: Diberikan tiga buah bilangan bulat yang berada pada rentang [1, 1000] yang merupakan panjang sisi dari sebuah segitiga. Identifikasi apakah ketiga sisi tersebut membentuk segitiga sama sisi, atau segitiga sama kaki, segitiga sembarang, atau tidak bisa membentuk segitiga!

Masukan: Masukan terdiri atas tiga bilangan bulat a, b, dan c yang merupakan panjang masing-masing sisi segitiga pada rentang [1, 1000].

Proses: Dari masukan yang diberikan, kita harus menentukan terlebih dahulu, apakah ada segitiga dengan panjang sisi-sisi a, b dan c. Jika tidak ada, maka program dapat berhenti dan melaporkan bahwa data masukan tidak menunjukkan sisi-sisi sebuah segitiga. Jika ternyata a, b dan c merupakan sisi-sisi sebuah segitiga, maka program harus menentukan jenis segitiga apakah yang memiliki panjang sisi-sisi a, b dan c tersebut.

Keluaran: Keluaran berupa teks sebagai berikut ini:

  • “Segitiga Sama Sisi” jika masukan berupa segitiga sama sisi.
  • “Segitiga Sama Kaki” jika masukan berupa segitiga sama kaki.
  • “Segitiga Sembarang” jika masukan berupa segitiga sembarang.
  • “Bukan Segitiga” jika masukan bukan berupa segitiga.

Merancang Solusi

Setelah definisi persoalan (masukan, proses, keluaran) dibuat seperti di atas. Selanjutnya kalian akan mencoba menyusun algoritma untuk menyelesaikan permasalahan tersebut. Pertama-tama, untuk menentukan apakah ada segitiga yang memiliki sisi-sisi dengan panjang sesuai masukan, yaitu a, b dan c, maka nilai-nilai tersebut haruslah memenuhi aturan “Teorema Pertidaksamaan Segitiga” berikut:

“Untuk semua segitiga dengan panjang a, b dan c, maka haruslah berlaku a + b > c”

Jika kita terjemahkan teorema di atas untuk sebarang masukan a, b, dan c, kita harus memeriksa 3 buah kondisi berikut:

  • a + b > c
  • a + c > b
  • b + c > a

Ketiga kondisi tersebut harus terpenuhi, agar a, b dan c dapat membentuk segitiga. Dengan kata lain, jika setidaknya salah satu kondisi tersebut tidak dipenuhi, maka ketiga sisi tersebut tidak bisa membentuk segitiga. Jika hal ini terjadi, program dapat melaporkan hasil ini dan kemudian langsung berhenti.

Jika tidak, berarti a, b dan c memang benar merupakan sisisisi sebuah segitiga, dan program dapat mengidentifikasi jenis segitiga yang sesuai. Selanjutnya, untuk mengidentifikasi jenis segitiga, kita dapat merancang aturan-aturan sebagai berikut:

  • Jika tiga panjang sisi sama, maka segitiga tersebut adalah sama sisi;
  • Jika hanya dua panjang sisi sama, maka segitiga tersebut sama kaki;
  • Jika ketiga panjang sisi berbeda, maka segitiga tersebut adalah segitiga sembarang.

Mengimplementasikan Solusi dalam Bentuk Program (Coding)

Selanjutnya, kalian dapat mengimplementasikan algoritma tersebut ke dalam suatu program komputer. Misalnya, kita dapat mencoba implementasikan dalam bahasa pemrograman C. Tentunya, kalian juga dapat menuliskan algoritma di atas dalam bahasa pemrograman lainnya yang telah kalian pelajari seperti Python, atau bahkan menggunakan pemrograman blok.

Menguji Program

Setelah program selesai, kita perlu menguji kebenaran program tersebut. Ada banyak metode formal untuk menguji suatu program, namun yang akan dicontohkan adalah menguji program menggunakan kasus uji seperti yang telah diberikan di Kelas X

Solusi

  1. Aplikasi program editor: Dev-C++ Download disini
  2. Kode Program:
#include <iostream>
using namespace std;

int main() {
    int a, b, c;

    cout << "Masukkan panjang sisi a: ";
    cin >> a;
    cout << "Masukkan panjang sisi b: ";
    cin >> b;
    cout << "Masukkan panjang sisi c: ";
    cin >> c;

    if (a + b > c && a + c > b && b + c > a) {
        if (a == b && b == c) {
            cout << "Segitiga Sama Sisi" << endl;
        } else if (a == b || a == c || b == c) {
            cout << "Segitiga Sama Kaki" << endl;
        } else {
            cout << "Segitiga Sembarang" << endl;
        }
    } else {
        cout << "Bukan Segitiga" << endl;
    }

    return 0;
}

Selamat Belajar.

Saturday, April 11, 2020

"Mendikbud Nadiem: Mulai Senin Siswa Bisa Belajar dari Rumah lewat TVRI",


Mengatasi keterbatasan akses jaringan internet dan juga bahan pembelajaran daring selama wabah Covid-19, Mendikbud Nadiem Makarim menggandeng TVRI menginisiasi program " Belajar dari Rumah". "Program Belajar dari Rumah merupakan bentuk upaya Kemendikbud membantu terselenggaranya pendidikan bagi semua kalangan masyarakat di masa darurat Covid-19," ujar Nadiem Makarim pada telekonferensi Peluncuran Program Belajar dari Rumah di Jakarta, pada Kamis (9/4/2020).


Tidak semua bisa akses internet



Penyebaran pandemi Coronavirus Disease (Covid-19) mengakibatkan banyak peserta didik harus melaksanakan kegiatan belajar di rumah, baik melalui sarana dalam jaringan (daring) maupun luar jaringan (luring). Namun, tidak semua peserta didik maupun pendidik memiliki kemampuan untuk mengakses platform pembelajaran daring secara optimal. Untuk itu, Kementerian Pendidikan dan Kebudayaan (Kemendikbud) meluncurkan Program "Belajar dari Rumah" di TVRI. Program Belajar dari Rumah di TVRI, merupakan respons Kemendikbud terhadap masukan Komisi X DPR RI pada Rapat Kerja tanggal 27 Maret 2020 yang lalu.



Hal ini, dikatakan Mendikbud sejalan dengan semangat Merdeka Belajar. "Program Belajar dari Rumah mulai tayang di TVRI pada Senin tanggal 13 April 2020 dimulai pada pukul 08 pagi," terang Nadiem.



Berjalan 3 bulan ke depan 


Program ini direncanakan dapat terselenggara setidaknya selama 3 bulan ke depan. "Nantinya selain diisi dengan program pembelajaran untuk semua jenjang, Belajar dari Rumah juga akan menyajikan program Bimbingan Orangtua dan Guru serta tayangan kebudayaan pada akhir pekan,” jelas Mendikbud. Adapun konten atau materi pembelajaran yang disajikan akan fokus pada peningkatan literasi, numerasi, serta penumbuhan karakter peserta didik. Kemendikbud juga akan melakukan monitoring dan evaluasi mengenai program ini bersama dengan lembaga nonpemerintah. "Yang perlu dicatat bahwa sesungguhnya dalam keadaan seperti ini, yang menjadi penting saat adalah pemberian pendidikan yang bermakna,” terang Mendikbud. Selanjutnya, dalam situasi di mana kegiatan belajar mengajar (KBM) di sekolah terhenti, solidaritas dan gotong royong menjadi kunci penanganan Covid-19 di Indonesia. Oleh karena itu Kemendikbud terbuka untuk kerja sama dan kolaborasi pendukungan penyelenggaraan pendidikan di masa darurat ini. Baca juga: 3 Bulan Belajar dari Rumah lewat TVRI, Ada Program Khusus Orangtua Pesan Nadiem untuk orangtua, guru dan siswa "Kami berterima kasih atas semua bantuan, kerja sama dan kolaborasi dari berbagai pihak, dari Komisi X, mitra swasta, organisasi masyarakat, juga relawan yang bersama-sama mengambil peran dan kontribusi dalam menghadapi situasi pandemi Covid-19 ini," tutur Mendikbud. "Semangat gotong royong yang kita miliki menunjukkan kesatuan dan kekuatan bangsa kita yang berideologi Pancasila,” tambahnya.

Nah untuk adik adik yang tidak ada televisi yang ada TVRI nya bisa download apknya di 

sini atau langsung di sini  bisa juga langsung tonton di https://www.useetv.com/livetv/tvri