Kumpulan Latihan Untuk Bahasa C++

22:54:00 , 0 Comments


Assalamualaikum Wr.Wb

Selamat malam sobat blogger semuanya, Pada artikel klai ini saja sedikit membahas tentang pemograman bahasa C yaitu menyangkut dsengan mata kuliah saya dikampus, mungkin dibawah ini ada beberapa contoh latihan yang sobat blogger perlukan, silahkan dilihat sendiri dan semoga artikel ini bermanfaat bagi kita semua.

  1. Input Output
  2. Decission
  3. Looping
  4. Fungsi
  5. Array
  6. String
  7. Pointer
  8. Struktur
  9. Operasi File
Untuk Laporan Resminya Silahkan bisa Download DISINI. Dilarang memodifikasi atau memperbanyak document. Selamat belajar.. Happy Coding ;)

1. Diketahui variabel - variabel sebagai berikut :
var_bulat = 32767;
var_pecahan1 = 339,2345678f;
var_pecahan2 = 3,4567e+40;
var_karakter = 'S';
Buat program untuk menampilkan semua variabel di atas.

Listing program :


2. Diketahui variabel - variabel sebagai berikut :
int a = 12, b = 2, c = 3, d = 4;
Buat program untuk mencetak hasil :
a % b
a - c
a + b
a / d
a / d * d + a % d
a % d / d * a - c
Listing program :



1. Buatlah program untuk menginput dan menampilkan biodata pribadi seseorang yang terdiri dari nama, tempat lahir, tanggal lahir, alamat, nomor telpon dan jenis kelamin.

Listing Program :



2. Buat program untuk menghitung luas dan volume bola , dengan panjang jari-jari yang diinputkan dari keyboard. Definisikan sebuah konstanta PI dengan nilai 3.14f.

Listing program :

3. Buatlah program untuk mengkonversi suhu dari celcius ke fahrenheit dengan rumus : F=C*1.8+32 

input : suhu dalam Celcius
Output : suhu dalam Fahrenheit

Listing program :


1. Buatlah program untuk menghitung diskriminan dan mencari akar akar dari persamaan kuadrat :

ax2 + bx + c = 0, dengan ketentuan sbb :
D = b2 - 4ac

  • Jika D = 0 , maka terdapat 2 akar real yang kembar, yaitu : x1 = x2 = -b/2a
  • Jika D > 0 , maka terdapat 2 akar real yang berlainan, yaitu :
  • x1 = (-b + sqrt(D)) / 2a
  • x2 = (-b - sqrt(D)) / 2a
  • Jika D < 0 , maka terdapat 2 akar imajinair yang berlainan, yaitu :
  • x1 = -b /2a + (sqrt(-D) / 2a) i
  • x2 = -b /2a - (sqrt(-D) / 2a ) i
input : a, b, c (float)
output : Nilai Diskriminan serta nilai akar-akar persamaan tsb (x1 & x2)
Listing program:


2. Dengan menggunakan pernyataan else - if. buatlah program kalkulator sederhana, untuk mendapatkan tampilan hasil sebagai berikut :

Masukkan bilangan pertama : 5
Masukan bilangan kedua : 3
Menu Matematika
1. Penjumlahan
2. Pengurangan
3. Pembagian
4. Perkalian
Masukkan pilihan anda : 4
Hasil operasi tersebut = 15
Listing program :


1. Dalam baris baris yang terpisah . Hitunglah bilangan triangular dari masukkan pengguna yang dibaca dari keyboard dengan menggunakan scanf(). Bilangan triangular adalah penjumlahan dari bilangan masukan dengan seluruh bilangan sebelumnya, sehingga bilangan triangular dari 7 adalah : 7+6+5+4+3+2+1


- input : Masukkan sebuah bilangan : 7
- output : Bilangan triangular 7 adalah 28

Listing program :



2. Gunakan loop for dengan kenaikan variabel negative untuk menampilkan seluruh karakter dari Z sampai dengan A dalam baris baris yang terpisah.
Listing program :


3. Gunakan loop for untuk membuat program bilangan ganjil sampai ke-n (nilai n diinputkan)
Listing program:


4. Gunakan loop for untuk membuat program sebagai berikut :
input : n
output : 1 -2 3 -4 5 -6 7 -8 ... n
Listing program :


5.Gunakan loop while untuk membuat program yang dapat mencari total angka yang dimasukkan dengan tampilan sebagai berikut :

Masukkan bilangan ke-1 : 5
Mau memasukkan data lagi [y/t] ? y
Masukkan bilangan ke-2 : 3
Mau memasukkan data lagi [y/t] ? t
Total bilangan = 8

Listing program :


6. Pada program no 5 tambahkan penghitungan rata-rata, maksimum dan minimum angka yang dimasukkan.
Listing Program :



7. Dengan menggunakan pernyataan break dan continue, buatlah program untuk membuat program dengan input n , dan output bilangan ganjil kecuali kelipatan 7 dan 11 mulai dari 1 sampai < n atau bilangan tersebut < 100
Listing program :

8. Buatlah program untuk menerima daftar nilai mahasiswa sbb :
input :
- Jumlah data (n)
- Nilai ke-1 s/d Nilai ke-n
output :
- Nilai minimal
- Nilai maksimal
- Nilai rata-rata
Listing program :

9.Dengan menggunakan pernyataan nested loop, Buatlah program berikut : input : n
output :
1
2 2
3 3 3
..........n kali
n n n n n n ....n
Listing program: 


10. Dengan menggunakan pernyataan nested loop, buatlah program yang menampilkan bilangan prima sampai ke-n (n diinputkan keyboard)
Listing program :


1. Buatlah program untuk menghitung nilai bilangan kuadrat (misal nama fungsinya = kuadrat) . Fungsi tersebut memiliki sebuah parameter bertipe float yaitu bilangan yang akan di kuadratkan serta memiliki return value bertipe float, yaitu hasil kuadratnya.

  • Tulislah prototipe fungsi untuk fungsi tersebut.
  • Buat fungsi main() untuk memanggil fungsi kuadrat() tersebut dengan bilangan x yang akan dicari kuadratnya merupakan input dari user.
Listing program :


Analisa :

Program diatas menggunakan dua fungsi . Fungsi main() digunakan untuk memasukkan berapa banyak triangular dan fungsi int triangular() terdapat looping dari 0 sampai ke n dimana dalam proses looping tersebut terdapat proses penjumlahan kemudian dicetak.

2. Buatlah untuk menghitung faktorial dengan menggunakan 2 fungsi main() dan faktorial(). Fungsi faktorial meberikan nilai return value bertipe long int yang akan dicetak ke layar dalam fungsi main().

Listing program :


Analisa :

Program diatas menggunakan dua fungsi. Fungsi main() digunakan untuk memasukkan suatu nilai yang sebagai parameter dari faktorialnya dan fungsi long int faktorial (int x) digunakan untuk menampilkan bilangan mulai dari parameter tersebut secara besar ke kecil dengan proses looping yang dikurangi dengan 1 kemudian semuanya dikalikan dan dikembalikan ke fungsi main () untuk menampilkan hasilnya.

3. Definisika sebuah fungsi radian() yang berfungsi untuk mengkonversi besaran sudut dari derajat ke radian dengan rumus : rad = drjt/180.0f * Pl. Fungsi tersebut memiliki sebuah parameter yaitu derajat yang akan di konversi dan memiliki sebuah return value berupa hasil konversi dalam radian.
  • Tulislah prototipe fungsi untuk fungsi tersebut.
  • Buat fungsi main() untuk memanggil fungsi radian() setelah sebelumnya memasukan nilai derajat yang akan dikonversi.
  • Definisikan PI sebagai sebuah konstanta yang bernilai : 3,14159f
Listing Program:
Analisa :

Program diatas menggunakan dua fungsi. Fungsi main() digunakan untuk memasukkan nilai sudut yang akan dikonversi dan fungsi float radian (float drjt) digunakan unrtuk mengkonversi nilai dari derajat ke radian dan memiliki nilai kembalian yang kembali ke fungsi main () untuk dicetak hasilnya.

4. Definisikan sebuah fungsi float konversi (suhu, asal, tuj) untuk mengkonversikan suhu dari celcius ke fahrenheit, celcius ke reamur , fahrenheit ke celcius , fahrenheit ke reamur, reamur ke celcius dan reamur ke fahrenheit. dimana suhu adalah suhu sumber, asal adalah satuan suhu yang akan dikonversi dan tuj adalah satuan hasil konversi.
  • Tulislah prototipe fungsi untuk fungsi tersebut.
  • Buat fungsi main() untuk memanggil fungsi konversi() setelah sebelumnya meminta masukkan nilai suhu, satuan asal dan satuan tujuannya.
  • Contoh tampilan :

Masukkan suhu sumber : 100
Masukkan satuan asal : C
Masukkan satuan tujuan : R
Hasil konversi suhu 100 C adalah 80 R
Listing program :


Analisa :
Program diatas menggunakan dua fungsi main() digunakan untuk memasukan nilai suhu , suhu asal dan suhu tujuan dan fungsi float konversi (float x, char y, char z) digunakan untuk mengkonversi suhu dari suhu asal ke suhu tujuan dimana terdapat proses if else dan mempunyai nilai kembalian yang akan dikembalikan ke fungsi main() yang kemudian dicetak hasilnya.

5. Buatlah suatu fungsi permutasi() dan kombinasi() untuk menghitung permutasi dan kombinasi dari pasangan bilangan yang dinyatakan dengan formula:

permutasi : P(n,r) = n! / (n-r)!
kombinasi : C(n,r) = n! / r! (n-r)!
Listing program :
Analisa :
  • Pada fungsi main() digunakan untuk memasukan n dan r
  • Pada fungsi permutasi terdapat 2 looping yaitu dimulai dari n dan dikurang hingga 1. kurang didapat dari n-r . Didalam looping terjadi perkalian untuk mendapatkan faktor dari n dan faktor dari kurang. untuk permutasi didapat dari faktor n dibagi faktor kurang.
  • Pada fungsi kombinasi , terdapat 3 looping yaitu dimulai dari n, r dan kurang hingga 1. kurang didapat dari n-r. Didalam looping terjadi perkalian untuk mendapatkan faktor dari n, faktor dari r, dan faktor dari kurang. Untuk kombinasi didapat dari faktor dari n / (faktor kurang * faktor r).
6. Definisikan fungsi-fungsi sebagai berikut :
  • fungsi f_to_i() untuk mengubah ukuran dari satuan kaki ke inchi.
  • fungsi i_to_cm() untuk mengubah ukuran dari satuan inchi ke centimeter.
  • fungsi c_to_m() untuk mengubah ukuran dari satuan centimeter ke meter.
  • Didalam fungsi main() mintalah masukkan ukuran dalam satuan kaki(feet), kemudian lakukan konversi sampai mendapatkan keluaran berupa ukuran dalam meter. Tentukan jumlah dan tipe parameter dan return value yang dibutuhkan.

keterangan : 1 kaki = 12 inchi, 1 inchi = 2,54 cm , 100 cm = 1 meter.
Listing program:


Analisa :

Program tersebut terdapat 4 fungsi. Fungsi main() digunakan untuk memasukan suatu ukuran yang akan dikonversi , fungsi f_to_i() untuk mengkonversi dari satuan kaki ke satuan inchi dan langsung meneruskan ke fungsi i_to_cm() untuk mengkonversi dari satuan inchi ke centimeter dan langsung meneruskan ke fungsi cm_to_m() untuk mengkonversi dari satuan centimeter ke meter dan langsung mengembalikan fungsi main() untuk kemudian dicetak hasilnya.

1. Lakukan percobaan untuk menginputkan string dari keyboard dengan menggunakan : scanf(), gets() dan fgets(). Analisislah dan berikan kesimpulan untuk setiap fungsi tsb. 




2. Buatlah program untuk menerima input string dari keyboard kemudian hitunglah panjang dari string tersebut dan tampilkan hasilnya.



Analisa :

Fungsi pjgstr() digunakan untuk menentukan panjang karakter dari suatu string. panjang dari string ini didapat dengan menggunakan loop while yang menggunakan acuan kondisi element ke -i bernilai null ('\0') atau tidak. jika element ke-i dari string tidak bernilai null maka loop akan terus berjalan dan nilai i akan bertambah . Return value dari fungsi ini merupakan index i yang merupakan element null dari variable string.

3. Lanjutkan program nomor 2 untuk membalik string tersebut misalnya: Budi -> iduB

Analisa :


Fungsi blkstr() digunakan untuk membalik karakter dari suatu string misal budi -> idub . Agar dapat menyelesaikan kasus ini kita menggunakan fungsi pjgstr() yang telah dibuat di kasus nomor 2. Untuk membalik string di fungsi blkstr() menggunakan loop dari 0 sampai setengah dari panjang string. Didalam loop tersebut terdapat logika penukaran antar elemen ke-i dengan elemen ke-n. Index ke-i akan bertambah dan index ke n akan berkurang nilainya.

4. Buatlah program yang mendeklarasikan sekaligus menginisialisasi sebuah array kata 1[], kemudian copy lah isi array 1[] tsb kedalam array kata2[], selanjutnya tampilkan kedua isi array tersebut ke layar.

Listing program



Analisa : 

Fungsi cpystr digunakan untuk menyalin value dari satu string ke string lain . hal ini dapat dilakukan dengan cara menggunakan loop dari 0 sampai dengan panjang dari string sumber. Didalam loop element index ke i dari string tujuan akan diisi dengan elemen index ke i dari string sumber.


5. Ulangilah soal nomor 2,3 dan 4 diatas dengan menggunakan fungsi fungsi standar.

Listing program :

nomor 2 -> fungsi pjgstr() dapat diganti strlen();



Nomor 3 -> fungsi blkstr() dapat diganti strrev();


Nomor 3 -> fungsi cpystr() dapat diganti strcpy();


6. Lakukan percobaan untuk membandingkan 2 buah string dengan menggunakan fungsi strcmp() dan strcmpi(). Analisalah dan berikan kesimpulan tentang perbedaan dan contoh aplikasi untuk keduanya.

Listing program.


Analisa :

Fungsi strcmp digunakan untuk membandingkan 2 string secara Case Sensitive (huruf besar dan kecil berpengaruh) sedangkan strcmpi digunakan untuk membandingkan 2 string secara non case sensitive.

1. Deklarasikan sebuah variabel array of int, selanjutnya isi array tersebut kemudian tampilkan isi variabel tersebut menggunakan statement for(). Ingat apabila jumlah deklarasi index adalah n maka nilai index-nya adalah dimulai dari 0 sampai dengan n-1.


Listing program :



2. Deret fibonaci adalah deret yang dimulai dengan dua angka yang bernilai 0 dan 1, kemudian deret ketiga ditentukan dari penjumlahan kedua angka tersebut, sedangkan deret keempat ditentukan dari dua angka sebelumnya begitu seterunya. sehingga didapatkan deret fibonaci sebagai berikut 0 1 1 2 3 5 8 13 21 ....



Buatlah program untuk meminta input dari user berupa sebuah bilangan, kemudian tampilkan deret fibonacci mulai dari 1 sampai dengan bilangan tersebut.

Listing Program :




3. Buat penjumlahan dua matriks A[2][2] dengan B[2][2]. Hasil penjumlahan tersebut disimpan dalam matriks C. Tampilkan di layar masing-masing isi dari matriks A,B dan C.

Listing Program :




4. Buatlah sebuah variabel array of int yang memiliki ukuran MAKS. Dengan menggunakan looping for(), masukkan sebanyak n data ke dalam array tsb kemudian carilah nilai terbesar yang ada dalam array tersebut.

Listing Program :


5. Buatlah program yang terdiri atas :
  • Fungsi input() yang bertugas menanyakan jumlah data sekaligus memasukkan data bilangan sebanyak yang diminta ke dalam array nilai[]
  • Fungsi findmax() yang bertugas mencari nilai terbesar yang ada pada array nilai[] tersebut
  • Fungsi main() yang memanggil fungsi input() dan fungsi findmax(), selanjutnya menampilkan nilai terbesar yang ada pada array nilai[]                                             
Listing Program


   Itulah beberapa contoh latihan pemograman bahasa C++ dan semoga contoh-contoh diatas dapat bermanfaat bagi kita semua. Terimkasih atas kunjungannya dan jangan lupa untuk klik share agar sobat junior laiinnya juga bisa menyelesaikan tugas sekolah atau kuliahnya. 

Mohon maaf apabila ada kekurangan ataupun kesalahan dalam penulisan ataupun dalam hal laiinya, Bila ada masukan atau kritikan untuk Blog ini silahkan berikan pendapat sobat dikolom komentar ataupun melalui Menu Contact Us Yang ada diatas.

Anonymous

Terimakasih telah berkunjung ke web saya, jika ada yang ingin ditanyakan silahkan tinggalkan komentar atau kirim email ke saifulfuaadi@gmail.com

0 komentar: