no. 5
Soal :
Buatlah algoritma, flowchart dan program untuk menentukan banyaknya hari dalam suatu bulan dan tahun yang diberikan. Pertimbangkan pula adanya tahun kabisat di mana bulan Februari mempunyai jumlah 29 hari. Gunakan case .. of dan if .. then .. else .. yang tepat untuk setiap kasus.
C++
#include
<iostream>
using
namespace std;
int year,
month, day;
void
input();
void
errorYear();
void
errorMonth();
void
again();
int main()
{
cout<<"Program menghitung hari
dalam satu bulan."<<endl;
input();
}
void input()
{
cout<<"Masukkan angka
tahun:"<<endl;
cin>>year;
cout<<"Masukkan angka
bulan:"<<endl;
cin>>month;
if (year <= 0)
errorYear();
switch (month)
{
case 1:
cout<<"Bulan Januari tahun
"<<year<<" ada 31 hari."<<endl;
break;
case 2:
if (year % 4 == 0)
cout<<"Bulan Februari tahun
"<<year<<" ada 29 hari."<<endl;
else
cout<<"Bulan Februari tahun
"<<year<<" ada 28 hari."<<endl;
break;
case 3:
cout<<"Bulan Maret tahun
"<<year<<" ada 31 hari."<<endl;
break;
case 4:
cout<<"Bulan April tahun
"<<year<<" ada 30 hari."<<endl;
break;
case 5:
cout<<"Bulan Mei tahun
"<<year<<" ada 31 hari."<<endl;
break;
case 6:
cout<<"Bulan Juni tahun
"<<year<<" ada 30 hari."<<endl;
break;
case 7:
cout<<"Bulan Juli tahun
"<<year<<" ada 31 hari."<<endl;
break;
case 8:
cout<<"Bulan Agustus tahun
"<<year<<" ada 31 hari."<<endl;
break;
case 9:
cout<<"Bulan September tahun
"<<year<<" ada 30 hari."<<endl;
break;
case 10:
cout<<"Bulan Oktober tahun
"<<year<<" ada 31 hari."<<endl;
break;
case 11:
cout<<"Bulan November tahun
"<<year<<" ada 30 hari."<<endl;
break;
case 12:
cout<<"Bulan Desember tahun
"<<year<<" ada 31 hari."<<endl;
break;
default :
errorMonth();
break;
}
again();
}
void
errorYear()
{
cout<<"Masukkan data tahun tidak
valid."<<endl;
again();
main();
}
void
errorMonth()
{
cout<<"Masukkan data bulan tidak
valid."<<endl;
again();
main();
}
void again()
{
char answer;
cout<<endl<<"Tekan Y untuk
mencoba lagi."<<endl<<"Mau mencoba
lagi?"<<endl;
cin>>answer;
if (answer == 'Y' || answer == 'y')
{
main();
}
else
{
return;
}
}
Kalau di run, hasilnya :
no.6
Soal :
Buatlah algoritma, flowchart dan program untuk mengecek apakah karakter yang dimasukkan itu merupakan huruf besar, huruf kecil atau digit (bilangan). Gunakan fungsi ORD(char) untuk menyatakan nomor urut dalam tabel ASCII
C++ :
#include
<iostream>
#include
<conio.h>
using
namespace std;
class
Karakter
{
private:
char karakter;
public:
void Proses ();
void Output ();
};
void
Karakter::Proses()
{
cout<<"Masukkan
Karakter = ";cin>>karakter;
};
void
Karakter::Output(){
if (karakter
>='A' && karakter <='Z')
cout<<"Huruf
Besar"<<endl;
else if
(karakter >= 'a' && karakter <='z')
cout<<"Huruf
Kecil"<<endl;
else if
(karakter >= '0' && karakter <= '9')
cout<<"Digit
(Bilangan)"<<endl;
else
cout<<"Simbol"<<endl;
};
main ()
{
Karakter
bilhur;
bilhur.Proses();
bilhur.Output();
getch ();
return 0;
}
no.7
Soal :
Seorang dosen ingin mengkonversikan nilai angka hasil ujian mahasiswa menjadi nilai huruf dengan ketentuan :
C++ :
#include
<iostream>
using
namespace std;
/* run this
program using the console pauser or add your own getch,
system("pause") or input loop */
int main(int
argc, char** argv) {
int nilai;
string nilaihuruf;
cout<<"masukkan nilai
(0-100) : ";cin>>nilai;
if(nilai <=100 &&
nilai>=91)
nilaihuruf='A';
else if(nilai<=90 &&
nilai>=81)
nilaihuruf='B';
else if(nilai<=80 &&
nilai>=71)
nilaihuruf='C';
else if(nilai<=70 &&
nilai>=61)
nilaihuruf='D';
else
nilaihuruf='F';
cout<<"Nilai
= "<<nilaihuruf;
return 0;
}
Flowchart :
Untuk no. 1, 2, 3, dan 4 dapat dilihat di : http://hiwilmacleta.blogspot.co.id/search/label/Diktat4
Untuk no. 8 dan UK 1 dapat dilihat di : http://ratihpuspita29.blogspot.co.id/search/label/bab4
SEKIAN, TERIMA KASIH!!!
SEMOGA BERMANFAAT!!!





Tidak ada komentar:
Posting Komentar