MODUL IV s/d VI
2021
Laporan Praktikum Algoritma
dan Pemrograman
DAFTAR ISI
MODUL IV .................................................................................................................... 1
MODUL V ................................................................................................................... 10
MODUL VI .................................................................................................................. 16
B. Tugas ................................................................................................................. 21
1
MODUL IV
A. Post Test
Run program
#include <iostream>
using namespace std;
int main()
{
int suhu;
cout<<" Program Mengetahui Kesehatan Melalui Suhu Tubuh
Seseorang"<<endl;
cout<<" Masukan Suhu Tubuh Seseorang [Celcios] = ";
cin>>suhu;
if (suhu < 33)
{
cout<<" Masih Dinyatakan Hidup"<<endl;
}
else if (suhu == 34)
{
cout<<" Terlalu Dingin"<<endl;
}
else if (suhu == 35)
{
cout<<"Dingin"<<endl;
}
else if (suhu == 36)
{
2
cout<<"Masik OK"<<endl;
}
else if (suhu == 37)
{
cout<<"Keadaan FIT"<<endl;
}
else if (suhu == 38)
{
cout<<"Demam Ringan"<<endl;
}
else if (suhu == 39)
{
cout<<"Hampir Step"<<endl;
}
else if ( suhu > 39)
{
cout<<"Segera Panggil Ambulan"<<endl;
}
return 0;
}
Hasil Output
#include <stdio.h>
#include <conio.h>
#include <windows.h>
main (void)
{
3
int pilih;
float c,r,f,k,h;
menu:
system ("cls");
printf("====================MENU
UTAMA====================\n");
printf("\nMengkonversi Satuan Suhu Celcius ke Reamur, Fahrenheit, dan
Kelvin\n");
printf(".........................................\n");
printf("1. Celcius ke Reamur\n");
printf("2. Celcius ke Fahrenheit\n");
printf("3. Celcius ke Kelvin\n");
printf(".......................................-\n");
printf("Masukan pilihan [0/1/2/3:");
scanf ("%i",&pilih);
switch (pilih)
{
case 0:
break;
case 1:system("cls");
printf("Konversi Celcius ke Reamur\n\n");
printf("Masukan nilai celcius = ");
scanf("%f",&c);
r = c * 0.8;
printf("%0.2f Celcius = %f Reamur",c,r);
break;
case 2:system("cls");
printf("Konversi Celcius ke Fahrenheit\n\n");
printf("Masukan nilai celcius = ");
scanf("%f",&c);
f = c * 33.8;
printf("%0.2f Celcius = %f Fahrenheir",c,f);
break;
case 3:system("cls");
printf("Konversi Celcius ke Kelvin\n\n");
printf("Masukan nilai celcius = ");
scanf("%f",&c);
k = c * 274.15;
printf("%0.2f Celcius = %f Kelvin",c,k);
break;
}
}
Hasil Output :
4
B. Tugas Mandiri
#include <iostream>
using namespace std;
void Hasil (int x, int y)
{
5
if(x==1){
if(y>=17){
cout<<"Pria Dewasa";
}
else{
cout<<"Perjaka";
}
}
else {
if(y>=17){
cout<<"Wanita Dewasa";
}
else{
cout<<"Gadis";
}
}
}
int main()
{
int umur, kel;
cout<<"Jenis Kelamin"<<'\n';
cout<<"1. Laki-laki"<<'\n';
cout<<"2. Perempuan"<<'\n';
cout<<"Masukan Pilihan Anda (1-2): ";
cin>>kel;
cout<<"Masukan Umur Anda (1-100): ";
cin>>umur;
Hasil (kel,umur);
}
Hasil Output:
Run program
#include <iostream>
using namespace std;
int ambil(int bil, int i){
if (i == 1){
return 1;
}
else if (bil % i == 0){
return 1 + ambil(bil, --i);
}else{
return 0 + ambil(bil, --i);
}
}
int cek(int bil){
if(bil > 1){
return (ambil(bil,bil) == 2);
}
else
return false;
}
int main(){
int bil;
cout<<"Masukan Bilangan : ";
cin>>bil;
if(cek(bil)){
cout<<"Bilangan Prima"<<endl;
}else{
}
cout<<"Bukan Bilangan Prima"<<endl;
return 0;
}
Hasil output:
7
3. Buatlah program dalam menghitung jumlah pemakaian air PDAM dengan tarif
bertingkat seperti pada tabel berikut :
Pemakaian Tarif per m3
10 m3 pertama 5.000
10 m3 kedua 7.500
20 m3 berikutnya 10.000
Selebihnya 15.000
Run program
#include <stdio.h>
int main()
{
int a,b,c;
printf("Jumlah Pemakaian air PDAM \n\n");
printf("Masukan debit pemakaian air m3 :");
scanf("%d",&a);
if(a < 10)
{
b = a * 5000;
}
else
if ( a < 20)
{
b = (a - 10) * 7500 + 50000;
}
else
if (a < 40)
{
b = (a - 20) * 10000 + 125000;
}
else
if (a >= 40)
{
b = (a - 40) * 15000 + 325000;
}
printf("yang harus dibayar Rp %d",b);
}
Hasil output:
8
4. Buatlah program untuk menguji apakah bilangan pecahan pertama lebih kecil
sama, atau lebih besar dari pada bilangan pecahan kedua, bilangan yang akan
diuji adalah bilangan pecahan hasil proses dari operasi aritmetika.
Run program
#include <stdio.h>
int main()
{
int a,b,c,d, hasil1a, hasil1b, hasil2a, hasil2b, des1, des2;
printf("Membandingkan Dua Buah Bilangan Pecahan Jika diBagi\n\n");
printf("Masukan nilai pecahan ke-1 (contoh1/2) = ");
scanf("%d%d",&a,&b);
printf("Masukan nilai pecahan ke-2 (contoh1/2) = ");
scanf("%d%d",&c,&d);
hasil1a = a * d;
hasil1b = b * c;
hasil2a = c * b;
hasil2b = d * a;
des1 = hasil1a / hasil1b;
des2 = hasil2a / hasil2b;
if (des1 < des2)
{
printf("hasil bagi pecahan ke-1 %d%d < hasil bagi pecahan ke-2
%d%d",hasil1a,hasil1b,hasil2a,hasil2b);
}
else
if (des2 < des1)
{
9
printf("hasil bagi pecahan ke-1 %d%d > hasil bagi pecahan ke-2
%d%d",hasil1a,hasil1b,hasil2a,hasil2b);
}
else if (des1 == des2)
{
printf("hasil bagi pecahan ke-1 %d%d = hasil bagi pecahan ke-2
%d%d",hasil1a,hasil1b,hasil2a,hasil2b);
}
}
Hasil output:
10
MODUL V
A. Post Test
1. Buatlah program yang menampilkan deret dolar ($) segitiga sama sisi terbalik
Run program
#include <stdio.h>
int main ()
{
int a, b, c, d;
printf ("Program membuat segitiga sama sisi terbalik\n");
printf ("Masukan jumlah baris bintang = ");
scanf ("%d",&a);
for (b = 1; b <= a; b++)
{
for (c = 1; c <= b; c++)
printf (" ");
for (d = 0; d >= (b - a) ; d--)
printf ("$ ");
printf ("\n");
}
return 0;
}
Hasil output:
11
B. Tugas Mandiri
3. Buatlah program yang menampilkan deret angka simbol (@) segitiga siku-
siku dengan rata kanan
Run program
#include <iostream>
using namespace std;
int main()
{
int a,b,c;
cout<<" Masukan Nilai C: ";
cin>>c;
for(a=1;a<=c;a++) {
for(b=a;b<=a;b++){
cout<<" ";//segitiga kiri
}
for(b=1;b<=a;b++){
cout<<"@";//segitiga kanan
}
cout<<endl;
}
return 0;
}
Hasil output:
13
4. Buatlah program yang menampilkan deret dengan simbol (#) dengan bentuk
bujur sangkar
Run program
#include <iostream>
using namespace std;
main()
{
int panjang, lebar, a, b;
cout<<"Masukkan Panjang : ";
cin>>panjang;
cout<<"Masukkan Lebar : ";
cin>>lebar;
for(a=1 ;a<=panjang;a++){
for(b=1;b<=lebar; b++){
cout<<"#";
}
cout<<"\n";
}
return 0;
}
Hasil output:
14
#include <stdio.h>
using namespace std;
main()
{
int i,n;
float ratarata, jumlah, x;
printf("Masukkan banyak data : ");
scanf("%d",&n);
jumlah =0;
for(i=1;i<=n;i++)
{
printf("Masukkan nilai data ke-%d: ",i);
scanf("%f",&x);
jumlah=jumlah+x;
}
ratarata=jumlah/n;
printf("Ratarata: %2f",ratarata);
return 0;
}
Hasil output:
15
16
MODUL VI
A. Post Test
1. Buatlah program untuk mengurutkan semua elemen array dari kecil kebesar
(Ascending) contoh : 10 30 20 15 21 31 menjadi 10 15 20 21 30 31.
Run program
#include<iostream>
#include <iomanip>
NumList[b+1]= temp;
}
cout<<"Data setelah diurutkan:\n";
for (int c=0; c<6; c++)
cout<<setw(3)<<NumList[c]<<" ";
cout<<endl;
}
Hasil output:
17
2. Buatlah program untuk mengurutkan semua elemen array dari besar kekecil
(Descending) contoh : 10 30 20 15 21 31 menjadi 31 30 21 20 15 10
Run program
#include<iostream>
using namespace std;
int main()
{
int i,j,n,a[100],hasil;
cout<<"\t\t\t\t\t Program Mengurutkan Bilangan Terbesar ke Terkecil
"<<endl;
cout<<endl;
for (i=0;i<n;i++)
{
for(j=i+1;j<n;j++)
{
if (a[i]<a[j])
{
hasil=a[i];
a[i]=a[j];
a[j]=hasil;
}
}
}
cout<<"Bilangan setelah diurutkan adalah = ";
for(i=0;i<n;i++)
{
cout<<a[i]<<" ";
}
}
Hasil output:
#include <iostream>
#include <conio.h>
using namespace std;
int main ()
{
int matrikA[2][3],matrikB[3][3],has[1];
int i,j;
cout<<"Program Perkalian Matrik 2X3 dengan 3X3\n";
cout<<"\nMasukkan matrik A\n\n";
19
for(i=0;i<2;i++){
for(j=0;j<3;j++){
cout<<"Masukkan bilangan baris ke "<<i<<" dan kolom ke "<<j<<" : ";
cin>>matrikA[i][j];
}
cout<<endl;
}
for(i=0;i<2;i++){
for(j=0;j<3;j++){
cout<<matrikA[i][j]<<"\t";
}
cout<<endl;
}
cout<<"\nMasukkan matrik B\n\n";
for(i=0;i<3;i++){
for(j=0;j<3;j++){
cout<<"Masukkan bilangan baris ke "<<i<<" dan kolom ke "<<j<<" : ";
cin>>matrikB[i][j];
}
cout<<endl;
}
cout<<endl;
for(i=0;i<3;i++){
for(j=0;j<3;j++){
cout<<matrikB[i][j]<<"\t";
}
cout<<endl;
}
for(i=0;i<2;i++)
{
for(j=0;j<2;j++)
{
has[i]=matrikA[i][0]*matrikB[0][j]+matrikA[i][1]*matrikB[1][j];
}
}
cout<<endl;
cout<<"\nHasil :";
for(i,j=0;i,j<1;i,j++){
cout<<"\t\t"<<has[i,j];
}
cout<<"\n\n";
}
Hasil output:
20
#include <iostream>
#include <conio.h>
using namespace std;
int main()
{
int i, n, data[50];
float rata,jum;
rata=jum/n;
cout<<endl;
cout<<"Nilai Total = "<<jum<<endl;
cout<<"Nilai Rata-rata = "<<rata<<endl;
getch();
}
Hasil output:
21
B. Tugas
1. Analisis program di bawah ini :
#include <iostream>
using namespace std;
int matriks[4][4];
int i, j;
int main()
{
cout<<"isi Data Matriks"<<endl;
for(i=0; i<j; i++)
{
for(j=0; j<i; j++)
{
cout<<"Matriks["<<i<<"]["<<j<<"]:";
cin>>matriks[i][j];
}
}
cout<<"Hasil data inputan matriks 4x4 :"<<endl;
for(i=0; i<4; i++)
{
for(j=0; j<4; j++)
{
cout<<matriks[i][j]<<" ";
}
cout<<endl;
}
}
a. Lakukan proses Kompilasi
22
#include <iostream>
using namespace std;
int main ()
{
int matriks [4][4];
int i, j;
cout<<"Masukan Data\n"<<endl;
for (i=0; i<4; i++){
for (j=0; j<4; j++){
cout<<"Matriks["<<i<<"]["<<j<<"]:";
cin>>matriks[i][j];
}
}
cout<<"Hasilnya data inputan matriks 4x4 :"<<endl;
for (i=0; i<4; i++){
for (j=0; j<4; j++){
cout<<matriks[i][j]<<" ";
}
cout<<endl;
}
}
Hasil output:
23
#include <iostream>
#include <conio.h>
using namespace std;
int main()
{
int n, data[40][40][40];
cout<<"Input banyak garis :";
cin>>n;
for(int i=1; i<=n; i++){
for(int m=1; m<=2; m++){
if(m==1){
cout<<"Utama : ";
cin>>data[i][0][m];
}else if(m==2){
for(int j=1; j<=2; j++){
cout<<"Input data : ";
cin>>data[i][j][m];
}
}
}
}
cout<<"\nHasil : "<<endl;
for(int i=1; i<=n; i++){
for(int m=1; m<=2; m++){
if(m==1){
cout<<m<<"."<<data[i][0][m]<<endl;
24
}else if(m==2){
for(int j=1; j<=2; j++){
cout<<" -"<<data[i][j][m]<<endl;
}
}
}
}
getch();
}
Hasil output: