0 / 0 / 1
Регистрация: 01.10.2017
Сообщений: 22
1

Организовать информационный массив для хранения данных в виде заданной структуры и заполнить его данными с клавиатуры

24.11.2017, 18:32. Показов 1567. Ответов 1
Метки нет (Все метки)

Информация о сотрудниках предприятия состоит из фамилии, имени, отчества, должности, заработной платы, даты рождения, даты трудоустройства на предприятии, образования.
Организовать информационный массив для хранения данных в виде заданной структуры и заполнить его данными с клавиатуры.
Вывести данные о сотрудниках, зарплата которых выше среднего уровня на 25% и выше, а возраст не превышает 25 лет. Вывести сообщение, если таких сотрудников нет.
Уменьшить зарплату работникам, не имеющим высшего образования и работают на заданной пользователем должности, на 10%, при этом решение об уменьшении для каждого работника окончательно принимает пользователь: или позволяя выполнить уменьшение или запрещая. Определить, каким образом увеличился фонд заработной платы на предприятии после внесенных изменений. Определить, каким образом увеличился бы фонд заработной платы, если бы уменьшение выполнялось не выборочно пользователем, а для всех сотрудников, отвечающих указанным условиям. Вывести соответствующую информацию пользователю.
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.11.2017, 18:32
Ответы с готовыми решениями:

Организовать информационный массив для хранения данных в виде заданной структуры
Помогите пожалуйста с заданием. Информация о билетах на поезд содержит номер поезда, направление...

Как организовать массив для хранения данных?
не судите только начал изучать с++ , правильно ли так сохранять все данные в массив? const...

Для хранения данных внутри программы организовать массив структур
Добрый день. Делаю следующую задачу: • В задаче подразумевается, что исходная информация...

Функция, которая заполняет поле заданной структуры данными с клавиатуры
написать функцию, которая заполняет поле заданной структуры данными, данными с клавиатуры (мы...

1
5 / 5 / 5
Регистрация: 16.10.2017
Сообщений: 23
14.12.2017, 15:30 2
Лучший ответ Сообщение было отмечено helen1268 как решение

Решение

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
#include <bits\stdc++.h>
using namespace std;
 
struct s 
{
    char Name[50]; char pr[50]; char bt[50];
    float zarpl;
    char dolzn[50];
    char dateNarod[10];
    char dateUstr[25];
    char Osv[25] ;
};
 
 int main(){
    setlocale(LC_ALL, "Russian");
        float vsyazarpl=0, sr25=0, kof=0,fond1=0, fond2=0,sravnen1,sravnen2, pes, perem1,perem2,izmen1,izmen2;
    string dol;
    int d,prov=0;
    string osv ="Vischtcha";    
    s nada[7];
        for (int i(0);i<7;i++){
            cout<<"П.I.Б. \t\t"; 
            scanf("%s",nada[i].Name);
                cout<<" \t\t"; 
                scanf("%s",nada[i].pr);
                    cout<<" \t\t"; 
                    scanf("%s",nada[i].bt); 
 
            cout<<"Зарплата \t\t";
            scanf("%f",&(nada[i].zarpl)); 
   
            cout<<"Посада \t\t"; 
            scanf("%s",nada[i].dolzn);
 
            cout<<"Дата працевлаштування\t\t";
            scanf("%s",nada[i].dateUstr);
 
            cout<<"Дата народження\t\t"; 
            scanf("%s",nada[i].dateNarod);
 
            cout<<"Освiта \t\t";
            scanf("%s",nada[i].Osv);     
        
            cout<<"\n\n";   
                cout<<"======================\n"; 
                    vsyazarpl=vsyazarpl+nada[i].zarpl;
}
 
sr25=vsyazarpl/7;
kof=sr25*0.25;
int s;
    for (int i(0);i<7;i++){
    string dat=strrchr(nada[i].dateNarod,'.');
        dat.erase(dat.find("."),1);
            s=atoi(dat.c_str());
    if((2017-s)<=25&&(nada[i].zarpl-kof)>=sr25){
        cout<<endl<<"----------------------"<<endl;
        cout<<"П.I.Б. \t\t"<<nada[i].Name<<endl;
        cout<<" \t\t"<<nada[i].pr<<endl;
        cout<<" \t\t"<<nada[i].bt<<endl;
        cout<<"Посада \t\t"<<nada[i].dolzn<<endl;
        cout<<"Зарплата \t\t"<<nada[i].zarpl<<endl;
        cout<<"Дата працевлаштування\t\t"<<nada[i].dateUstr<<endl;
        cout<<"Дата народження\t\t"<<nada[i].dateNarod<<endl;
        cout<<"Освiта \t\t"<<nada[i].Osv<<endl;
        cout<<"---------------------"<<endl;
}   
    else prov++;
 
}
        if (prov==7) cout<<"Таких немає"<<endl;
 
    cout<<"Введiть посаду  ";
    cin>>dol;
 
    for(int i(0);i<7;i++){
        sravnen1=strcmp(osv.c_str(),nada[i].Osv);
        sravnen2=strcmp(dol.c_str(),nada[i].dolzn);
 
        if(sravnen1!=0&&sravnen2==0){
            cout<<"Зменшити зарплату"<<" "<<nada[i].Name<<" "<<nada[i].pr<<" "<<nada[i].bt<<"?"<<endl;
            cout<<"якщо 'так' введiть '1', якщо 'нi' введiть '0'"<<endl;
        cin>>pes;
            if (pes==1){
                perem1=nada[i].zarpl-(nada[i].zarpl*0.1);
                fond1=fond1+perem1;
                fond2=fond2+nada[i].zarpl;  
                } 
                else{
                fond1=fond1+nada[i].zarpl;
                fond2=fond2+nada[i].zarpl;
                }
        }
        else fond1=fond1+nada[i].zarpl; 
    }
 
        izmen1=fond1-vsyazarpl;
        izmen2=fond2-vsyazarpl;
        cout<<"------------------"<<endl;
        cout<<"Початковий фонд: "<<vsyazarpl<<" При рiшеннi користувача збiльшиться на: "<<izmen1<<endl;
        cout<<"Без рiшення користувача збiльшиться на: "<<izmen2<<endl;
 
        system("pause");
        return 0;
 }
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.12.2017, 15:30
Помогаю со студенческими работами здесь

Заполнить массив байтов с клавиатуры разнотипными данными в Си
Всем привет! Задача: есть динамический массив байтов (byte), пользователь заполняет его с...

Сравнение данных структуры с данными, введенными с клавиатуры
Есть такая структура: struct spisok { char departure; }; //далее будет использоваться spisok...

Организовать двунаправленный список для хранения элементов структуры, содержащей сведения о фамилии, дате рождения
Организовать двунаправленный список для хранения элементов структуры, содержащей сведения о...

Программа, позволяющую организовать в виде стека набор данных динамической структуры о пациентах больницы
Добрый день! :) Задание. Помогите пожалуйста, как решать, натолкните на мысль. Составить...

Программа, позволяющая организовать в виде очереди набор данных динамической структуры о страховой компании
Добрый день! :) Задание. Помогите пожалуйста, как решать, натолкните на мысль. Составить...

Организовать информационный массив о театральных событиях
Помогите пожалуйста!! Данные о театральных событиях содержат название театра, название...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru