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

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

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

Подскажите как это до ума довести то чет не так... Программа должна рассчитывать размер премии сотрудникам. Входные данные: вводится номер разряда сотрудника, стаж работы, должность. Если разряд больше третьего, премия составляет 50 рублей, если стаж работы 10 лет, к премии добавляется 10 рублей, если 20 лет то 20 рублей и т.д., если начальник, премия вне зависимости от стажа работы и разряда - 100 рублей.
#include <stdio.h>
main()
{
  int d, r, s;
/* d код должности
  r разряд 
  s стаж
*/                                
 
printf(" Введите код должнсти :");
scanf("%d", &d);
 
printf(" Введите разряд : ");
scanf("%d", &r);
 
printf(" Введите стаж : ");
scanf("%d", &s);
 
int p = 0;
/*премия*/
 
if ( d == 1 )
{
 /*начальник*/
  p = 100;
}
else
{
 
if(r > 3)
{
  p = 50;        
}
 
  p = p + int(s/10)*10;
        
}
 
printf(" Премия %d \n", p);
 
}

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

textual
Листинг программы
#include <stdio.h>
 
int main()
{
    int d, r, s;
    int p = 0;
    printf(" Введите код должнсти :");
    scanf("%d", &d);
 
    printf(" Введите разряд : ");
    scanf("%d", &r);
 
    printf(" Введите стаж : ");
    scanf("%d", &s);
 
    if(d == 1)
    p=100;
    else
    {
        if(r>3)
            p=50;
        if(s>=10 && s<20)
            p=p+10;
        else if(s>=20 && s<30)
            p=p+20;
        else if(s>=30 && s<40)
            p=p+30;
        else if(s>=40 && s<50)
            p=p+40;
        else if(s>=50 && s<60)
            p=p+50;
        else if(s>=60 && s<70)
            p=p+60;
    }
    printf(" Премия %d \n", p);
    return 0;
}

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

  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
Похожие ответы