Sebagai langkah awal kegiatan Yayasan pada tanggal 2 Mei 1961 dengan surat keputusan nomor: 1/SMP/1961 memutuskan untuk membuka SMP dengan nama Sekolah Menengah Pertama SULUH disingkat SMP SULUH pada tanggal 17 Agustus 1961. Izin operasional sekolah diperoleh dari pemerintah RI melalui Departemen Pendidikan dan Kebudayaan pada tanggal 17 Agustus 1961 dengan nomor : 4531/D/1961. Jenjang Akreditasi DIAKUI diperoleh pada tanggal 14 Januari 1992, sedangkan jenjang Akreditasi DISAMAKAN diperoleh pada tanggal 3 Maret 1997 dan 14 Desember 2001, jenjang Akreditasi “A” (Sangat Baik) diperoleh pada tahun 2017 sampai dengan sekarang.
Keunggulan
Terakreditasi A
Kurikulum 2013
Tenaga pengajar yang kompeten dibidangnya
Lokasi strategis dan nyaman
Lingkungan bersih, kondusif untuk belajar
Ruang belajar lengkap dengan sarana audio visual (projektor, Sound system, AC, dan CCTV)
Tersedia sarana prasarana lengkap: Lab Komputer, Lab IPA, UKS, Aula, Mushala, Perpustakaan, Lapangan Olah raga, Ruang OSIS, Kantin
Full Day school yang diisi dengan kegiatan-kegiatan penunjang : kegiatan belajar, penambahan jam berhitung dan TIK, ekstrakurikuler, pembentukan karakter, pembiasaan literasi, Jum’at sehat dan bersih, keputrian/ keputraan, layanan BK
Kegiatan belajar berbasis teknologi informasi
KBM (Kegiatan Belajar Mengajar) satu shift
Biaya pendidikan terjangkau
Disediakan beasiswa bagi peserta didik yang berprestasi
komputer tidak dapat memecahkan masalah tanpa diajarkan oleh manusia melalui urutan langkah (algoritma) yang telah ditentukan sebelumnya.
Selain digunakan untuk menyelesaikan masalah oleh komputer, algoritma juga dapat diterapkan untuk menyelesaikan masalah sehari-hari yang membutuhkan serangkaian proses atau langkah-langkah prosedural.
Pengertian umum dari suatu algoritma adalah urutan dari sejumlah langkah logis dan sistematis untuk memecahkan suatu masalah tertentu.
Beberapa ahli menganggap algoritma sebagai urutan langkah-langkah yang harus diikuti dalam matematika atau perhitungan untuk memecahkan masalah lain, terutama komputer.
Artinya semua susunan logis yang disusun dalam urutan sistem pembelajaran tertentu dan digunakan untuk memecahkan suatu masalah tertentu, dapat kita katakan seperti sebuah algoritma.
Sedangkan dalam Kamus Besar Bahasa Indonesia (KBBI), algoritma adalah suatu prosedur sistematis untuk menyelesaikan masalah matematika dalam langkah-langkah terbatas atau urutan pengambilan keputusan yang logis untuk memecahkan masalah tersebut.
Dari pengertian tersebut dapat dikatakan bahwa algoritma ini digunakan untuk menyelesaikan atau menyelesaikan suatu masalah dengan langkah-langkah logis yang terurut.
Inilah sebabnya mengapa algoritma harus digunakan pada elektronik komputer karena dengan algoritma komputer akan dapat memproses data, melakukan perhitungan, membuat inferensi otomatis dan memecahkan masalah di komputer.
Ketika algoritma tersebut digunakan pada komputer, maka akan menghasilkan output yang kemudian akan berhenti pada keadaan awal.
SEJARAH ALGORITMA
Saat itu, Al-Khawarizmi menulis sebuah buku dengan judul Al Jabar wal-Muqabala yang artinya Buku Pemulihan dan Pengurangan (The Book of Restoration and Reduction) . Dari judul buku kita juga mendapatkan kata “aljabar” atau lebih dikenal dengan istilah algebra.
Abu Abdullah Ibn Musa al-Khawarizmi (770- 840M) lahir di Khawarizm (Kheva), sebuah kota di selatan Sungai Oxus (sekarang disebut Uzbekistan) pada 770 M. Al Khawarizmi adalah salah satu ilmuwan terkenal pada masanya. Ada beberapa cabang matematika yang ditemukannya antara lain yang disebut astronom dan ahli geografi.
Awalnya, algoritma adalah istilah yang mengacu pada aturan aritmatika yang berguna untuk memecahkan masalah menggunakan angka Arab.
Pada tahun 1950, kata algoritma pertama kali digunakan dalam “Algoritma Euclidean”. Euclid, seorang matematikawan Yunani (lahir pada 350 M). Dalam bukunya Elements menulis langkah-langkah untuk menemukan pembagi persekutuan terbesar (common greatest divisor atau gcd), dari dua bilangan bulat, m dan n [KNU 73] (tentu saja Euclid tidak menyebut metodenya sebagai algoritma, itu hanya di zaman modern orang menyebut metodenya (“algoritma Euclidean”).
JENIS JENIS ALGORITMA
Seorang matematikawan dan ilmuwan komputer bernama Dr. Christoph Koutschan mengatakan bahwa setidaknya ada 32 algoritma dalam ilmu komputer. Namun jika dilihat dari fungsinya, hanya ada enam algoritma dasar, yaitu:
1.Rekursi
Sebuah algoritma rekursi adalah sesuatu yang akan memanggil dirinya sendiri berulang-ulang sehingga masalah dapat diselesaikan dengan benar. Berikut adalah beberapa kode yang dapat menemukan faktorial menggunakan algoritma rekursi.
2.Divide and Conquer
Divide and Conquer akan membagi masalah besar menjadi banyak menjadi masalah kecil. Jenis algoritma ini sendiri sebenarnya terdiri dari dua bagian utama, yaitu:
Memecah masalah menjadi submasalah yang lebih independen dan lebih kecil dari masalah lain yang sejenis.
Memecahkan masalah asli setelah dapat menyelesaikan masalah yang lebih kecil secara terpisah.
3.Dynamic Programming
Dynamic Programming akan bekerja dengan mengingat hasil dari proses masa lalu dan juga menggunakannya untuk menemukan hasil baru.
Dari penjelasan diatas, berarti bahwa Dynamic Programming memecahkan masalah kompleks dengan memecahnya menjadi banyak submasalah sederhana, kemudian menyelesaikannya satu per satu, lalu menyimpannya untuk digunakan di masa mendatang.
4. Greedy
Tipe ini dapat digunakan untuk menyelesaikan masalah optimasi. Dalam algoritma ini, kita akan menemukan solusi yang lebih optimal secara lokal tanpa mengkhawatirkan konsekuensi yang akan terjadi di masa depan dan kita dapat menemukan solusi yang lebih optimal secara global.
Namun, cara ini tidak menjamin Anda bisa mendapatkan solusi yang optimal. Ada lima komponen yang terdapat dalam algoritma ini, yaitu:
• Himpunan kandidat yang solusinya akan dicari kemudian. • Fungsi seleksi terakhir akan membantu memilih kandidat terbaik. • Fitur kelayakan dapat membantu Anda mengidentifikasi kandidat mana yang dapat digunakan untuk menemukan solusi. • Fungsi tujuan mampu memberikan nilai ke solusi yang mungkin atau solusi parsial. • Fungsi solusi dapat memberitahu Anda tentang waktu yang diperlukan untuk menemukan solusi untuk masalah tersebut.
5.Brute Force
Konsep dari algoritma ini sebenarnya sangat sederhana. Selama proses ini, brute force mengintegrasikan semua solusi yang mungkin untuk menemukan satu atau lebih solusi yang mungkin untuk memecahkan masalah.
6.Algoritma Backtraking
Backtracking adalah teknik yang dapat memecahkan masalah yang berbeda secara rekursi dan mencoba mereka untuk menemukan solusi dengan memecahkan satu bagian dari masalah pada waktu yang sama. Jika solusi gagal, kita dapat menghapusnya dan kembali mencari solusi lain.
Artinya algoritma ini akan menyelesaikan sub masalah dan jika gagal maka algoritma akan membatalkan langkah terakhir dan memulai kembali untuk mencari solusi dari masalah tersebut.
FUNGSI ALGORITMA
Seperti disebutkan sebelumnya, algoritma dapat diterapkan ke banyak jalur kehidupan. Hanya saja penerapan algoritma yang lebih sering dibahas dalam pemrograman komputer.
Dalam hal pemrograman, algoritma pemrograman membantu tim pemrograman untuk memecahkan masalah. Serangkaian solusi untuk masalah ini yang dapat dikembangkan oleh seorang programmer menjadi sebuah program.
Selain itu, beberapa fungsi lain dari algoritma adalah sebagai berikut:
•Membantu Anda memecahkan masalah tertentu dengan cara yang logis dan sistematis. Algoritma dapat digunakan lebih dari satu kali untuk menyelesaikan masalah yang sama. •Algoritma juga dapat digunakan untuk membantu memecahkan masalah yang kompleks dengan lebih sederhana. •Bagi programmer, algoritma akan memudahkan mereka untuk melacak setiap kesalahan yang muncul. •Memungkinkan pemrogram untuk dengan mudah memodifikasi program tanpa mengubah total algoritma dan tanpa harus mengulang dari awal. •Pemrogram hanya perlu melakukan perubahan pada waktu tertentu, dan program dapat diperbarui untuk memperbaiki masalah yang muncul.
5 Karakteristik Algoritma
Menurut Donald E. Knuth, algoritma harus memiliki lima karakteristik penting yang saling berhubungan. Kriteria untuk algoritma ini meliputi:
1. Finiteness (Keterbatasan)
Algoritma harus berhenti setelah mengambil sejumlah langkah yang terbatas, yaitu ada tujuan akhir yang tercapai, sehingga program akan berhenti ketika tujuan akhir telah tercapai. Program yang tidak pernah berhenti menunjukkan bahwa program tersebut mengandung algoritma yang salah.
2. Definiteness (Kepastian)
Setiap langkah harus didefinisikan dengan tepat dan tidak ambigu. Ada instruksi yang jelas dan tidak ambigu, sehingga tidak ada kesalahan dalam menghasilkan output.
3. Input (Masukan)
Input ini adalah masalah yang diketahui dan solusi akan diselidiki. Algoritma ini tidak memiliki atau lebih input, yang merupakan jumlah yang disediakan untuk algoritma untuk diproses.
4. Output (Keluar)
Algoritma tidak memiliki atau lebih nilai output. Output ini tentunya harus menjadi solusi atau solusi dari suatu masalah. Output dapat berupa pesan atau kuantitas yang terkait dengan input.
5. Effectiveness (keefektivitasan)
Algoritma harus efisien, setiap urutan atau langkah harus sesederhana mungkin, sehingga dapat diimplementasikan dalam waktu yang wajar.