fork download
  1. #include <stdio.h>
  2.  
  3. int main() {
  4.  
  5. // ===============================
  6. // ข้อมูลร้าน
  7. // ===============================
  8. char shopName[] = "ร้านอิ่มจุก อร่อยเว่อร์";
  9.  
  10. // ===============================
  11. // ตัวแปรเมนู
  12. // ===============================
  13. int menu;
  14. int select;
  15. int qty;
  16. int i;
  17.  
  18. // ===============================
  19. // ข้อมูลสินค้า
  20. // ===============================
  21. char food[6][30] = {
  22. "ข้าวผัด",
  23. "ผัดกะเพรา",
  24. "ต้มยำ",
  25. "สเต็ก",
  26. "น้ำอัดลม",
  27. "น้ำเปล่า"
  28. };
  29.  
  30. float price[6] = {50, 60, 80, 120, 25, 15};
  31. int order[6] = {0, 0, 0, 0, 0, 0};
  32.  
  33. // ===============================
  34. // ตัวแปรคำนวณเงิน
  35. // ===============================
  36. float total = 0;
  37. float discount = 0;
  38. float vat = 0;
  39. float net = 0;
  40. float pay = 0;
  41. float change = 0;
  42.  
  43. // ===============================
  44. // เมนูหลัก
  45. // ===============================
  46. do {
  47. printf("\n====================================\n");
  48. printf(" %s\n", shopName);
  49. printf("====================================\n");
  50. printf("1. แสดงรายการอาหาร\n");
  51. printf("2. สั่งซื้ออาหาร\n");
  52. printf("3. ชำระเงิน / ใบเสร็จ\n");
  53. printf("4. ออกจากระบบ\n");
  54. printf("เลือกเมนู: ");
  55. scanf("%d", &menu);
  56.  
  57. switch (menu) {
  58.  
  59. // -------------------------------
  60. // แสดงรายการอาหาร
  61. // -------------------------------
  62. case 1:
  63. printf("\n----- รายการอาหาร -----\n");
  64. for (i = 0; i < 6; i++) {
  65. printf("%d. %-10s ราคา %.2f บาท\n",
  66. i + 1, food[i], price[i]);
  67. }
  68. break;
  69.  
  70. // -------------------------------
  71. // สั่งซื้ออาหาร
  72. // -------------------------------
  73. case 2:
  74. do {
  75. printf("\nเลือกหมายเลขอาหาร (1-6): ");
  76. scanf("%d", &select);
  77.  
  78. if (select >= 1 && select <= 6) {
  79. printf("จำนวนที่ต้องการ: ");
  80. scanf("%d", &qty);
  81. order[select - 1] += qty;
  82. printf("เพิ่ม %s จำนวน %d รายการ\n",
  83. food[select - 1], qty);
  84. } else {
  85. printf("เลือกเมนูไม่ถูกต้อง\n");
  86. }
  87.  
  88. printf("ต้องการสั่งเพิ่มหรือไม่ (1=ใช่ / 0=ไม่): ");
  89. scanf("%d", &menu);
  90.  
  91. } while (menu == 1);
  92. break;
  93.  
  94. // -------------------------------
  95. // ชำระเงิน + ใบเสร็จ
  96. // -------------------------------
  97. case 3:
  98. total = 0;
  99. printf("\n========== ใบเสร็จ ==========\n");
  100. printf("%s\n", shopName);
  101. printf("------------------------------\n");
  102.  
  103. for (i = 0; i < 6; i++) {
  104. if (order[i] > 0) {
  105. float sum = order[i] * price[i];
  106. printf("%s x %d = %.2f บาท\n",
  107. food[i], order[i], sum);
  108. total += sum;
  109. }
  110. }
  111.  
  112. printf("------------------------------\n");
  113. printf("ราคารวม: %.2f บาท\n", total);
  114.  
  115. if (total >= 600) {
  116. discount = total * 0.10;
  117. printf("ส่วนลด 10%%: -%.2f บาท\n", discount);
  118. } else {
  119. discount = 0;
  120. printf("ส่วนลด: 0.00 บาท\n");
  121. }
  122.  
  123. vat = (total - discount) * 0.07;
  124. printf("VAT 7%%: %.2f บาท\n", vat);
  125.  
  126. net = total - discount + vat;
  127. printf("ยอดสุทธิ: %.2f บาท\n", net);
  128.  
  129. printf("รับเงินมา: ");
  130. scanf("%f", &pay);
  131.  
  132. if (pay >= net) {
  133. change = pay - net;
  134. printf("เงินทอน: %.2f บาท\n", change);
  135. } else {
  136. printf("เงินไม่พอ กรุณาชำระใหม่\n");
  137. }
  138.  
  139. printf("==============================\n");
  140. printf("ขอบคุณที่ใช้บริการ\n");
  141. break;
  142.  
  143. // -------------------------------
  144. // ออกจากระบบ
  145. // -------------------------------
  146. case 4:
  147. printf("ออกจากระบบเรียบร้อย\n");
  148. break;
  149.  
  150. default:
  151. printf("กรุณาเลือกเมนูให้ถูกต้อง\n");
  152. }
  153.  
  154. } while (menu != 4);
  155.  
  156. return 0;
  157. }
Success #stdin #stdout 0.02s 25236KB
stdin
Standard input is empty
stdout
#include <stdio.h>

int main() {

    // ===============================
    // ข้อมูลร้าน
    // ===============================
    char shopName[] = "ร้านอิ่มจุก อร่อยเว่อร์";

    // ===============================
    // ตัวแปรเมนู
    // ===============================
    int menu;
    int select;
    int qty;
    int i;

    // ===============================
    // ข้อมูลสินค้า
    // ===============================
    char food[6][30] = {
        "ข้าวผัด",
        "ผัดกะเพรา",
        "ต้มยำ",
        "สเต็ก",
        "น้ำอัดลม",
        "น้ำเปล่า"
    };

    float price[6] = {50, 60, 80, 120, 25, 15};
    int order[6] = {0, 0, 0, 0, 0, 0};

    // ===============================
    // ตัวแปรคำนวณเงิน
    // ===============================
    float total = 0;
    float discount = 0;
    float vat = 0;
    float net = 0;
    float pay = 0;
    float change = 0;

    // ===============================
    // เมนูหลัก
    // ===============================
    do {
        printf("\n====================================\n");
        printf("   %s\n", shopName);
        printf("====================================\n");
        printf("1. แสดงรายการอาหาร\n");
        printf("2. สั่งซื้ออาหาร\n");
        printf("3. ชำระเงิน / ใบเสร็จ\n");
        printf("4. ออกจากระบบ\n");
        printf("เลือกเมนู: ");
        scanf("%d", &menu);

        switch (menu) {

        // -------------------------------
        // แสดงรายการอาหาร
        // -------------------------------
        case 1:
            printf("\n----- รายการอาหาร -----\n");
            for (i = 0; i < 6; i++) {
                printf("%d. %-10s ราคา %.2f บาท\n",
                       i + 1, food[i], price[i]);
            }
            break;

        // -------------------------------
        // สั่งซื้ออาหาร
        // -------------------------------
        case 2:
            do {
                printf("\nเลือกหมายเลขอาหาร (1-6): ");
                scanf("%d", &select);

                if (select >= 1 && select <= 6) {
                    printf("จำนวนที่ต้องการ: ");
                    scanf("%d", &qty);
                    order[select - 1] += qty;
                    printf("เพิ่ม %s จำนวน %d รายการ\n",
                           food[select - 1], qty);
                } else {
                    printf("เลือกเมนูไม่ถูกต้อง\n");
                }

                printf("ต้องการสั่งเพิ่มหรือไม่ (1=ใช่ / 0=ไม่): ");
                scanf("%d", &menu);

            } while (menu == 1);
            break;

        // -------------------------------
        // ชำระเงิน + ใบเสร็จ
        // -------------------------------
        case 3:
            total = 0;
            printf("\n========== ใบเสร็จ ==========\n");
            printf("%s\n", shopName);
            printf("------------------------------\n");

            for (i = 0; i < 6; i++) {
                if (order[i] > 0) {
                    float sum = order[i] * price[i];
                    printf("%s x %d = %.2f บาท\n",
                           food[i], order[i], sum);
                    total += sum;
                }
            }

            printf("------------------------------\n");
            printf("ราคารวม: %.2f บาท\n", total);

            if (total >= 600) {
                discount = total * 0.10;
                printf("ส่วนลด 10%%: -%.2f บาท\n", discount);
            } else {
                discount = 0;
                printf("ส่วนลด: 0.00 บาท\n");
            }

            vat = (total - discount) * 0.07;
            printf("VAT 7%%: %.2f บาท\n", vat);

            net = total - discount + vat;
            printf("ยอดสุทธิ: %.2f บาท\n", net);

            printf("รับเงินมา: ");
            scanf("%f", &pay);

            if (pay >= net) {
                change = pay - net;
                printf("เงินทอน: %.2f บาท\n", change);
            } else {
                printf("เงินไม่พอ กรุณาชำระใหม่\n");
            }

            printf("==============================\n");
            printf("ขอบคุณที่ใช้บริการ\n");
            break;

        // -------------------------------
        // ออกจากระบบ
        // -------------------------------
        case 4:
            printf("ออกจากระบบเรียบร้อย\n");
            break;

        default:
            printf("กรุณาเลือกเมนูให้ถูกต้อง\n");
        }

    } while (menu != 4);

    return 0;
}