C++ soal 8

Soal ke delapan,

input = 3

output =

2

3  2

5  3  2


 

Sama seperti soal sebelumnya, soal ini membutuhkan scanning, looping, print dan juga menyimpan array.

Bagilah program ini menjadi 2, dimana bagian pertama adalah memasukan data ke dalam program.

Untuk mencari bilangan prima dan memasukannya ke dalam array intinya anda harus mencari bilangan terkecil yang mempunyai faktor 2. Bilangan prima dicari dengan cara mencari jumlah faktor. Faktor adalah bilangan yang bisa membagi bilangan tadi dengan sisa 0.

Sedangkan untuk pencarian bilangan berikutnya, mulai lah dari bilangan itu sendiri ditambah satu agar bilangan tadi tidak dihitung lagi,bingung? langsung liat contoh nya

ex:

pencarian dimulai

1 memiliki faktor hanya 1

2 memiliki faktor 2 yaitu satu dan dua →  2 dimasukan ke array

tapi pada program dimulai dengan array[0] yang sudah di isi 2, sehingga angka berikut nya mulai 3.

8a

Dengan menggunakan while do, program akan mencari a yang prima dan memasukan nya kedalam array, lalu akan dilakukan lagi pencarian yang dimulai dengan a yang baru yaitu a lama + 1. Selama a bukan bilangan dengan faktor dua, maka a akan ditambah satu terus tanpa dimasukan ke dalam array. Jangan lupa bahwa array dimulai dari array ke 0.

itulah bagian pertama.

Bila kita mengerjakan bagian pertama dengan array maka bagian kedua sangatlah simple yaitu kita memulai looping untuk print yang sama dengan soal kedua, dimana dibutuhkan spasi yang berbeda tiap baris agar program terlihat rata kanan.

seperti ini

bagian kedua mulai dari //print ke bawah
bagian kedua mulai dari //print ke bawah

Seharusnya tidak ada lagi kesulitan saat print karena sudah dilakukan berkali – kali, kalau masih bingung mungkin perlu kembali ke tutorial dasar c++.

 

 

C++ soal 7

Soal ke tujuh,

input = 3

output

1

1   1

1   1   2  → fibbonacci


 

Berbeda dengan program – program sebelumnya, soal nomer 7 membutuhkan array, panjang array ini harus di deklarasikan sebelum program dijalankan .

Program ini dibagi menjadi 2 bagian, yang pertama ada bagian dimana program akan menyimpan fibonacci dalam suatu array. Secara umum fibonacci adalah penambahan atas dua angka sebelum nya, jadi array [2] adalah array [1]+array[0]. Setelah anda bisa menyipan bilangan fibonacci dalam array maka bagian yang susah sudah selesai

7

Bagian kedua sama persis dengan program pertama, dimana akan di buat x baris dan setiap baris akan di print array[i], jangan lupa untuk mendeclare i awal sebagai 0 karena array dimulai dari angka 0.

Jika masih belum paham, ada baiknya membaca lagi tutorial yang ada di intro.

C++ soal 6

Soal enam,

input = 5

output =

*                   *                   *                      *                   *

*           *      *          *           *           *      *          *

*                   *                       *                   *                 →  sampai selesai

*           *       *        *            *           *       *        *

*                   *                *                           *                *


Dari 8 soal yang ada, ini yang paling susah karena membutuhkan capability untuk mencari pola, untuk mempermudah mencari pola, coba bagi struktur ini sebagai dua bagian yaitu bagian atas sampai tengah, dan bagian bawah. Kenapa? Karena pada bagian 1 – tengah pola nya terbalik dengan yang di bawah.

Supaya lebih mudah mencari pola nya, ganti * dengan posisi bintang dalam garis ex:

input 3          input 5            input 7

1 3 5 2 7         1 5 9  13           1     7    13

2 4 6 8            2  4  6  8 10       2   6  8 12  14

1 3 5 7            3  7  11               3  5 7  11  15

2 4 6 8 10            4   12 16

1  5  9  13           3  5 7  11  15

2   6  8 12  14

1     7    13

Bingung? Gapapa pikir lagi 5 jam ke depan.


Continue reading C++ soal 6

C++ soal 5

Soal nomer 5,

input = 3                                                                                 input =5

output =                                                                                  output =

***                                                                                            *****

* *                                                                                             *      *

***                                                                                            *      *

*      *

*****

kalau tidak jelas intinya membuat persegi dengan * dengan panjang x dan lebar x, dimana sisi dalam persegi itu kosong. Continue reading C++ soal 5

C++ soal 4

Soal ke empat,

input = 3

output =

1

1    2

1    2     3


Inti soal ini adlah bagaimana kita mengatur jumlah spasi agar bisa membentuk bidang segi tiga, jangan lupa juga saat print angka nya, kita juga perlu menggunakan spasi agar tidak berdempetan.

perbedaan dengan nomer 2 hanya di jumlah spasi saja.
perbedaan dengan nomer 2 hanya di jumlah spasi saja.

Bedanya dengan nomer 2, nomer 4 membutuhkan spasi lebih dikit setiap variable j bertambah.

 

C++ soal 3

Soal ketiga,

input = 3

output =

1 2 3

1 2

1


Masih soal dengan tipe yang sama, yaitu scan, loop lalu print dan sama seperti soal nomer dua, soal ini juga membutuhkan output menjadi rata kanan, karena itu perlu dilakukan looping terhadap spasi.

3
perhatikan for yang pertama dimana nilai i bukan bertambah tapi berkurang.

bedanya, di soal nomer 3 ini justru perintah untuk menulis variable j dimulai dari 1  ke x, sehingga j di baris pertama menjadi 1 sampai x dan di baris terakhir hanya ada 1. Hal ini dilakukan dengan cara mengubah for() milik i yang di soal sebelumnya naik menjadi turun, gunakan cara –i.

Kalau lupa bisa liat lagi kesinikalau lupa semua tentang c++ kembali lah ke halaman introduction.

 

C++ soal 2

Soal kedua,

input = 3

output=

1

2 1

3 2 1


Sama seperti soal sebelumnya, program ini cukup sederhana karena hanya membutuhkan scanning, looping, dan printing. Bedanya, soal kedua mengharuskan output yang rata kanan, bukan rata kiri, karena itu harus di rekayasa dengan penambahan perintah untuk print ” ” atau spasi.

perhatikan for yang pertama
perhatikan for yang pertama

Di program ini bisa kita lihat cara untuk rata kanan hanya lah print spasi sebanyak nilai x dikurangi i, kenapa? Karena baris yang paling panjang adalah baris yang isi angkanya 1 sampai x, sehingga ada x angka, sedangkan yang paling pendek hanya 1, jadi dibutuhkan spasi sebanyak (x-i), dimana i adalah angka yang harus di print baris itu sendiri.

ex:

pada baris 1,nilai i=1 x=3 j=1

maka akan di print spasi sebanyak (3-1) kali, di ikuti print angka 1

pada baris 1,nilai i=2 x=3 j=1,2

maka akan di print spasi sebanyak (2-1) kali di ikuti angka 1 dan 2

dan seterusnya sampai tidak ada spasi karena i = x.

Sisa program ini masih sama dengan yang pertama.

 

C++ Soal 1

Soal pertama,

input     = 3

output  =

1

1 2

1 2 3


Karena ini soal pertama, ada baiknya noobs diberitau cara membuka VS, tekan windows+R →  ketik vcexpress.exe →run. New Project, next → empty project → finish → click kanan di source file → add→new item→c++ file→add→okay.

Program ini cukup sederhana dan hanya membutuhkan scanning, print, dan looping.

maaf lupa return 0; tapi masih bisa
maaf lupa return 0;
tapi masih bisa (y)

Setelah integer di deklarasikan, scanf digunakan untuk mendapatkan data yang di inginkan, dalam hal ini x. Dalam perulangan i, i akan bertambah dari 1 → 2 →3 ( i++ artinya i = i + 1), karena itu ada 3 baris sedangkan j digunakan untuk memutuskan berapa kali dan apa yang dituliskan tiap baris, karena j dimulai dari 1 sampai dengan i, makan nilai j yang di print 1 → 1 2 → 1 2 3.

Setelah kurung tutup j jangan lupa beri printf(“\n”) supaya baris selanjut nya dicetak di new line.

Setelah perulangan i dan j selesai maka program berhenti, kalau masih bingung coba baca lagi tutorial nya.