Программа должна рассчитывать размер премии сотрудникам - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Подскажите как это до ума довести то чет не так... Программа должна рассчитывать размер премии сотрудникам. Входные данные: вводится номер разряда сотрудника, стаж работы, должность. Если разряд больше третьего, премия составляет 50 рублей, если стаж работы 10 лет, к премии добавляется 10 рублей, если 20 лет то 20 рублей и т.д., если начальник, премия вне зависимости от стажа работы и разряда - 100 рублей.
Листинг программы
  1. #include <stdio.h>
  2. main()
  3. {
  4. int d, r, s;
  5. /* d код должности
  6. r разряд
  7. s стаж
  8. */
  9. printf(" Введите код должнсти :");
  10. scanf("%d", &d);
  11. printf(" Введите разряд : ");
  12. scanf("%d", &r);
  13. printf(" Введите стаж : ");
  14. scanf("%d", &s);
  15. int p = 0;
  16. /*премия*/
  17. if ( d == 1 )
  18. {
  19. /*начальник*/
  20. p = 100;
  21. }
  22. else
  23. {
  24. if(r > 3)
  25. {
  26. p = 50;
  27. }
  28. p = p + int(s/10)*10;
  29. }
  30. printf(" Премия %d \n", p);
  31. }

Решение задачи: «Программа должна рассчитывать размер премии сотрудникам»

textual
Листинг программы
  1. #include <stdio.h>
  2.  
  3. int main()
  4. {
  5.     int d, r, s;
  6.     int p = 0;
  7.     printf(" Введите код должнсти :");
  8.     scanf("%d", &d);
  9.  
  10.     printf(" Введите разряд : ");
  11.     scanf("%d", &r);
  12.  
  13.     printf(" Введите стаж : ");
  14.     scanf("%d", &s);
  15.  
  16.     if(d == 1)
  17.     p=100;
  18.     else
  19.     {
  20.         if(r>3)
  21.             p=50;
  22.         if(s>=10 && s<20)
  23.             p=p+10;
  24.         else if(s>=20 && s<30)
  25.             p=p+20;
  26.         else if(s>=30 && s<40)
  27.             p=p+30;
  28.         else if(s>=40 && s<50)
  29.             p=p+40;
  30.         else if(s>=50 && s<60)
  31.             p=p+50;
  32.         else if(s>=60 && s<70)
  33.             p=p+60;
  34.     }
  35.     printf(" Премия %d \n", p);
  36.     return 0;
  37. }

Объяснение кода листинга программы

  1. Переменные d, r, s используются для ввода данных пользователем.
  2. Переменная p инициализируется значением 0 и используется для хранения размера премии.
  3. Пользователю предлагается ввести код должности, разряд и стаж работы.
  4. Используется условная конструкция if-else для определения размера премии в зависимости от введенных данных.
  5. Если код должности равен 1, то размер премии устанавливается равным 100.
  6. В остальных случаях проверяется разряд, если он больше 3, то размер премии устанавливается равным 50.
  7. Далее проверяется стаж работы, если он находится в диапазоне от 10 до 20 лет, то к премии добавляется 10.
  8. Если стаж находится в диапазоне от 20 до 30 лет, то к премии добавляется 20.
  9. Если стаж находится в диапазоне от 30 до 40 лет, то к премии добавляется 30.
  10. Если стаж находится в диапазоне от 40 до 50 лет, то к премии добавляется 40.
  11. Если стаж находится в диапазоне от 50 до 60 лет, то к премии добавляется 50.
  12. Если стаж находится в диапазоне от 60 до 70 лет, то к премии добавляется 60.
  13. Наконец, выводится значение переменной p, которое представляет собой размер премии.
  14. Программа возвращает 0, что означает успешное выполнение.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы