Advertisement
Qellex

4.2 v - 12

Feb 18th, 2021
132
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.04 KB | None | 0 0
  1. #include <stdio.h> // библиотека для ввода и вывода
  2. #include <math.h> // математические функции
  3. #include <locale.h> // кириллица
  4.  
  5. // ввод данных
  6. void inputData(float* vp) {
  7.     do {
  8.         printf("Введите валовую продажу: ");
  9.         scanf_s("%f", vp);
  10.         if (*vp < 0)
  11.             printf("Неверный ввод данных. Повторите ввод.\n");
  12.     } while (vp < 0);
  13. }
  14.  
  15. // зарплата без налога
  16. float calculateIncome(float vp) {
  17.     return 12000 + vp * 0.08;
  18. }
  19.  
  20. // определение налога
  21. float calculateTaxes(float zp) {
  22.     if (zp < 100000)
  23.         return zp * 0.13;
  24.     else
  25.         return zp * 0.24;
  26. }
  27.  
  28. // зарплата с налогом
  29. float calculateSolary(float zp) {
  30.     return zp - calculateTaxes(zp);
  31. }
  32.  
  33. // вывод таблицы
  34. void printTable(float vp1, float zp1, float zpn1, float vp2, float zp2, float zpn2, float vp3, float zp3, float zpn3, float svp, float zps, float zpns) {
  35.     printf("\n\tПродажи\t\tЗП\t\tЗП-Налог\n");
  36.     printf("1\t%.2f\t%.2f\t%.2f\n", vp1, zp1, zpn1);
  37.     printf("2\t%.2f\t%.2f\t%.2f\n", vp2, zp2, zpn2);
  38.     printf("3\t%.2f\t%.2f\t%.2f\n", vp3, zp3, zpn3);
  39.     printf("Итого:\t%.2f\t%.2f\t%.2f\n", svp, zps, zpns);
  40.  
  41. }
  42.  
  43. void main() {
  44.  
  45.     setlocale(LC_ALL, "rus");
  46.  
  47.     float vp1, zp1, zpn1,
  48.         vp2, zp2, zpn2,
  49.         vp3, zp3, zpn3, // продажи, зарплата, зарплата с налогом
  50.         svp, zps, zpns; // суммы
  51.  
  52.     inputData(&vp1);
  53.     inputData(&vp2);
  54.     inputData(&vp3);
  55.  
  56.     zp1 = calculateIncome(vp1);
  57.     zp2 = calculateIncome(vp2);
  58.     zp3 = calculateIncome(vp3);
  59.  
  60.     zpn1 = calculateSolary(zp1);
  61.     zpn2 = calculateSolary(zp2);
  62.     zpn3 = calculateSolary(zp3);
  63.    
  64.     svp = vp1 + vp2 + vp3;
  65.     zps = zp1 + zp2 + zp3;
  66.     zpns = zpn1 + zpn2 + zpn3;
  67.  
  68.     printTable(vp1, zp1, zpn1, vp2, zp2, zpn2, vp3, zp3, zpn3, svp, zps, zpns);
  69.  
  70.     getchar(); getchar();
  71. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement