Jumat, 21 Januari 2022

UAS Semester 1 - Algoritma Pemrograman - V2 (ada login nya.. for Windows & Linux) Sangat Sederhana

 for LINUX

======================================



#include <stdio.h>
#include <stdlib.h>
#include <curses.h> //adalah Linux alternative untuk conio.h di windows
//#include <conio.h> //ini untuk di windows
#include <string.h>

/*
UAS Algoritma Pemrograman Semester 1 : PTI 1B Kelompok 2

Bisa langsung dijalankan di Codeblock
dibuat di ZorinOS Linux

di windows perlu sedikit penyesuaian header librari... dan beberapa penyesuaian perintah sytem()
*/


//ini adalah fungsi sebagai pengganti fungsi fflush(stdin)
void clean_stdin(void)
{
    int c;
    do {
        c = getchar();
    } while (c != '\n' && c != EOF);
}


//ini adalah fungsi untuk menentukan harga
int fungsi_harga(char kode_brg)
{

int harga;
if (kode_brg=='a' || kode_brg=='A') {harga=2000000; }         // || adalah simbol OR, && adalah simbol DAN
if (kode_brg=='b' || kode_brg=='B') {harga=3000000; }
if (kode_brg=='c' || kode_brg=='C') {harga=150000; }
if (kode_brg=='d' || kode_brg=='D') {harga=250000; }
if (kode_brg=='e' || kode_brg=='E') {harga=8000000; }
else {
}
return harga;
}

//ini program utama
int main()
{
int nama_ksr, jumlah, bayar, diskon, grand, coba_son=0;
char kode_brg, usr_kan[10], pas_to[10];


//ini adalah array 2 dimensi untuk data kasir
char kasir[5][15] =
   {
   {"Fatma N"},
   {"Khabib K"},
   {"Salma A"},
   {"Arif R"},
   {"Soni H"}
   };


//ini adalah array 2 dimensi untuk data daftar barang
char list_brg[5][15] =
   {
   {"Televisi"},
   {"Kulkas"},
   {"Radio"},
   {"Magic Com"},
   {"Laptop"}
   };


printf("\n\n");
printf("\t\t         SELAMAT DATANG \n");
printf("\t\t ================================ \n");
printf("\t\t         SILAHKAN LOGIN \n\n\n\n\n");


//looping untuk entri password 5x
while (coba_son<5)
{
    printf("Masukkan user name: ");
    scanf("%s", usr_kan);

    printf("Masukkan password: ");
    scanf("%s", pas_to);

    if (strcmp(usr_kan,"cendol")==0&&strcmp(pas_to,"dawet")==0) // strcmp= adalah untuk membandingkan 2 buah string/kata
    {
        goto masuk; //label
    }
    else
    {
        printf("\n\n");
        printf("\t ============================================ \n\n");
        printf("\t Maaf user atau password anda salah..!!!\n");
        printf("\t Silahkan coba lagi...\n\n");
        printf("\t ============================================ \n\n\n");

    coba_son++;
}
}

system("clear");    // clear adalah perintah terminal linux untuk membersihkan layar
//system("cls");    // cls adalah perintah cmd windows untuk membersihkan layar
printf("\n\n");
printf("\t\t\t      MAAF.. ANDA TELAH 5x SALAH \n\n");
printf("\t\t\t     ============================ \n");
printf("\t\t   ================ AKSES DI TOLAK ================= \n");
printf("\t\t\t     ============================ \n");
printf("\n\n\n");
printf("Tekan Enter untuk keluar.......");
printf("\n\n\n");
exit(0);

masuk: //label
system("clear");    // clear adalah perintah terminal linux untuk membersihkan layar
//system("cls");    // cls adalah perintah cmd windows untuk membersihkan layar
printf("\n");
printf("\t\t             SELAMAT DATANG \n");
printf("\t\t Program Penjualan Sangat Sederhana Sekali \n\n");
printf("\t\t        UAS ALGORITMA PEMROGRAMAN \n");
printf("\n");
printf("\n");
printf("\t\t              Kelompok 2 \n");
printf("\t      Fatma N - Khabib K - Salma A - Arif R - Soni H \n");
printf("\t\t ====================================== \n\n\n\n");


printf("Daftar Barang Yang Tersedia: \n\n");
printf("KODE BARANG \t\t HARGA \n");
printf("--------------------------------------\n");
printf("A. Televisi \t\t Harga \t Rp.  2.000.000\n");
printf("B. Kulkas \t\t Harga \t Rp.  3.000.000\n");
printf("C. Radio \t\t Harga \t Rp.  150.000\n");
printf("D. Magic Com \t\t Harga \t Rp.  250.000\n");
printf("E. Laptop \t\t Harga \t Rp.  8.000.000\n");
printf("\n");
printf("Diskon 20%% apabila total pembelian lebih dari Rp 10.000.000 \n\n"); // simbol % harus di tulis ganda, yaitu %%


/*
//ini fungsi LOOP perulangan DO.... WHILE, sekaligus untuk VALIDASI kode barang
//untuk membandingkan saja apa perbedaan dari WHILE vs DO.... WHILE
do {
printf("\t\t\t Ketik kode barang yg ingin di beli: "); scanf("%c", &kode_brg);
clean_stdin(); }
while (kode_brg!='a' && kode_brg!='b' && kode_brg!='c' && kode_brg!='d' && kode_brg!='e' &&  //simbol && adalah simbol dan
kode_brg!='A' && kode_brg!='B' && kode_brg!='C' && kode_brg!='D' && kode_brg!='E');
*/


//ini fungsi LOOP perulangan WHILE, sekaligus untuk VALIDASI kode barang
while (kode_brg!='a' && kode_brg!='b' && kode_brg!='c' && kode_brg!='d' && kode_brg!='e' &&  //simbol && adalah simbol dan
kode_brg!='A' && kode_brg!='B' && kode_brg!='C' && kode_brg!='D' && kode_brg!='E')
{
clean_stdin();
printf("\t\t\t Ketik kode barang yg ingin di beli: "); scanf("%c", &kode_brg);
clean_stdin();
}


//print memanggil array list_brg
if (kode_brg=='a' || kode_brg=='A') { printf("\t\t ====================================== \n");
    printf("\t\t   Nama barang yang dibeli: %s\n\n\n", list_brg[0]); }
else if (kode_brg=='b' || kode_brg=='B') { printf("\t\t ====================================== \n");
    printf("\t\t   Nama barang yang dibeli: %s\n\n\n", list_brg[1]); }
else if (kode_brg=='c' || kode_brg=='C') { printf("\t\t ====================================== \n");
    printf("\t\t   Nama barang yang dibeli: %s\n\n\n", list_brg[2]); }
else if (kode_brg=='d' || kode_brg=='D') { printf("\t\t ====================================== \n");
    printf("\t\t   Nama barang yang dibeli: %s\n\n\n", list_brg[3]); }
else { printf("\t\t ====================================== \n");
    printf("\t\t   Nama barang yang dibeli: %s\n\n\n", list_brg[4]); }


// ini fungsi LOOP perulangan, dan juga validasi jumlah barang tidak boleh 0 atau minus...
do {
printf("\t\t\t ketik jumlah barang: "); scanf("%i", &jumlah);
//printf("\n");
clean_stdin();
}
while (0 >= jumlah);


printf("\t\t ====================================== \n");
printf("\t\t   Jumlah barang yang di beli: %i\n\n", jumlah);

//ini memanggil fungsi harga
bayar=fungsi_harga(kode_brg) * jumlah;
printf("\t\t\t total harga sebesar: %i\n", bayar);


//untuk menghitung diskon, dengan fungsi if
if (bayar>10000000) diskon=bayar*0.20;
else diskon=0;

printf("\t\t\t Diskon anda adalah: %i\n\n", diskon);

grand=bayar - diskon;
printf("\t\t ====================================== \n");
printf("\t\t      TOTAL HARUS DI BAYAR: %i\n\n\n", grand);

printf("Silahkan Pilih Loket Bayar: 1 2 3 4 5 \n");
printf("Nomor Kasir: "); scanf("%i", &nama_ksr);
printf("\n");


//print memanggil array kasir
if (nama_ksr==1) { printf("\t\t ====================================== \n");
    printf("\t\t   Silahkan menuju ke Kasir: %s\n\n\n", kasir[0]); }
else if (nama_ksr==2) { printf("\t\t ====================================== \n");
    printf("\t\t   Silahkan menuju ke Kasir: %s\n\n\n", kasir[1]); }
else if (nama_ksr==3) { printf("\t\t ====================================== \n");
    printf("\t\t   Silahkan menuju ke Kasir: %s\n\n\n", kasir[2]); }
else if (nama_ksr==4) { printf("\t\t ====================================== \n");
    printf("\t\t   Silahkan menuju ke Kasir: %s\n\n\n", kasir[3]); }
else { printf("\t\t ====================================== \n");
    printf("\t\t   Silahkan menuju ke Kasir: %s\n\n\n", kasir[4]); }

}

//end for linux





for Windows

=====================================================================



#include <stdio.h>
#include <stdlib.h>
//#include <curses.h> //adalah Linux alternative untuk conio.h di windows
#include <conio.h> //ini untuk di windows
#include <string.h>

/*
UAS Algoritma Pemrograman Semester 1 : PTI 1B Kelompok 2

Bisa langsung dijalankan di Codeblock
dibuat di ZorinOS Linux

di windows perlu sedikit penyesuaian header librari... dan beberapa penyesuaian perintah sytem()
*/


//ini adalah fungsi sebagai pengganti fungsi fflush(stdin)
void clean_stdin(void)
{
    int c;
    do {
        c = getchar();
    } while (c != '\n' && c != EOF);
}


//ini adalah fungsi untuk menentukan harga
int fungsi_harga(char kode_brg)
{

int harga;
if (kode_brg=='a' || kode_brg=='A') {harga=2000000; }         // || adalah simbol OR, && adalah simbol DAN
if (kode_brg=='b' || kode_brg=='B') {harga=3000000; }
if (kode_brg=='c' || kode_brg=='C') {harga=150000; }
if (kode_brg=='d' || kode_brg=='D') {harga=250000; }
if (kode_brg=='e' || kode_brg=='E') {harga=8000000; }
else {
}
return harga;
}

//ini program utama
int main()
{
int nama_ksr, jumlah, bayar, diskon, grand, coba_son=0;
char kode_brg, usr_kan[10], pas_to[10];


//ini adalah array 2 dimensi untuk data kasir
char kasir[5][15] =
   {
   {"Fatma N"},
   {"Khabib K"},
   {"Salma A"},
   {"Arif R"},
   {"Soni H"}
   };


//ini adalah array 2 dimensi untuk data daftar barang
char list_brg[5][15] =
   {
   {"Televisi"},
   {"Kulkas"},
   {"Radio"},
   {"Magic Com"},
   {"Laptop"}
   };


printf("\n\n");
printf("\t\t         SELAMAT DATANG \n");
printf("\t\t ================================ \n");
printf("\t\t         SILAHKAN LOGIN \n\n\n\n\n");


//looping untuk entri password 5x
while (coba_son<5)
{
    printf("Masukkan user name: ");
    scanf("%s", usr_kan);

    printf("Masukkan password: ");
    scanf("%s", pas_to);

    if (strcmp(usr_kan,"cendol")==0&&strcmp(pas_to,"dawet")==0) // strcmp= adalah untuk membandingkan 2 buah string/kata
    {
        goto masuk; //label
    }
    else
    {
        printf("\n\n");
        printf("\t ============================================ \n\n");
        printf("\t Maaf user atau password anda salah..!!!\n");
        printf("\t Silahkan coba lagi...\n\n");
        printf("\t ============================================ \n\n\n");

    coba_son++;
}
}

//system("clear");    // clear adalah perintah terminal linux untuk membersihkan layar
system("cls");    // cls adalah perintah cmd windows untuk membersihkan layar
printf("\n\n");
printf("\t\t\t      MAAF.. ANDA TELAH 5x SALAH \n\n");
printf("\t\t\t     ============================ \n");
printf("\t\t   ================ AKSES DI TOLAK ================= \n");
printf("\t\t\t     ============================ \n");
printf("\n\n\n");
printf("Tekan Enter untuk keluar.......");
printf("\n\n\n");
exit(0);

masuk: //label
//system("clear");    // clear adalah perintah terminal linux untuk membersihkan layar
system("cls");    // cls adalah perintah cmd windows untuk membersihkan layar
printf("\n");
printf("\t\t             SELAMAT DATANG \n");
printf("\t\t Program Penjualan Sangat Sederhana Sekali \n\n");
printf("\t\t        UAS ALGORITMA PEMROGRAMAN \n");
printf("\n");
printf("\n");
printf("\t\t              Kelompok 2 \n");
printf("\t      Fatma N - Khabib K - Salma A - Arif R - Soni H \n");
printf("\t\t ====================================== \n\n\n\n");


printf("Daftar Barang Yang Tersedia: \n\n");
printf("KODE BARANG \t\t HARGA \n");
printf("--------------------------------------\n");
printf("A. Televisi \t\t Harga \t Rp.  2.000.000\n");
printf("B. Kulkas \t\t Harga \t Rp.  3.000.000\n");
printf("C. Radio \t\t Harga \t Rp.  150.000\n");
printf("D. Magic Com \t\t Harga \t Rp.  250.000\n");
printf("E. Laptop \t\t Harga \t Rp.  8.000.000\n");
printf("\n");
printf("Diskon 20%% apabila total pembelian lebih dari Rp 10.000.000 \n\n"); // simbol % harus di tulis ganda, yaitu %%


/*
//ini fungsi LOOP perulangan DO.... WHILE, sekaligus untuk VALIDASI kode barang
//untuk membandingkan saja apa perbedaan dari WHILE vs DO.... WHILE
do {
printf("\t\t\t Ketik kode barang yg ingin di beli: "); scanf("%c", &kode_brg);
clean_stdin(); }
while (kode_brg!='a' && kode_brg!='b' && kode_brg!='c' && kode_brg!='d' && kode_brg!='e' &&  //simbol && adalah simbol dan
kode_brg!='A' && kode_brg!='B' && kode_brg!='C' && kode_brg!='D' && kode_brg!='E');
*/


//ini fungsi LOOP perulangan WHILE, sekaligus untuk VALIDASI kode barang
while (kode_brg!='a' && kode_brg!='b' && kode_brg!='c' && kode_brg!='d' && kode_brg!='e' &&  //simbol && adalah simbol dan
kode_brg!='A' && kode_brg!='B' && kode_brg!='C' && kode_brg!='D' && kode_brg!='E')
{
clean_stdin();
printf("\t\t\t Ketik kode barang yg ingin di beli: "); scanf("%c", &kode_brg);
clean_stdin();
}


//print memanggil array list_brg
if (kode_brg=='a' || kode_brg=='A') { printf("\t\t ====================================== \n");
    printf("\t\t   Nama barang yang dibeli: %s\n\n\n", list_brg[0]); }
else if (kode_brg=='b' || kode_brg=='B') { printf("\t\t ====================================== \n");
    printf("\t\t   Nama barang yang dibeli: %s\n\n\n", list_brg[1]); }
else if (kode_brg=='c' || kode_brg=='C') { printf("\t\t ====================================== \n");
    printf("\t\t   Nama barang yang dibeli: %s\n\n\n", list_brg[2]); }
else if (kode_brg=='d' || kode_brg=='D') { printf("\t\t ====================================== \n");
    printf("\t\t   Nama barang yang dibeli: %s\n\n\n", list_brg[3]); }
else { printf("\t\t ====================================== \n");
    printf("\t\t   Nama barang yang dibeli: %s\n\n\n", list_brg[4]); }


// ini fungsi LOOP perulangan, dan juga validasi jumlah barang tidak boleh 0 atau minus...
do {
printf("\t\t\t ketik jumlah barang: "); scanf("%i", &jumlah);
//printf("\n");
clean_stdin();
}
while (0 >= jumlah);


printf("\t\t ====================================== \n");
printf("\t\t   Jumlah barang yang di beli: %i\n\n", jumlah);

//ini memanggil fungsi harga
bayar=fungsi_harga(kode_brg) * jumlah;
printf("\t\t\t total harga sebesar: %i\n", bayar);


//untuk menghitung diskon, dengan fungsi if
if (bayar>10000000) diskon=bayar*0.20;
else diskon=0;

printf("\t\t\t Diskon anda adalah: %i\n\n", diskon);

grand=bayar - diskon;
printf("\t\t ====================================== \n");
printf("\t\t      TOTAL HARUS DI BAYAR: %i\n\n\n", grand);

printf("Silahkan Pilih Loket Bayar: 1 2 3 4 5 \n");
printf("Nomor Kasir: "); scanf("%i", &nama_ksr);
printf("\n");


//print memanggil array kasir
if (nama_ksr==1) { printf("\t\t ====================================== \n");
    printf("\t\t   Silahkan menuju ke Kasir: %s\n\n\n", kasir[0]); }
else if (nama_ksr==2) { printf("\t\t ====================================== \n");
    printf("\t\t   Silahkan menuju ke Kasir: %s\n\n\n", kasir[1]); }
else if (nama_ksr==3) { printf("\t\t ====================================== \n");
    printf("\t\t   Silahkan menuju ke Kasir: %s\n\n\n", kasir[2]); }
else if (nama_ksr==4) { printf("\t\t ====================================== \n");
    printf("\t\t   Silahkan menuju ke Kasir: %s\n\n\n", kasir[3]); }
else { printf("\t\t ====================================== \n");
    printf("\t\t   Silahkan menuju ke Kasir: %s\n\n\n", kasir[4]); }

}

//end for windows


Selasa, 18 Januari 2022

UAS Algoritma Pemrograman Semester 1 - Kelompok 2

 
#include <stdio.h>
#include <stdlib.h>
#include <curses.h> //adalah Linux alternative untuk conio.h di windows
#include <string.h>

/*
UAS Algoritma Pemrograman Semester 1 : PTI 1B Kelompok 2

Bisa langsung dijalankan di Codeblock
dibuat di ZorinOS Linux (di windows mungkin perlu sedikit penyesuaian header librari... mungkin lo ya.. belum nyoba wkkwkwkwk
*/

//ini adalah fungsi copy dari google sebagai pengganti fungsi fflush(stdin)
void clean_stdin(void)
{
    int c;
    do {
        c = getchar();
    } while (c != '\n' && c != EOF);
}

//ini deklarasi fungsi untuk menentukan harga
int fungsi_harga(char kode_brg)
{

int harga; char nama_brg;
if (kode_brg=='a' || kode_brg=='A') {harga=1000; nama_brg="T";}         // || adalah simbol OR, && adalah simbol DAN
if (kode_brg=='b' || kode_brg=='B') {harga=2000; nama_brg=="K";}
if (kode_brg=='c' || kode_brg=='C') {harga=3000; nama_brg=="R";}
if (kode_brg=='d' || kode_brg=='D') {harga=4000; nama_brg=="M";}
if (kode_brg=='e' || kode_brg=='E') {harga=5000; nama_brg=="L";}
else {
}
return harga;
}

//ini program utama
int main()
{
int nama_ksr, info, jumlah, bayar, total, diskon, grand, coba_son=0, ggl_hend=0;
char kode_brg, nama_brg, usr_kan[30], pas_to[10], ulang;

char kasir[5][15] = //ini adalah array 2 dimensi
   {
   {"Fatma N"},
   {"Khabib K"},
   {"Salma A"},
   {"Arif R"},
   {"Soni H"}
   };

printf("\n");
printf("\t\t             SELAMAT DATANG \n");
printf("\t\t Program Penjualan Sangat Sederhana Sekali \n\n");
printf("\t\t        UAS ALGORITMA PEMROGRAMAN \n");
printf("\n");
printf("\n");
printf("\t\t              Kelompok 2 \n");
printf("\t      Fatma N - Khabib K - Salma A - Arif R - Soni H \n");
printf("\t\t ====================================== \n\n\n\n");


printf("Daftar Barang Yang Tersedia: \n\n");
printf("KODE BARANG \t\t HARGA \n");
printf("--------------------------------------\n");
printf("A. Televisi \t\t Harga \t Rp.  1.000\n");
printf("B. Kulkas \t\t Harga \t Rp.  2.000\n");
printf("C. Radio \t\t Harga \t Rp.  3.000\n");
printf("D. Magic Com \t\t Harga \t Rp.  4.000\n");
printf("E. Laptop \t\t Harga \t Rp.  5.000\n");
printf("\n");
printf("Diskon 20%% apabila total pembelian lebih dari Rp 10.000 \n\n"); // simbol % harus di tulis ganda, yaitu %%


//ini fungsi LOOP perulangan DO.... WHILE, sekaligus untuk VALIDASI kode barang
do {
printf("\t\t\t Ketik kode barang yg ingin di beli: "); scanf("%c", &kode_brg);
clean_stdin(); }
while (kode_brg!='a' && kode_brg!='b' && kode_brg!='c' && kode_brg!='d' && kode_brg!='e' &&  //simbol && adalah simbol dan
kode_brg!='A' && kode_brg!='B' && kode_brg!='C' && kode_brg!='D' && kode_brg!='E');


// ini fungsi LOOP perulangan, dan juga validasi jumlah barang tidak boleh 0 atau minus...
do {
printf("\t\t\t ketik jumlah barang: "); scanf("%i", &jumlah);
//printf("\n");
clean_stdin();
}
while (0 >= jumlah);


//ini memanggil fungsi harga
bayar=fungsi_harga(kode_brg) * jumlah;
printf("\t\t ====================================== \n");
printf("\t\t\t total harga sebesar: %i\n", bayar);


//untuk menghitung diskon, dengan fungsi if
if (bayar>10000) diskon=bayar*0.20;
else diskon=0;

printf("\t\t\t diskon anda adalah: %i\n\n", diskon);

grand=bayar - diskon;
printf("\t\t ====================================== \n");
printf("\t\t      TOTAL HARUS DI BAYAR: %i\n\n\n", grand);

printf("Silahkan Pilih Loket Bayar: 1 2 3 4 5 \n");
printf("Nomor Kasir: "); scanf("%i", &nama_ksr);
printf("\n");

//print memanggil array di sini
if (nama_ksr==1) { printf("\t\t ====================================== \n");
    printf("\t\t   Silahkan menuju ke Kasir: %s\n\n", kasir[0]); }
else if (nama_ksr==2) { printf("\t\t ====================================== \n");
    printf("\t\t   Silahkan menuju ke Kasir: %s\n\n", kasir[1]); }
else if (nama_ksr==3) { printf("\t\t ====================================== \n");
    printf("\t\t   Silahkan menuju ke Kasir: %s\n\n", kasir[2]); }
else if (nama_ksr==4) { printf("\t\t ====================================== \n");
    printf("\t\t   Silahkan menuju ke Kasir: %s\n\n", kasir[3]); }
else { printf("\t\t ====================================== \n");
    printf("\t\t   Silahkan menuju ke Kasir: %s\n\n", kasir[4]); }
}