Facebook
From Fahmi Robbani, 1 Year ago, written in Plain Text.
This paste is a reply to Tugas 2 from Budhi - view diff
Embed
Download Paste or View Raw
Hits: 177
  1. #include <iostream>
  2. #include <string.h>
  3. #include <array>
  4.  
  5. using namespace std;
  6.  
  7. int main(){
  8.     int i = 0, j = 0, sks = 0, totalMk = 0;
  9.     int opsi, opsiSiam, jmlMk, noMk, maxSks, p, krs2 = 1;
  10.     float ipk;
  11.     string user, pass;
  12.     bool login;
  13.     string username[5], password[5], krs[8];
  14.     string matkul[8] =
  15.     {
  16.         "Bahasa Indonesia               (2 sks)",
  17.         "Bahasa Inggris                 (2 sks)",
  18.         "Rangkaian Elektronika Lanjut   (4 sks)",
  19.         "Sistem Digital                 (3 sks)",
  20.         "Sistem Mikrokontroler          (4 sks)",
  21.         "Pemrograman Dasar              (3 sks)",
  22.         "Pemrograman Lanjut             (4 sks)",
  23.         "Komunikasi Data                (2 sks)"
  24.     };
  25.    
  26.     awal :
  27.     cout << "Selamat datang di SIAM UB. Silakan memilih opsi berikut." << endl;
  28.     cout << "1. Registrasi" << endl;
  29.     cout << "2. Login" << endl;
  30.     cout << "Pilihan anda : ";
  31.     cin >> opsi;
  32.  
  33.     if (opsi == 1){
  34.         goto registrasi;
  35.     }
  36.     else if (opsi == 2){
  37.         goto login;
  38.     }
  39.  
  40.     registrasi:
  41.     if (i == 5 && j == 5){
  42.         cout << "Maaf, anda telah mencapai batas maksimal registrasi akun.";
  43.         goto awal;
  44.     }
  45.     cout << "REGISTRASI" << endl;
  46.     cout << "Masukkan username : ";
  47.     cin >> username[i];
  48.     i++;
  49.     cout << "Masukkan password : ";
  50.     cin >> password[j];
  51.     j++;
  52.     system("clear");
  53.     goto awal;
  54.  
  55.     login:
  56.     login = true;
  57.     while (login == true){
  58.         cout << "---=+ LOGIN +=---" << endl;
  59.         cout << "Masukkan username : ";
  60.         cin >> user;
  61.         cout << "Masukkan password : ";
  62.         cin >> pass;
  63.         if (user == username[0] && pass == password[0] || user == username[1] && pass == password[1] ||
  64.             user == username[2] && pass == password[2] || user == username[3] && pass == password[3] ||
  65.             user == username[4] && pass == password[4] ){
  66.             login = false;
  67.         }
  68.         else {
  69.             cout << "Username/Password anda salah atau tidak terdaftar, silakan cek kembali." << endl;
  70.             goto awal;
  71.         }
  72.     }
  73.    
  74.     menu:
  75.     cout << endl;
  76.     cout << "Selamat datang di SIAM UB." << endl;
  77.     cout << "1. Pilih KRS" << endl;
  78.     cout << "2. Print KRS" << endl;
  79.     cout << "3. Logout"    << endl;
  80.     cout << "Masukkan pilihan SIAM : ";
  81.     cin  >> opsiSiam;
  82.     if (opsiSiam == 1){
  83.         goto pilih;
  84.     }
  85.     else if (opsiSiam == 2){
  86.         goto print;
  87.     }
  88.     else if (opsiSiam == 3){
  89.         system("clear");
  90.         cout << "Anda telah logout." << endl;
  91.         goto awal;
  92.     }
  93.  
  94.     pilih:
  95.     cout << "Masukkan IPK : ";
  96.     cin >> ipk;
  97.     cout << endl;
  98.     if (ipk >= 3 && ipk <= 4){
  99.         cout << "SKS kamu semester ini maksimal : 24" << endl;
  100.         maxSks = 24;
  101.     }
  102.     else {
  103.         cout << "SKS kamu semester ini maksimal : 20" << endl;
  104.         maxSks = 20;
  105.     }
  106.    
  107.     cout << "Matakuliah yang tersedia : " << endl;
  108.     cout << "1. " << matkul[0] << endl;
  109.     cout << "2. " << matkul[1] << endl;
  110.     cout << "3. " << matkul[2] << endl;
  111.     cout << "4. " << matkul[3] << endl;
  112.     cout << "5. " << matkul[4] << endl;
  113.     cout << "6. " << matkul[5] << endl;
  114.     cout << "7. " << matkul[6] << endl;
  115.     cout << "8. " << matkul[7] << endl;
  116.  
  117.     cout << "Ingin mengambil berapa mata kuliah? ";
  118.     cin >> jmlMk;
  119.     if (jmlMk > 8){
  120.         cout << "Maaf, jumlah mata kuliah maksimal yang bisa anda ambil adalah 8 mata kuliah." << endl;
  121.         return 0;
  122.     }
  123.     else{
  124.         goto ambil;
  125.     }
  126.  
  127.     ambil:    
  128.     cout << endl;
  129.     if (totalMk == jmlMk){
  130.         cout << endl << endl;
  131.         goto menu;
  132.     }
  133.  
  134.     cout << "Masukkan nomor mata kuliah 1-8 : ";
  135.     cin >> noMk;
  136.    
  137.     if (noMk == 1){
  138.         for (p = 0; p < 8; p++){
  139.             if (krs[p] == matkul[0]){
  140.                 cout << "SKS melebihi batas atau terdapat matakuliah yang sama." << endl;
  141.                 goto ambil;
  142.             }
  143.         }
  144.         cout << matkul[0];
  145.         sks += 2;
  146.         krs[krs2] = matkul[0];
  147.         krs2++;
  148.         totalMk += 1;
  149.         goto ambil;
  150.     }
  151.     else if (noMk == 2){
  152.         for (p = 0; p < 8; p++){
  153.             if (krs[p] == matkul[1]){
  154.                 cout << "SKS melebihi batas atau terdapat matakuliah yang sama." << endl;
  155.                 goto ambil;
  156.             }
  157.         }
  158.         cout << matkul[1];
  159.         sks += 2;
  160.         krs[krs2] = matkul[1];
  161.         krs2++;
  162.         totalMk += 1;
  163.         goto ambil;
  164.     }
  165.     else if (noMk == 3){
  166.         for (p = 0; p < 8; p++){
  167.             if (krs[p] == matkul[2]){
  168.                 cout << "SKS melebihi batas atau terdapat matakuliah yang sama." << endl;
  169.                 goto ambil;
  170.             }
  171.         }
  172.         cout << matkul[2];
  173.         sks += 4;
  174.         krs[krs2] = matkul[2];
  175.         krs2++;
  176.         totalMk += 1;
  177.         goto ambil;
  178.     }
  179.     else if (noMk == 4){
  180.         for (p = 0; p < 8; p++){
  181.             if (krs[p] == matkul[3]){
  182.                 cout << "SKS melebihi batas atau terdapat matakuliah yang sama." << endl;
  183.                 goto ambil;
  184.             }
  185.         }
  186.         cout << matkul[3];
  187.         sks += 3;
  188.         krs[krs2] = matkul[3];
  189.         krs2++;
  190.         totalMk += 1;
  191.         goto ambil;
  192.     }
  193.     else if (noMk == 5){
  194.         for (p = 0; p < 8; p++){
  195.             if (krs[p] == matkul[4]){
  196.                 cout << "SKS melebihi batas atau terdapat matakuliah yang sama." << endl;
  197.                 goto ambil;
  198.             }
  199.         }
  200.         cout << matkul[4];
  201.         sks += 4;
  202.         krs[krs2] = matkul[4];
  203.         krs2++;
  204.         totalMk += 1;
  205.         goto ambil;
  206.     }
  207.     else if (noMk == 6){
  208.         for (p = 0; p < 8; p++){
  209.             if (krs[p] == matkul[5]){
  210.                 cout << "SKS melebihi batas atau terdapat matakuliah yang sama." << endl;
  211.                 goto ambil;
  212.             }
  213.         }
  214.         cout << matkul[5];
  215.         sks += 3;
  216.         krs[krs2] = matkul[5];
  217.         krs2++;
  218.         totalMk += 1;
  219.         goto ambil;
  220.     }
  221.     else if (noMk == 7){
  222.         for (p = 0; p < 8; p++){
  223.             if (krs[p] == matkul[6]){
  224.                 cout << "SKS melebihi batas atau terdapat matakuliah yang sama." << endl;
  225.                 goto ambil;
  226.             }
  227.         }
  228.         cout << matkul[6];
  229.         sks += 4;
  230.         krs[krs2] = matkul[6];
  231.         krs2++;
  232.         totalMk += 1;
  233.         goto ambil;
  234.     }
  235.     else if (noMk == 8){
  236.         for (p = 0; p < 8; p++){
  237.             if (krs[p] == matkul[7]){
  238.                 cout << "SKS melebihi batas atau terdapat matakuliah yang sama." << endl;
  239.                 goto ambil;
  240.             }
  241.         }
  242.         cout << matkul[7];
  243.         sks += 2;
  244.         krs[krs2] = matkul[7];
  245.         krs2++;
  246.         totalMk += 1;
  247.         goto ambil;
  248.     }
  249.  
  250.     print:
  251.     system("clear");
  252.     cout << "KRS Akademik Universitas Brawijaya." << endl;
  253.     cout << "Mata kuliah yang anda ambil semester ini : " << endl;
  254.     for (int k = 1; k <= totalMk; k++){
  255.         cout << k << ". " << krs[k];
  256.         cout << endl;
  257.     }
  258.    
  259.    
  260.     goto menu;
  261.    
  262.     return 0;
  263. }