Contoh Soal Logika Sederhana SKB CPNS Pranata Komputer Terampil dan Ahli Pertama dan Pembahasannya

Contoh Soal Logika Sederhana SKB CPNS Pranata Komputer

Hai sobat Fian!

Selamat ya bagi kalian yang lolos tes Seleksi Kompetensi Dasar (SKD) pada CPNS 2024! Saat ini kalian harus berjuang menghadapi tahap selanjutnya yaitu tes Seleksi Kompetensi Bidang (SKB). Bagi jabatan Pranata Komputer Terampil dan Pranata Komputer Ahli Pertama, di beberapa instansi mengharuskan untuk mengikuti tes SKB Tambahan yang non-CAT yaitu terkait pemrograman.

Salah satu instansi yang menerapkan SKB Tambahan bagi jabatan Pranata Komputer Terampil dan Pranata Komputer Ahli Pertama yaitu Pemerintah Provinsi Jawa Timur. Adapun skill atau keahlian yang diperlukan untuk jabatan tersebut meliputi:

  • Dapat mengimplementasi logika sederhana dengan program Komputer memakai salah satu Bahasa yang disediakan (C, Javascript, atau Python);
  • Membuat aplikasi berbasis web dengan fitur CRUD (Create, Read, Update, Delete), dengan salah satu bahasa yang disediakan (ExpressJS atau PHP-native);
  • Mengintegrasikan data melalui API atau Web Service dengan metode REST (GET, POST, PUT, PATCH, DELETE), dengan salah satu bahasa yang disediakan (ExpressJS atau PHP-native).

Fungsi dari diadakannya tes SKB Tambahan ini berdasar pada Pengumuman Panitia Seleksi Daerah Penerimaan Calon Pegawai Negeri Sipil (CPNS) di Lingkungan Pemerintah Provinsi Jawa Timur tanggal 19 Agustus 2024 Nomor: 800.1.2.2/6229/204/2024, disampaikan bahwa dalam rangka memperoleh CPNS yang kompeten di bidang Talenta Digital dan memiliki spesifikasi kemampuan Teknologi Informasi diberikan SKB Tambahan pada 8 (delapan) jenis jabatan diantaranya:

  1. Statistisi Ahli Pertama
  2. Asisten Statistisi Terampil
  3. Pranata Komputer Ahli Pertama
  4. Pranata Komputer Ahli Terampil
  5. Manggala Informatika Ahli Pertama
  6. Pengembang Teknologi Pembelajaran Ahli Pertama
  7. Sandiman Ahli Pertama
  8. Sandiman Terampil

Pada postingan ini, saya akan berbagi contoh soal implementasi logika sederhana beserta dengan pembahasannya. Yuk simak lebih lanjut!

Contoh Soal Logika Sederhana

Implementasikan sebuah fungsi untuk menentukan angka terbesar dari sebuah kumpulan data atau array berikut [1, 4, 5, 8, 6]. Hasil yang diharapkan adalah 8.

Pembahasan Soal Logika Sederhana

Ketika kalian akan mengeksekusi soal logika sederhana tersebut, penting untuk memperhatikan soal dengan teliti, letak permasalahan di mana, cara kerja dan solusi sesuai yang dibutuhkan, dan output yang diharapkan.

Berikut saya berikan pembahasan untuk mengerjakan soal logika sederhana tersebut. Mohon pertahian, di sini saya menggunakan bahasa pemrograman JavaScript ya sob.

 function angkaTerbesar(array) {
    let angka = array[0];
    for(data of array) {
        if(data > angka) {
            angka = data;
        }
    }
    return angka;
}
const kumpulanData = [1, 4, 5, 8, 6];
console.log(angkaTerbesar(kumpulanData)); // Output = 8

Dalam mencari angka terbesar dalam sebuah kumpulan data atau array, perlu membandingkan setiap elemen dalam array dengan angka yang disimpan. Setiap kali elemen dicek lalu ditemukan angka yang lebih besar, maka angka yang disimpan tersebut akan otomatis diperbarui dengan angka yang lebih besar tadi. Sampai pada akhirnya seluruh elemen dalam array selesai dicek dan ditentukanlah angka terbesar dalam array.

Langkah pertama, membuat sebuah fungsi untuk mengecek angka terbesar dalam array, saya beri nama fungsinya "angkaTerbesar".

function angkaTerbesar() { }

Langkah kedua, mengisi parameter fungsi angkaTerbesar dengan satu parameter yang saya beri nama parameternya "array". Jadi fungsi tersebut hanya bisa menerima satu parameter saja sesuai persoalan di atas yaitu mencari angka terbesar dari array.

function angkaTerbesar(array) { }

Langkah ketiga,  mulai eksekusi bagian dalam fungsi angkaTerbesar, yakni membuat variabel yang saya beri nama variabelnya "angka" dengan nilai atau value elemen array yang pertama yaitu array[0].

function angkaTerbesar(array) {
    let angka = array[0];
}

Kenapa menggunakan let untuk mendeklarasikan variabel angka? Karena penggunaan let ini bersifat bisa berubah nilainya dan hanya dieksekusi dalam blok fungsi angkaTerbesar() saja.

Kenapa nilainya diisi dengan elemen array yang pertama? Karena untuk disimpan sebagai nilai awal untuk membandingkan dengan angka pada elemen lain di dalam parameter array tersebut secara berurutan (dari awal sampai akhir).

Dalam kasus ini berarti nilai awal yang disimpan yaitu angka 1 karena berada pada urutan pertama dalam array [1, 4, 5, 8, 6].

Langkah keempat,  masih di dalam fungsi angkaTerbesar, selanjutnya membuat perulangan atau looping "for" untuk mengecek angka pada setiap elemen di dalam parameter array. Perulangan ini berasal dari parameter array sebagai iterasinya, sedangkan untuk setiap elemennya saya beri nama variabelnya "data".

function angkaTerbesar(array) {
    let angka = array[0];
    for(data of array) { }
}

Langkah kelima, dalam mengecek setiap iterasi, perlu dipastikan apakah terdapat angka yang lebih besar dari nilai angka yang tersimpan sebelumnya pada variabel angka. Jika benar, maka nilai angka yang tersimpan sebelumnya akan diperbarui menjadi nilai dari variabel data

function angkaTerbesar(array) {
    let angka = array[0];
    for(data of array) {
        if(data > angka) {
            angka = data;
        }

    }
}

Dalam kasus ini berarti prosesnya sebagai berikut:

  • Iterasi pertama: data = 1 => angka tetap 1 karena tidak memenuhi kriteria data > angka
  • Iterasi kedua: data = 4 => angka diperbarui menjadi 4 karena memenuhi kriteria
  • Iterasi ketiga: data = 5 => angka diperbarui menjadi 5 karena memenuhi kriteria
  • Iterasi keempat: data = 8 => angka diperbarui menjadi 8 karena memenuhui  kriteria
  • Iterasi kelima: data = 6 => angka tetap 8 karena tidak memenuhi kriteria

Langkah keenam, setelah setiap iterasi selesai dicek dan ditemukan angka terbesar yang disimpan pada variabel angka, maka fungsi mengembalian hasil pengecekan yang disimpan pada variabel angka.

function angkaTerbesar(array) {
    let angka = array[0];
    for(data of array) {
        if(data > angka) {
            angka =data;
        }
    }
    return angka;
}

Dalam kasus ini berarti nilai variabel angka menyimpan angka terbesar yang ditemukan yaitu 8.

Langkah ketujuh, setelah selesai membuat fungsi untuk pengecekan angka terbesar dari array, saatnya didefinisikan variabel yang saya beri nama "kumpulanData" dengan nilai berupa array [1, 4, 5, 8, 6]. Hal ini sudah di luar fungsi ya sob.

function angkaTerbesar(array) {
    let angka = array[0];
    for(data of array) {
        if(data > angka)[ {
            angka = data;
        }
    }
    return angka;
}
const kumpulanData = [1, 4, 5, 8, 6];

Kenapa menggunakan const? Karena const merupakan standar modern dalam pengembangan JavaScript. Dalam kasus ini array dari kumpulanData bersifat tetap dan tidak akan diubah isi data atau nilainya. Selain itu, const juga berfungsi untuk mencegah kesalahan logika seperti tidak sengaja mengganti isi array pada baris kode berikutnya.

Langkah kedelapan, hampir selesai sob, tinggal dicetak saja untuk ditampilkan hasilnya pada console.log(). Yang akan ditampilkan yaitu hasil pengecekan dari fungsi angkaTerbesar terhadap parameter kumpulanData. Jadi variabel kumpulanData yang berisi array tersebut dimasukkan ke dalam fungsi angkaTerbesar sebagai parameternya untuk dieksekusi.

function angkaTerbesar(array) {
    let angka = array[0];
    for(data of array) {
        if(data > angka) {
            angka = data;
        }
    }
    return angka;
}
const kumpulanData = [1, 4, 5, 8, 6];
console.log(angkaTerbesar(kumpulanData)); // Output = 8

Kesimpulan dari pembahasan ini yaitu soal logika sederhana tersebut dimulai dimulai dari membuat fungsi untuk pengecekan angka terbesar. Disimpan dahulu angka pertama pada array, kemudian dibandingkan setiap angka di array. Apabila ditemukan angka terbesar, maka angka yang disimpan sebelumnya diperbarui menjadi angka terbaru yang lebih besar. Selanjutnya mengembalikan angka terbesar setelah semua angka dicek. Hasil akhir angka terbesarnya yaitu 8.

Terima kasih sudah menyimak pembahasan saya mengenai contoh soal logika sederhana untuk persiapan SKB CPNS 2024 Pranata Komputer Terampil dan Pranata Komputer Ahli Pertama. Semoga bisa bermanfaat untuk kalian ya sob. Sampai jumpa pada postingan berikutnya!

Fian Fain
Fian Fain Hai sobat Fian! Saya suka berbagi tutorial, solusi ampuh, tips dan trik meliputi troubleshooting, smartphone Android & iPhone, serta pembahasan soal-soal matematika, logika, pemrograman, dan CPNS.