Mam następujący kod:
#include <stdio.h>
#define C_ARBUZ 1.25 //ceny towarów
#define C_BURAK 0.65
#define C_CEBULA 0.89
#define RABAT 0.05
#define K_5 3.50 //koszty przesyłki, do 5 kg, do 20 kg i więcej
#define K_20 10.00
#define K_W 8.00
void Menu(void);
int main(void){
float forsa = 0;
char option;
int ile_a = 0;
int ile_b = 0;
int ile_c = 0;
int waga = 0;
float trans = 0;
float rabat = 0;
while(1){
Menu();
scanf("%c",&option);
switch(option){
case 'A':
printf("Podaj ilość w kg:");
scanf("%d",&ile_a);
break;
case 'B':
printf("Podaj ilość w kg:");
scanf("%d",&ile_b);
break;
case 'C':
printf("Podaj ilość w kg:");
scanf("%d",&ile_c);
break;
case 'K':
waga = ile_a+ile_b+ile_c;
forsa = ile_a*C_ARBUZ+ile_b*C_BURAK+ile_c*C_CEBULA;
if(waga==0)trans==0;
else{
if(waga>5){
if(waga>20) trans=K_W+0.1*waga;
else trans=K_20;
}
else trans=K_5;
}
if(forsa>100)rabat=RABAT*forsa;
printf("\nKoszt zamówienia:%.2f\nKoszt przesyłki:%.2f\nCeny warzyw:\nArbuz - %.2f\nBurak - %.2f\nCebula - %.2f\n", forsa,trans,C_ARBUZ,C_BURAK,C_CEBULA);
printf("Wysokość rabatu:5\% (dla zamówienia powyżej 100kg)\n");
printf("Ilość zamówionego towaru(kg): %d - arbuz, %d - burak, %d - cebula.\n",ile_a,ile_b,ile_c);
printf("W sumie waga przesyłki %d kg\n",waga);
if(rabat>0) printf("Rabat:%.2f\n",rabat);
printf("Całkowity koszt tamówienia:%.2f\n",forsa-rabat+trans);
return 0;
break;
default:
printf("Wybierz odpowiednią opcję !\n\n");
break;
}
}
}
//definicje funkcji
void Menu(void){
printf("################MENU#################\nWybierz opcję\n");
printf("A - Arbuzy\tB - Buraki\tC - Cebule\tK- Koniec zamówienia\n\n");
}
Mam następujący problem. Po pierwszym wybraniu opcji, powiedzmy wybieramy A, podajemy ilość kg i tutaj powinno się pojawić znowu wejściowe menu no i w zasadzie tak się dzieje, ale pojawia się ono dwa razy. Byłbym wdzięczny za podpowiedź dlaczego tak się dzieje. Z góry dziękuje.