nasdevs

bangun-datar

Oct 31st, 2021 (edited)
124
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 11.63 KB | None | 0 0
  1. #include <iostream>
  2. #include <cmath>
  3. #include <math.h>
  4. #include <unistd.h>
  5. #define PHI 3.14
  6. using namespace std;
  7. // Nasrullah, github.com/nasdevs
  8. void menuBangunDatar() {
  9.     cout << "===========Daftar bangun datar===========" << endl;
  10.     cout << "1. persegi" << endl;
  11.     cout << "2. Persegi Panjang" << endl;
  12.     cout << "3. Segitiga" << endl;
  13.     cout << "4. Jajar Genjang" << endl;
  14.     cout << "5. Belah Ketupat" << endl;
  15.     cout << "6. Trapesium" << endl;
  16.     cout << "7. Lingkaran" << endl;
  17.     cout << "=========================================" << endl;
  18. }
  19.  
  20. void menuRumusPersegi() {
  21.     cout << "=========================================" << endl;
  22.     cout << "Daftar rumus-rumus persegi" << endl;
  23.     cout << "=========================================" << endl;
  24.     cout << "1. Luas" << endl;
  25.     cout << "2. Keliling" << endl;
  26.     cout << "3. Diagonal" << endl;
  27.     cout << "=========================================" << endl;
  28. }
  29.  
  30. void menuRumusPersegiPanjang() {
  31.     cout << "=========================================" << endl;
  32.     cout << "Daftar rumus-rumus persegi panjang" << endl;
  33.     cout << "=========================================" << endl;
  34.     cout << "1. Luas" << endl;
  35.     cout << "2. Keliling" << endl;
  36.     cout << "3. Diagonal" << endl;
  37.     cout << "=========================================" << endl;
  38. }
  39.  
  40. void menuRumusSegitiga() {
  41.     cout << "=========================================" << endl;
  42.     cout << "Daftar rumus-rumus segitiga" << endl;
  43.     cout << "=========================================" << endl;
  44.     cout << "1. " << endl;
  45.     cout << "2. Keliling" << endl;
  46.     cout << "=========================================" << endl;
  47.  }
  48.  
  49. void menuRumusJajarGenjang() {
  50.     cout << "=========================================" << endl;
  51.     cout << "Daftar rumus-rumus jajar genjang" << endl;
  52.     cout << "=========================================" << endl;
  53.     cout << "1. Luas" << endl;
  54.     cout << "2. Keliling" << endl;
  55.     cout << "=========================================" << endl;
  56. }
  57.  
  58. void menuRumusBelahKetupat() {
  59.     cout << "=========================================" << endl;
  60.     cout << "Daftar rumus-rumus Belah Ketupat" << endl;
  61.     cout << "=========================================" << endl;
  62.     cout << "1. Luas" << endl;
  63.     cout << "2. Keliling" << endl;
  64.     cout << "=========================================" << endl;
  65. }
  66.  
  67. void menuRumusTrapesium() {
  68.     cout << "=========================================" << endl;
  69.     cout << "Daftar rumus-rumus Trapesium" << endl;
  70.     cout << "=========================================" << endl;
  71.     cout << "1. Luas" << endl;
  72.     cout << "2. Keliling" << endl;
  73.     cout << "=========================================" << endl;
  74. }
  75.  
  76. void menuRumusLingkaran() {
  77.     cout << "=========================================" << endl;
  78.     cout << "Daftar rumus-rumus Lingkaran" << endl;
  79.     cout << "=========================================" << endl;
  80.     cout << "1. Luas" << endl;
  81.     cout << "2. Keliling" << endl;
  82.     cout << "=========================================" << endl;
  83. }
  84.  
  85. void luas(float hasil) {
  86.     cout << "Luas yang didapatkan : " << hasil << endl;
  87. }
  88.  
  89. void keliling(float hasil) {
  90.     cout << "Keliing yang didapatkan : " << hasil << endl;
  91. }
  92.  
  93. void diagonal(float hasil) {
  94.     cout << "Diagonal yang didapatkan : " << hasil << endl;
  95. }
  96.  
  97. void salahInput() {
  98.     cout << "Terdapat kesalahan dalam penginputan" << endl;
  99. }
  100.  
  101. int main() {
  102.     string bangunDatar;
  103.     char ulang;
  104.  
  105.     do {
  106.         menuBangunDatar();
  107.         cout << "Pilih : "; getline(cin, bangunDatar);
  108.  
  109.         // Persegi
  110.         if (bangunDatar == "1" || bangunDatar == "persegi") {
  111.             menuRumusPersegi();
  112.             string rumusPersegi;
  113.             cout << "Pilih : "; cin >> rumusPersegi;
  114.  
  115.             // Luas
  116.             if (rumusPersegi == "1" || rumusPersegi == "luas") {
  117.                 int sisi;
  118.                 float hasil;
  119.                 cout << "=========================================" << endl;
  120.                 cout << "Menghitung luas persegi" << endl;
  121.                 cout << "Masukkan sisi : "; cin >> sisi;
  122.  
  123.                 hasil = sisi * sisi;
  124.                 luas(hasil);
  125.             }
  126.            
  127.             // Keliling
  128.             else if (rumusPersegi == "2" || rumusPersegi == "keliling") {
  129.                 int sisi;
  130.                 float hasil;
  131.                 cout << "=========================================" << endl;
  132.                 cout << "Menghitung keliling persegi" << endl;
  133.                 cout << "Masukkan sisi : "; cin >> sisi;
  134.  
  135.                 hasil = 4 * sisi;
  136.                 keliling(hasil);
  137.             }
  138.  
  139.             // Diagonal
  140.             else if (rumusPersegi == "3" || rumusPersegi == "diagonal") {
  141.                 int sisi;
  142.                 float hasil;
  143.                 cout << "=========================================" << endl;
  144.                 cout << "Menghitung diagonal persegi" << endl;
  145.                 cout << "Masukkan sisi : "; cin >> sisi;
  146.  
  147.                 hasil = sisi * sqrt(2);
  148.                 diagonal(hasil);
  149.             }
  150.  
  151.             else {
  152.                 salahInput();
  153.             }
  154.         }
  155.  
  156.         // Persegi Panjang
  157.         else if (bangunDatar == "2" || bangunDatar == "persegi panjang") {
  158.             menuRumusPersegiPanjang();
  159.             string rumusPersegiPanjang;
  160.             cout << "Pilih : "; cin >> rumusPersegiPanjang;
  161.  
  162.             // Luas
  163.             if (rumusPersegiPanjang == "1" || rumusPersegiPanjang == "luas") {
  164.                 int panjang, lebar;
  165.                 float hasil;
  166.                 cout << "=========================================" << endl;
  167.                 cout << "Menghitung luas persegi panjang" << endl;
  168.                 cout << "Masukkan panjang : "; cin >> panjang;
  169.                 cout << "Masukkan lebar   : "; cin >> lebar;
  170.  
  171.                 hasil = panjang * lebar;
  172.                 luas(hasil);
  173.             }
  174.            
  175.             // Keliling
  176.             else if (rumusPersegiPanjang == "2" || rumusPersegiPanjang == "keliling") {
  177.                 int panjang, lebar;
  178.                 float hasil;
  179.                 cout << "=========================================" << endl;
  180.                 cout << "Menghitung keliling persegi panjang" << endl;
  181.                 cout << "Masukkan panjang : "; cin >> panjang;
  182.                 cout << "Masukkan lebar   : "; cin >> lebar;
  183.                
  184.                 hasil = 2 * (panjang + lebar);
  185.                 keliling(hasil);
  186.             }
  187.  
  188.             // Diagonal
  189.             else if (rumusPersegiPanjang == "3" || rumusPersegiPanjang == "diagonal") {
  190.                 int panjang, lebar;
  191.                 float hasil;
  192.                 cout << "=========================================" << endl;
  193.                 cout << "Menghitung diagonal persegi panjang" << endl;
  194.                 cout << "Masukkan panjang : "; cin >> panjang;
  195.                 cout << "Masukkan lebar   : "; cin >> lebar;
  196.                
  197.                 hasil = sqrt(pow(panjang, 2) + pow(lebar, 2));
  198.                 diagonal(hasil);
  199.             }
  200.  
  201.             else {
  202.                 salahInput();
  203.             }
  204.         }
  205.  
  206.         // Segitiga
  207.         else if (bangunDatar == "3" || bangunDatar == "segitiga") {
  208.             // Segitiga, mau dibuatin cabang segitiga lagi seperti
  209.             // segitiga sama sisi, siku siku, sembarang, sama kaki dll
  210.             cout << "Coming soon" << endl;
  211.         }
  212.  
  213.         // Jajar Genjang
  214.         else if (bangunDatar == "4" || bangunDatar == "jajargenjang") {
  215.             menuRumusJajarGenjang();
  216.             string rumusJajarGenjang;
  217.             cout << "Pilih : "; cin >> rumusJajarGenjang;
  218.  
  219.             // Luas
  220.             if (rumusJajarGenjang == "1" || rumusJajarGenjang == "luas") {
  221.                 int alas, tinggi;
  222.                 float hasil;
  223.                 cout << "=========================================" << endl;
  224.                 cout << "Menghitung luas Jajar genjang" << endl;
  225.                 cout << "Masukkan alas   : "; cin >> alas;
  226.                 cout << "Masukkan tinggi : "; cin >> tinggi;
  227.  
  228.                 hasil = alas * tinggi;
  229.                 luas(hasil);
  230.             }
  231.            
  232.             // Keliling
  233.             else if (rumusJajarGenjang == "2" || rumusJajarGenjang == "keliling") {
  234.                 int sisi1, sisi2;
  235.                 float hasil;
  236.                 cout << "=========================================" << endl;
  237.                 cout << "Menghitung keliling jajar genjang" << endl;
  238.                 cout << "Masukkan sisi 1 : "; cin >> sisi1;
  239.                 cout << "Masukkan sisi 2 : "; cin >> sisi2;
  240.  
  241.                 hasil = 2 * (sisi1 * sisi2);
  242.                 keliling(hasil);
  243.             }
  244.  
  245.             else {
  246.                 salahInput();
  247.             }
  248.         }
  249.  
  250.         // Belah Ketupat
  251.         else if (bangunDatar == "5" || bangunDatar == "belah ketupat" || bangunDatar == "belaketupat") {
  252.             menuRumusBelahKetupat();
  253.             string rumusBelahKetupat;
  254.             cout << "Pilih : "; cin >> rumusBelahKetupat;
  255.  
  256.             // Luas
  257.             if (rumusBelahKetupat == "1" || rumusBelahKetupat == "luas") {
  258.                 int alas, tinggi;
  259.                 float hasil;
  260.                 cout << "=========================================" << endl;
  261.                 cout << "Menghitung luas belah ketupat" << endl;
  262.                 cout << "Masukkan alas   : "; cin >> alas;
  263.                 cout << "Masukkan tinggi : "; cin >> tinggi;
  264.  
  265.                 hasil = alas * tinggi;
  266.                 luas(hasil);
  267.             }
  268.            
  269.             // Keliling
  270.             else if (rumusBelahKetupat == "2" || rumusBelahKetupat == "keliling") {
  271.                 int sisi;
  272.                 float hasil;
  273.                 cout << "=========================================" << endl;
  274.                 cout << "Mwnghitung kelilng belah ketupat" << endl;
  275.                 cout << "Masukkan panjang sisi : "; cin >> sisi;
  276.  
  277.                 hasil = 4 * sisi;
  278.                 keliling(hasil);
  279.             }
  280.  
  281.             else {
  282.                 salahInput();
  283.             }
  284.         }
  285.  
  286.         // Trapesium
  287.         else if (bangunDatar == "6" || bangunDatar == "trapesium") {
  288.             cout << "Coming soon" << endl;
  289.         }
  290.  
  291.         // Lingkarang
  292.         else if (bangunDatar == "7" || bangunDatar == "lingkaran") {
  293.             menuRumusLingkaran();
  294.             string rumusLingkaran;
  295.             cout << "Pilih : "; cin >> rumusLingkaran;
  296.  
  297.             // Luas
  298.             if (rumusLingkaran == "1" || rumusLingkaran == "luas") {
  299.                 float r, hasil;
  300.                 cout << "=========================================" << endl;
  301.                 cout << "Menghitung luas Lingkaran" << endl;
  302.                 cout << "Masukkan jari-jari : "; cin >> r;
  303.  
  304.                 hasil = PHI * pow(r, 2);
  305.                 luas(hasil);
  306.             }
  307.            
  308.             // Keliling
  309.             else if (rumusLingkaran == "2" || rumusLingkaran == "keliling") {
  310.                 float r, hasil;
  311.                 cout << "=========================================" << endl;
  312.                 cout << "Menghitung keliling Lingkaran" << endl;
  313.                 cout << "Masukkan jari-jari : "; cin >> r;
  314.  
  315.                 hasil = 2 * PHI * r;
  316.                 keliling(hasil);
  317.             }
  318.         }
  319.        
  320.         else {
  321.             salahInput();
  322.         }
  323.        
  324.         cout << "\nKembali kemenu utama [Y/N] : ";  cin >> ulang;
  325.         cin.ignore();
  326.     }
  327.     while(ulang == 'Y' || ulang == 'y');
  328.     cout << endl;
  329.     cout << "Program akan dimatikan dalam 3 detik"; sleep(3);
  330.     cout << endl;
  331.     return 0;
  332. }
Add Comment
Please, Sign In to add comment