#include <stdio.h>
#include <unistd.h>
int main()
{
int chng, chngEx, valVAT;
double sumInVAT, sumNoVAT, sumVAT;
while(1)
{
printf ("Введите ставку НДС (10, 18 или 20) либо ставку 0 для выхода из программы: ");
scanf ("%d", &valVAT);
printf("Выбранная ставка НДС - %d%%\n", valVAT);
if (valVAT == 0)
{
printf ("Всего доброго!\n");
break;
}
else if ((valVAT != 10) && (valVAT != 18) && (valVAT != 20))
{
printf("\nОШИБКА! Укажите допустимую ставку налога.\n\n");
sleep (1);
continue;
}
else
{
printf ("Выделить НДС: введите 1\nНачислить НДС: введите 2\n");
printf ("Выход из программы: введите 0\nВведите номер операции: ");
scanf ("%d", &chng);
switch (chng)
{
case 0:
printf ("Всего доброго!\n");
return 0;
case 1:
printf ("Введите сумму, из которой необходимо выделить НДС: ");
scanf ("%lf", &sumInVAT);
sumVAT = sumInVAT / (100 + valVAT) * valVAT;
sumNoVAT = sumInVAT-sumVAT;
printf ("\nНДС в том числе составляет: %.2lf\nСумма без НДС: %.2lf\n\n", sumVAT, sumNoVAT);
printf ("Повторить? (1 - да, 0 - нет): ");
scanf ("%d", &chngEx);
if (chngEx == 1) {continue;}
else {printf ("Всего доброго!\n"); return 0;}
case 2:
printf ("Введите сумму, на которую необходимо начислить НДС: ");
scanf ("%lf", &sumNoVAT);
sumVAT = sumNoVAT * valVAT / 100;
sumInVAT = sumNoVAT + sumVAT;
printf ("\nНДС к начислению составляет: %.2lf\nСумма с НДС: %.2lf\n\n", sumVAT, sumInVAT);
printf ("Повторить? (1 - да, 0 - нет): ");
scanf ("%d", &chngEx);
if (chngEx == 1) {continue;}
else {printf ("Всего доброго!\n"); return 0;}
default:
printf ("\nОШИБКА! Выберите допустимое значение.\n\n");
sleep (1);
continue;
}
}
}
}