Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

TEL 2112 Dasar Komputer & Pemograman Contoh Pemecahan Masalah 2

Presentasi serupa


Presentasi berjudul: "TEL 2112 Dasar Komputer & Pemograman Contoh Pemecahan Masalah 2"— Transcript presentasi:

1 TEL 2112 Dasar Komputer & Pemograman Contoh Pemecahan Masalah 2
Dosen: Abdillah, S.Si, MIT Website:

2 Tujuan Mahasiswa mampu menyelesaikan masalah berdasar contoh algoritma penyelesaian masalah dan listing programnya.

3 1. Menentukan Perpangkatan
Buatlah algoritma dan program C yang membaca nilai x dan y kemudian memanggil fungsi pangkat yang menghitung perpangkatan xy dan mengembalikan nilai xy. Program juga menampilkan nilai xy tersebut di layar monitor

4 Algoritma PROGRAM Hitung_Pangkat
{ Program yang menghitung nilai x pangkat y } DEKLARASI x : integer function Pangkat (input x : integer) → integer ALGORITMA: read (x) write (xy = Pangkat(x))

5 Algoritma function Pangkat (input x : integer) → integer
{ Menghitung nilai x pangkat y } DEKLARASI i,y, pangkat: integer ALGORITMA: read (y) pangkat ← 1 for (i←1 to y) do pangkat ← pangkat * x i ← i + 1 return pangkat;

6 #include <stdio.h> int Pangkat(int x); void main() { int x;
printf("x = "); scanf("%d", &x); printf("x pangkat y = %d \n", Pangkat(x)); } int Pangkat(int x) /* Mengembalikan nilai x pangkat y */ int i,y,pangkat = 1; printf("y = "); scanf("%d", &y); for (i=1; i<=y;i++) pangkat = pangkat * x; return pangkat;

7 2. Menghitung Deret Buatlah algoritma dan program C yang membaca nilai N kemudian memanggil fungsi deret yang menghitung N dan mengembalikan nilai penjumlahan deret. Program juga menampilkan nilai penjumlahan deret tersebut di layar monitor.

8 Algoritma PROGRAM Hitung_Deret { Program yang menghitung nilai deret }
DEKLARASI N : integer function Deret (input N : integer) → integer ALGORITMA: read (N) write (Jumlah deret N = Deret(N))

9 Algoritma function Deret (input N : integer) → integer
{ Menghitung nilai deret N } DEKLARASI i, deret : integer ALGORITMA: deret ← 0; for (i←1 to N)do deret ← deret + i i ← i + 1 return deret;

10 #include <stdio.h>
int Deret(int N); void main() { int N; printf("N = "); scanf("%d", &N); printf("Jumlah deret N = %d \n", Deret(N)); } int Deret(int N) /* Mengembalikan nilai deret N */ int i, deret = 0; for (i=1; i<=N;i++) deret = deret + i; return deret;

11 3. Menentukan Faktorial Buatlah algoritma dan program C yang membaca nilai N, kemudian memanggil fungsi Faktorial yang menghitung N! = 1 x 2 x 3 x ... x N dan mengembalikan nilai N! Program utama kemudian menampilkan nilai N! tersebut di akhir program.

12 Algoritma PROGRAM Hitung_Faktorial
{ Program yang menghitung nilai faktorial } DEKLARASI N : integer function Faktorial (input N : integer) → integer ALGORITMA: read (N) write (N! = Faktorial(N))

13 Algoritma function Faktorial (input N : integer) → integer
{ Menghitung nilai N faktorial } DEKLARASI i, faktorial : integer ALGORITMA: faktorial ← 1; for (i←1 to N) do faktorial ← faktorial * i i ← i + 1 return faktorial

14 #include <stdio.h>
int Faktorial(int N); void main() { int N; printf("N = "); scanf("%d", &N); printf("N! = %d \n", Faktorial(N)); } int Faktorial(int N) /* Mengembalikan nilai N faktorial */ int i, faktorial = 1; for (i=1; i<=N;i++) faktorial = faktorial * i; return faktorial;

15 4. Menentukan Data Terkecil
Tulislah algoritma untuk menentukan bilangan terkecil dari N buah data integer yang dibaca dari papan ketik dan disimpan dalam sebuah array. Nilai N ditentukan maksimum 20.

16 Algoritma PROGRAM Cari_Minimum
{Menentukan bilangan terkecil dari N buah data integer} DEKLARASI N = 20, bil[N], nmin, jml, i : integer function Min (input X[ ] , k : integer) → integer ALGORITMA: read (jml) for i  0 to jml do read ( bil[i] ) endfor nmin  Min(bil[i] , jml) write (nmin)

17 Algoritma Fungsi Min function Min (input X[ ] , k : integer) → integer
{ Mengembalikan nilai minimum } DEKLARASI minimum : integer ALGORITMA: minimum ← X[0] for i  0 to k do if X[i] < minimum then minimum ← X[i] endif endfor return (minimum)

18 #include <stdio.h>
#define N 20 int Min(int X[],int k); int i; void main() { int jml, nmin, bil[N]; printf("Jumlah bilangan (maks 20) : "); scanf("%d",&jml); for (i=0;i<jml;i++) { printf("Bilangan ke %d : ",i+1); scanf("%d",&bil[i]); } nmin = Min(bil,jml); printf("Nilai minimum adalah : %d", nmin);

19 int Min(int X[],int k) { int minimum = X[0]; for (i=0;i<k;i++){ if (X[i] < minimum) minimum = X[i]; } return minimum;

20 5. Pengurutan Array Ada banyak metoda pengurutan array, namun salah satu metode yang populer adalah Bubble Sort. Jumlah tahap pengurutan = jumlah bilangan – 1 Banyaknya perbandingan pada setiap tahap = jumlah bilangan – nomor tahap Misalnya Anda memiliki empat buah angka: yang akan diurutkan dari yang terkecil hingga yang terbesar (ascending). Metode Bubble Sort akan membagi proses pengurutan menjadi tiga tahap

21

22

23

24 #include <stdio.h>
#define N 20 int i,j,A[N]; void bubble(int n); void main() { int jml; printf("Masukkan jumlah bilangan (maks 20) : "); scanf("%d",&jml); printf("\n"); for (i=0;i<jml;i++) printf("Bilangan ke %d : ",i+1); scanf("%d",&A[i]); } printf("\n"); bubble(jml); printf("Data yang sudah terurut : \n"); printf("%d\n",A[i]); }

25 void bubble(int n) { int temp; for (i=1;i<=n-1;i++) for (j=i;j<n;j++) if (A[i-1]>A[j]) temp = A[i-1]; A[i-1] = A[j]; A[j] = temp; }


Download ppt "TEL 2112 Dasar Komputer & Pemograman Contoh Pemecahan Masalah 2"

Presentasi serupa


Iklan oleh Google