Anda di halaman 1dari 10

Praktikum 4 : PENGULANGAN PROSES (LOOPING)

1. Menghitung jumlah delapan triangular tanpa pernyataan for()

/* File program :triangular1.c */


#include <stdio.h>

main()
{
int jumlah = 0;

jumlah = 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8;

printf("Jumlah delapan triangular adalah %d\n",jumlah);


}

2. Pemakaian for untuk membentuk deret naik.

/* File program : for1.c */


#include <stdio.h>

main()
{
int bilangan;

for(bilangan = 20; bilangan <= 100; bilangan += 10)


printf("%d\n", bilangan);
}

3. Pemakaian for untuk membentuk deret turun

/* File program : for2.c */

#include <stdio.h>

main()
{
int bilangan;

for (bilangan = 60; bilangan >= 10; bilangan -= 10)


printf("%d\n", bilangan);
}

Praktikum 4 hlm. 1
4. Menghitung jumlah 200 triangular menggunakan for().

/* File program : triangular2.c */


#include <stdio.h>

main()
{
int n, jumlah = 0;

for (n=1; n<=200; n++)


jumlah = jumlah + n;

printf("Jumlah 200 triangular adalah %d\n", jumlah);


}

5. Membuat tabel dari jumlah triangular yang diinputkan

/* File program : triangular3.c */


#include <stdio.h>

main()
{
int n, bil, jumlah = 0;

printf("Masukkan bilangan triangular : ");


scanf("%d", &bil);

printf("\nTABEL PENJUMLAHAN TRIANGULAR\n\n");


printf("%3s%10s\n\n","n","Jumlah");

for (n=1; n<=bil; n++)


{
jumlah = jumlah + n;
printf("%3d %7d\n", n, jumlah);
}
}

Praktikum 4 hlm. 2
6. Menghitung jumlah kata dan karakter dalam suatu kalimat

/* File program : jumkar.c */


#include <stdio.h>

main()
{
char kar;
int jumkar = 0, jumspasi = 0;

puts("Masukkan sebuah kalimat dan akhiri dengan ENTER.");


puts("Saya akan menghitung jumlah karakter ");
puts("pada kalimat tersebut.\n");

while((kar = getchar()) != '\n')


{
jumkar++;
if (kar == ' ') jumspasi++;
}
printf("\nJumlah karakter = %d", jumkar);
printf("\nJumlah SPASI = %d\n\n", jumspasi);
}

7. Membalik angka menggunakan pernyataan while().

/* File program : loop9.c */


#include <stdio.h>

main()
{
int bil, digit_kanan;

printf("Masukkan bilangan yang mau dibalik : ");


scanf("%d", &bil);

printf("Hasil pembalikannya = ");


while(bil != 0)
{
digit_kanan = bil % 10;
printf("%d", digit_kanan);
bil = bil / 10;
}
printf("\n");
}

Praktikum 4 hlm. 3
8. Membaca tombol yang ditekan.
/*File program : pilihan.c */
#include <stdio.h>

main()
{
char pilihan;
int sudah_benar = 0; /* diberi nilai salah lebih dahulu */

printf("Pilihlah Y atau T.\n");

/* program dilanjutkan jika tombol Y,y,T atau t ditekan */


while(!sudah_benar)
{
pilihan = getchar(); /* baca tombol */
sudah_benar = (pilihan == 'Y') || (pilihan == 'y')||
(pilihan == 'T') || (pilihan == 't');
}

switch(pilihan) /* memberi keterangan tentang pilihan */


{
case 'Y':
case 'y':
puts("\nPilihan anda adalah Y");
break;
case 'T':
case 't':
puts("\nPilihan anda adalah T");
}
}

9. Pemakaian break untuk keluar dari looping

/* File program : tamat.c */


#include <stdio.h>

main()
{
char kar;

printf("Ketik sembarang kalimat");


printf(" dan akhiri dengan ENTER\n\n");

for ( ; ; )
{
kar = getchar();
if(kar == '\n')
break;
}
printf("Selesai\n");
}

Praktikum 4 hlm. 4
10. Loop for bersarang untuk membuat tabel perkalian

/* File program : tblkali.c */


#include <stdio.h>

#define MAKS 8

main()
{
int baris, kolom, hasil_kali;

for (baris = 1; baris <= MAKS; baris++)


{
for (kolom = 1; kolom <= MAKS; kolom++)
{
hasil_kali = baris * kolom;
printf ("%2d", hasil_kali);
}
printf("\n"); /* pindah baris */
}
}

11. Menampilkan bilangan ganjil antara 7 - 25 kecuali 15 menggunakan continue.

/* File program : ganjil.c */


#include <stdio.h>

main()
{
int x;

for (x = 7; x <= 25; x += 2)


{
if (x == 15)
continue;
printf("%4d", x);
}
printf("\n");
}

Praktikum 4 hlm. 5
12. Pemakaian exit() untuk menghentikan eksekusi program.

/* File program : keluar.c */


#include <stdio.h>
#include <stdlib.h>

main()
{
char kar;

printf("Tekanlah X untuk menghentikan program.\n");


for ( ; ;)
{
while ((kar = getchar()) == 'X')
exit(0);
}
}

Praktikum 4 hlm. 6
Soal-soal latihan Praktikum IV :

1. Buatlah program untuk menampilkan semua bilangan genap yang terletak


antara 20 sampai dengan 120, dengan menggunakan for.

2. Modifikasikan program konversi suhu (pada Bab II) dengan menambahkan


tawaran kepada user : "Mau menghitung lagi ? [Y/T]". Dan proses akan
berulang jika user menekan 'Y' atau 'y'. Jika user menekan 'T' atau 't' maka
program akan terhenti. (Petunjuk : gunakan while atau do-while).

Nilai tambah : Program bisa mengecek masukan user sehingga hanya akan
menerima salah satu di antara karakter ‘Y’, ‘y’, ‘T’ atau ‘t’.
Jika user memasukkan selain karakter-karakter tsb maka :
- Tampilkan pesan kesalahan : “Anda salah memasukkan karakter !”
- Meminta user untuk memasukkan karakter baru

Praktikum 4 hlm. 7
#include <stdio.h>

main()
{
char jawaban;
float celc, fahr;
int sudah_benar;

do
{
printf("Masukkan suhu dalam C : ");
scanf("%f", &celc);

fahr = 1.8f * celc + 32;


printf("Suhu %g celcius = %g fahrenheit\n", celc, fahr);

fflush(stdin); /* mengosongkan penampung keyboard */

printf("Mau menghitung lagi [Y/T] ? ");


scanf(“%c”, &jawaban);
printf("\n");
} while(jawaban == 'Y' || jawaban == 'y');
}

3. Bilangan bulat faktorial n, ditulis dengan n! adalah dihasilkan dari


mengalikan dari 1 sampai dengan n. Contohnya 5! = 1 x 2 x 3 x 4 x 5 =120.
Buatlah program untuk menampilkan tabel hasil faktorial dari suatu
bilangan yang diinputkan.
Nilai tambah : Usahakan tampilan bilangan rata kanan.
Contoh : Input : Masukkan faktorial = 7
Output : n n!
-------------------
1 1
2 2
3 6
4 24
5 120
6 720
7 5040
-------------------
4. Buatlah program untuk menghitung jumlah angka dari suatu bilangan.
Contohnya : Jumlah angka dari bilangan 3255 = 3 + 2 + 5 + 5 = 15
Jumlah angka dari bilangan 4589 = 4 + 5 + 8 + 9 = 26
dan sebagainya.

Praktikum 4 hlm. 8
5. 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 (rata-rata = nilai total / jumlah data)
(Petunjuk : Gunakan loop for dan seleksi kondisi dengan if)

/* File program : nilai.c


Menampilkan nilai maks, min dan rata dari sekumpulan data */
#include <stdio.h>

main()
{
int jum, i;
float nilai, min, maks, rata, total = 0;

printf("DATA NILAI MAHASISWA\n\n");


printf("Masukkan jumlah data : ");
scanf("%d", &jum);

for(i=1; i<=jum; i++)


{
printf("Masukkan data nilai ke-%d : ", i);
scanf("%f", &nilai);

if(i == 1)
{
min = nilai;
maks = nilai;
}

if (nilai > maks)


maks = nilai;
if (nilai < min)
min = nilai;
total = total + nilai;
}

rata = (total / jum);


printf("\nNilai maks = %g\n", maks);
printf("Nilai min = %g\n", min);
printf("Rata-rata = %g\n", rata);
}

Praktikum 4 hlm. 9
6.

Praktikum 4 hlm. 10