Kumpulan Soal Program


 Dibawah ini merupakan Kumpulan Soal Program Beserta Kunci Jawaban : 

1. Bilangan X adalah bilangan yang apabila digit-digit nya dipangkat 3 (tiga) kemudian dijumlahkan menghasilkan angka yang sama dengan angka yang dimasukkan.
Contoh :
153 = 1^3 + 5^3 + 3^3 = 153.
120 = 1^3 + 2^3 + 0^3 = 9.
Dilihat dari contoh diatas, angka 153 adalah bilangan X sedangkan 120 bukanlah bilangan X.
Sekarang bantulah Andi mengecek apakah bilangan yang dimasukkan adalah bilangan X atau bukan.
INPUT      : 153
OUTPUT  : 153 adalah bilangan X
INPUT      : 120
OUTPUT  : 120 bukan bilangan X

2. Bilangan Y adalah bilangan yang apabila pemaktornya dijumlahkan akan menghasilkan bilangan yang sama dengan bilangan yang dimasukkan. Dengan syarat angka pemaktornya lebih kecil dari bilangan aslinya.
Contoh :
6 = bilangan pemaktornya adalah {1,2,3}, dimana apabila bilangan pemaktornya dijumlahkan, nilai penjumlahanya adalah 6 juga, sehingga angka 6 adalah bilangan X.
4 = {1,2}, berarti angka 4 bukan bilangan Y.
INPUT      : 6
OUTPUT  : 6 adalah bilangan Y
INPUT      : 56
OUTPUT  : 56 bukan bilangan Y

3. Bilangan Z adalah bilangan hasil kuadrat dari angka tertentu.
Contoh :
16 = 4^2, berarti 16 adalah bilangan Z
25 = 5^2, berarti 25 adalah bilangan Z
INPUT      : 16
OUTPUT  : YA
INPUT      : 27
OUTPUT  : TIDAK

4. Willze adalah seorang astronaut. Dia baru saja kembali dari planet Bumi 2.0 dan menemukan bahwa perhitungan arus listrik disana berbeda dengan perhitungan di planet Bumi. Penentuan arus listrik dilakukan dengan membagi nilai tegangan yang dimasukkan secara seri. Rumus mencari nilai arus listriknya adalah sebagai berikut :
I = 1 + (1/2) + (1/3) + (1/4) + … + (1/V-1) + (1/V)
Misalnya ada 6 volt tegangan listrik yang dimasukkan, maka arus listrik yang akan dihasilkan adalah I = 1 +1/2 + 1/3 + 1/4+ 1/5 + 1/6 = 2.45 A. Buatlah program untuk membantu Willze menghitung nilai arus listrik dari tegangan yang dimasukkan.
INPUT      : 6
OUTPUT  : 2.45 A
INPUT      : 2
OUTPUT  : 1.5 A

5. Pattern Asterisk
INPUT      : 4
OUTPUT   :

****
***
**
*
INPUT      : 3
OUTPUT  :

***
**
*

6. Pattern Angka
INPUT      : 3
OUTPUT  :

1
2 3
3 4 5
 
INPUT      : 5
OUTPUT  :

1
2 3
3 4 5
4 5 6 7
5 6 7 8 9

7. Penduduk di planet Bumi 3.0 memiliki cara yang unik untuk mencari determinan matriks NxN. Cara yang digunakan adalah dengan mengurangkan total dari penjumlahan angka diagonal kiri dengan diagonal kanan, kemudian diabsolutkan.
Misal matriks 3x3 : 
1 2 2 
4 5 6 
7 8 9
Diagonal Kiri = 1 + 5 + 9 = 15
Diagonal Kanan = 2 + 5 + 7 = 14
Determinan = |Diagonal Kiri – Diagonal Kanan| = |15 – 14| = 1
Input : Input pertama berupa ordo matriks N, kemudian input selanjutnya adalah angka sebanyak ordo matriks yang dimasukkan.
Output : Nilai determinan matriks.
INPUT      : 2
1 2
3 1
OUTPUT  : 3

INPUT      : 3
1 2 2
4 5 6
7 8 9
OUTPUT  : 1

8. Anto akan pergi ke kampus dan sekarang sedang mencari kaos kaki. Lemari penyimpanannya diisi dengan bermacam-macam kaos kaki dengan warna setiap pasang yang berbeda. Bantulah Anto untuk menghitung berapa banyak kaos kaki yang harus diambil untuk menemukan warna yang cocok.
Input : Banyak pasang kaos kaki dalam lemari
Output : Banyak pengambilan kaos kaki yang harus diambil oleh Anto untuk mendapatkan warna yang sama (scenario terburuk).
INPUT     :1
OUTPUT :2
INPUT     :2
OUTPUT :3

9. Semua planet menerapkan sistem cok sambung yang sama. Begitu juga planet Bumi 4.0. Erin adalah penduduk Bumi 4.0 dan sedang melakukan praktikum bersama teman-temannya sekarang. Namun, laptop Erin tiba-tiba low-battery dan wajib discharge. Ia baru menyadari bahwa hanya terdapat satu stop kontak di dalam lab dan sudah dipakai oleh temannya yang lain. Beruntung Erin membawa cok sambung di dalam tasnya sehingga ia bisa mencharger laptopnya. Tetapi ternyata ada temannya yang lain yang tidak kebagian tempat untuk mencharger, sehingga di tambahlah cok sambung yang baru. Sekarang Erin penasaran, berapa banyakkah device yang bisa di charge dengan cok sambung yang ada. Bantulah Erin untuk menyelesaikan rasa penasarannya.
Input : Inputan pertama berupa bilangan integer N yang menyatakan jumlah cok sambung. Lalu inputan selanjutnya adalah n buah bilangan Xi yang merupakan banyaknya slot yang terdapat pada tiap cok sambung.
Output : Output berupa jumlah maksimal device yang bisa di charge.
INPUT      :
2
4 5
OUTPUT : 8

INPUT     :
4
6 6 6 6
OUTPUT  : 21

Kunci Jawaban :

Nomor 1 :
#include<iostream>
#include<conio.h>
using namespace std;
int main()
{
int angka, balik, baru, total;
cout<<"Input Angka : ";
cin>>angka;
balik=0;
total=0;
baru=angka;
while(angka > 0)
{
balik =angka % 10;
angka = angka/10;
total=total+(balik*balik*balik);
}
if (total==baru)
{
cout<<"YA";
}
else
{
cout<<"TIDAK";
}
getch();
}
Nomor 2 :
#include<iostream>
#include<conio.h>
using namespace std;
int main ()
{
int n , x , i;
cout<<"Masukkan Nilai N : ";
cin>>n;
x=0;
for (i=1 ; i {
if (n%i==0)
{
x=x+i;
}
}
if (x==n)
{
cout<<"Ya"< }
else
{
cout<<"Tidak"< }
getch();
}
Nomor 3 : 
#include<iostream>
#include<conio.h>
using namespace std;
int main ()
{
int n , i , total, salah;
int x ;
cout<<"Masukkan Nilai N : ";
cin>>n;
for (i=1 ; i<=n ; i++)
{
if (n%i==0)
{
x=n/i;
if (x%i==0)
{
if (x/i==1)
{
total=0;
}
}
else
{
salah=1;
}
}
}
if (total==0)
{
cout<<"YA";
}
else if (salah==1)
{
cout<<"TIDAK";
}
getch();
}
Nomor 4 :
#include<iostream>
#include<conio.h>
#include<string.h>
using namespace std;
int main ()
{
float y, x,n,i,s;
cout< cout<<"Masukkan Nilai N : ";
cin>>n;
x=0;
for (i=1 ; i<=n ; i++)
{
y=1/i;
x=x+y;
}
cout<<"Hasil : "< getch();
}
Nomor 5 :
#include<iostream>
#include<conio.h>
using namespace std;
int main ()
{
int n , i, j;
cout<<"Masukkan Nilai N : ";
cin>>n;
for (i=1 ; i<=n ; i++)
{
for (j=1 ; j<=n ; j++)
{
if (j>=i)
cout<<"*";
else
cout<<" ";
}
cout< }
getch();
}
Nomor 6:
#include<iostream>
#include<conio.h>
using namespace std;
int main ()
{
int n , i, j;
cout<<"Masukkan Nilai N : ";
cin>>n;
for (i=1 ; i<=n ; i++)
{
for (j=1 ; j<=i ; j++)
{
if (j==1)
cout< else
cout<<(i+j)-1;
}
cout< }
getch();
}
Nomor 7 :
#include<iostream>
#include<conio.h>
using namespace std;
int main ()
{
int ordo, hasil, total, angka, baru, i, j ;
cout<<"Masukkan Ordo : ";
cin>>ordo;
total=0;
hasil=0;
for (i=1; i<=ordo; i++)
{
for (j=1; j<=ordo; j++)
{
cin>>angka;
if (i==j)
{
total=total+angka;
}
if ((i+j)==(ordo + 1))
{
hasil=hasil+angka;
}
}
cout< }
baru=total-hasil;
if (baru<0 br=""> {
baru=baru*-1;
}
cout<<"Determinan : "< getch();
}
Nomor 8 :
#include<iostream>
#include<conio.h>
#include<string.h>
using namespace std;
int main ()
{ float n, x ;
cout< cout<<"N : ";
cin>>n;
if (n<=0)
{
cout<<"Inputan Anda Salah";
}
else
{ x=((n+1)*2)/2;
cout<<"Hasil : "< }
getch();
}
Nomor 9 :
#include<iostream>
#include<conio.h>
using namespace std;
int main ()
{
float n , angka, total,i,x, hasil;
cout<<"Masukkan Nilai N : ";
cin>>n;
total=0;
for (i=1 ; i<=n ; i++)
{
x=n-1;
cin>>angka;
total = total + angka ;
hasil= total - x;
}
cout<<"Hasil : "< getch();
}

Related Posts

Kumpulan Soal Program
4/ 5
Oleh

2 comments

Tulis comments
avatar
May 25, 2017 at 4:38 PM

Ga perlu susah2 belajar lagi ya gan, udah ada jawaban sama soalnya😊

Reply
avatar
August 2, 2017 at 8:39 PM

Website ini banyak soal - soal pemrograman
Bisa latihan dan terdapat kunci jawabannya, untuk dapat mempermudah pembelajaran

Reply

- Dilarang memberikan komentar berbau SARA, pornografi dan provokasi
- Dilarang menyematkan link aktif
- Berkomentarlah sesuai dengan isi konten
- Komentar akan kami respon secepatnya

Terima Kasih telah berkunjung