Tugas Pendahuluan 12
1. Buatlah algoritma prosedur dan program bahasa Pascal dan C untuk menentukan grade
nilai akhir mahasiswa dengan parameter input nilai akhir(0-100) dan parameter output
grade (A-E). Kriteria penentuan grade sbb:A:85-100 B:70-84 C: 55-69 D:40-54 E:0-39
Bahasa Algoritmik Bahasa C
Prosedur
Procedure Grade(input Nilai:
Integer, output out : Char)
Kamus Data: {tidak ada}
Algoritma:
IF(Nilai ≥ 85 and Nilai ≤ 100)
THEN
out ← 'A'
ELSE
IF(Nilai ≥ 70 and Nilai <= 84)
THEN
out ← 'B'
ELSE
IF(Nilai ≥ 55 and Nilai ≤ 69) Langsung di program utama
THEN
out ← 'C'
ELSE
IF(Nilai ≥ 40 and Nilai ≤ 54)
THEN
out ← 'D'
ELSE
IF(Nilai ≥ 0 and Nilai ≤ 39)
THEN
out ← 'E'
ENDIF
ENDIF
Program Utama
Judul : GradeMahasiswa 1. #include <stdio.h>
2. #include <string.h>
Kamus Data : 3. void Grade(int Nilai, char* out);
4. main()
Procedure Grade(input Nilai: 5. {
Integer, output out : Char) 6. int N;
7. char G[1];
N : Integer 8. printf("Masukkan Nilai Akhir (0-
100): ");
G : array[0..1] of Char
9. scanf("%d", &N);
Algoritma : 10. if(N >= 0 && N <= 100)
11. {
OUTPUT('Masukkan Nilai Akhir (0- 12. Grade(N, G);
100): ') 13. printf("Grade : %s", G);
14. }else{
INPUT(N) 15. printf("Masukkan Nilai Akhir 0-
100");
IF(N ≥ 0 and N ≤ 100)THEN 16. }
17. }
Grade(N, G) 18. void Grade(int Nilai, char* out)
19. {
OUTPUT('Grade : ', G) 20. if(Nilai >= 85 && Nilai <= 100)
21. {
ELSE
22. strcpy(out, "A");
OUTPUT('Masukkan Nilai Akhir 0- 23. }else
100 ') 24. if(Nilai >= 70 && Nilai <= 84)
25. {
Judul : bilanganpangkat
Kamus Data :
function pangkat(input a : real, input n : integer)→ Real
n : Integer
bil : Real
Algoritma :
INPUT(bil, n)
OUTPUT('Hasil ', bil,'^',n,' = ',pangkat(bil,n))
1. #include <stdio.h>
2. float pangkat(float a, int n);
3. main()
4. {
5. int n;
6. float bil;
7. printf("Masukkan bilangan : ");scanf("%f", &bil);
8. printf("Masukkan pemangkat : ");scanf("%d", &n);
9. printf("Hasil %.0f^%d = %.0f ", bil, n, pangkat(bil,n));
10. }
11. float pangkat(float a, int n)
12. {
13. int i;
14. float p;
15. p = 1;
16. for(i=1; i<=n; i++)
17. {
18. p = p * a;
19. }
20. return p;
21. }
procedure pangkat()
Kamus Data :
a, p: Real
n, i : Integer
Algoritma :
p ← 1
OUTPUT('Masukkan bilangan : ')
INPUT(a)
OUTPUT('Masukkan pemangkat : ')
INPUT(n)
FOR i = 1 TO n DO
p ← p * a
ENDFOR
OUTPUT(p)
Judul : BilanganPangkat
Kamus Data :
procedure pangkat()
Algoritma :
pangkat()
e. Ubah hasil prosedur yang kalian buat ke dalam program bahasa C !
1. #include <stdio.h>
2. void pangkat();
3. main()
4. {
5. pangkat();
6. }
7. void pangkat()
8. {
9. float a;
10. int n, i;
11. float p;
12. p = 1;
13. printf("Masukkan bilangan : ");
14. scanf("%f", &a);
15. printf("Masukkan pemangkat : ");
16. scanf("%d", &n);
17. for(i=1; i<=n; i++)
18. {
19. p = p * a;
20. }
21. printf("Hasil %.0f^%d = %.0f ", a, n, p);
22. }