Форум программистов, компьютерный форум CyberForum.ru

Файл. Вывести размер заработной платы каждого работника фирмы по разнице налога, который составляет 12% от суммы зарплаты - C++

Восстановить пароль Регистрация
 
newyork7776
 Аватар для newyork7776
346 / 339 / 79
Регистрация: 21.05.2013
Сообщений: 1,305
Завершенные тесты: 1
10.06.2013, 18:10     Файл. Вывести размер заработной платы каждого работника фирмы по разнице налога, который составляет 12% от суммы зарплаты #1
Условие. Написать программу, которая вводит в файл или читает из файла ведомость студентов, сдавших экзамены. Каждая структура должна содержать фамилию, а также оценки по математике и программированию. Вывести список студентов, сдавших экзамен по программированию с оценкой 4, и записать эту информацию в текстовый файл.
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
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
#include <iostream.h>
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <string.h>
FILE *fl;
typedef struct
{
char fio[30];
unsigned char matem;
unsigned char oaip;
} TStudent;
TStudent stud[30]; 
char name[20]; 
int nst=0; 
int menu(); 
void nnf(); 
void newf(); 
void spisok(); 
void opf(); 
void resc(); 
void resf(); 
int main()
{
while (true)
{
switch (menu())
{
case 1: nnf(); break;
case 2: newf(); break;
case 3: spisok(); break;
case 4: opf(); break;
case 5: resc(); break;
case 6: resf(); break;
case 7: return 0;
default: "Viberit pravilno!";
}
puts("Press any key to continue");
getch(); system("cls");
}}
int menu() 
{
42
cout << "VIBERITE:" << endl;
cout << "1. Vvod file name" << endl;
cout << "2. New file" << endl;
cout << "3. Vvesti spisok" << endl;
cout << "4. Open file" << endl;
cout << "5. Vivesti result" << endl;
cout << "6. Vivesti v fail" << endl;
cout << "7. Exit" << endl;
int i;
cin >> i;
return i;
}
void nnf() 
{
cout << "Vvedite file name" << endl;
cin >> name;
}
void newf() 
if ((fl = fopen(name,"wb"))==NULL)
{
cout << "Oshibka pri sozdanii"<<endl;
exit(1);
}
cout << "OK" << endl;
fclose(fl);
}
void spisok() 
if ((fl = fopen(name,"rb+"))==NULL)
{
cout << "Oshibka pri sozdanii"<<endl;
exit(1);
}
cout << "Vvedite chislo studentov " << endl;
cin >> nst;
for (int i=0; i<nst; i++)
{
cout << "Vvedite imya: ";
43
cin >> stud[i].fio;
cout << "Vvedite otcenku po matematike: ";
cin >> stud[i].matem;
cout << "Vvedite otcenku po OAiP: ";
cin >> stud[i].oaip;
fwrite( &stud[i], sizeof(TStudent), 1, fl );
}
fclose(fl);
}
void opf() 
{
if ((fl = fopen(name,"rb"))==NULL)
{
cout << "Oshibka pri otkritii"<<endl;
exit(1);
}
nst=0; TStudent std;
while(true)
{
int nwrt = fread( &std, sizeof(TStudent), 1, fl );
if (nwrt!=1) break;
stud[nst]=std;
cout << stud[nst].fio << " " << stud[nst].matem
<< " " << stud[nst].oaip << endl;
nst++;
}
fclose(fl);
}
void resc() 
{
for (int i=0; i<nst; i++)
if (stud[i].oaip=='4')
cout << stud[i].fio << endl;
}
void resf() 
char namet[30];
FILE *ft;
cout << "Vvedite imya faila" << endl;
cin >> namet;
44
if ((ft = fopen(namet,"w"))==NULL)
{
cout << "Oshibka pri sozdanii "<<endl;
exit(1);
}
char s[80];
for (int i=0; i<nst; i++)
if (stud[i].oaip=='4')
{
strcpy(s, stud[i].fio);
strcat(s, "\n"); 
fputs(s, ft);
}
fclose(ft);
}
Мое задание : Информация о сотрудниках фирмы включает ФИО, количество отработанных часов за месяц, почасовой тариф. Рабочее время более 144 часов считается сверхурочным и оплачивается в двойном размере. Вывести размер заработной платы каждого работника фирмы по разнице налога, который составляет 12% от суммы зарплаты.
нужно переделать програму на мой случай
+ можна с комментированием + материал по файлам С++
Спасиюв за помочь.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.06.2013, 18:10     Файл. Вывести размер заработной платы каждого работника фирмы по разнице налога, который составляет 12% от суммы зарплаты
Посмотрите здесь:

C++ [ООП + while]Определение заработной платы для каждого
C++ (С++) задача на функции. Подсчет годовой зарплаты работника
Известны данные о зарплате каждого работника бригады, в бригаде 25 человек C++
Создать список отделов и вычислить общую сумму заработной платы сотрудников каждого отдела C++
C++ Создать список отделов и вычислить общую сумму заработной платы сотрудников этого отдела
C++ Определить на каком станке продуктивность каждого работника будет максимальной.
C++ Определить размер заработной платы каждого сотрудника фирмы
Программа расчета суммы налоговых отчислений от заработной платы C++

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

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

Текущее время: 19:32. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru