Форум программистов, компьютерный форум, киберфорум
Наши страницы

Класс, для полей которого нужно использовать класс - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ функция rectPS http://www.cyberforum.ru/cpp-beginners/thread1052492.html
#include <iostream> // ввод/вывод #include <math.h> using namespace std; // будем использовать пространство имен std // Rect структура, которая содержит указанные координата х, y, ширину и...
C++ Входит ли точки в треугольник из двух множеств точек Даны два множества точек на плоскости. Из первого множества выбрать три различные точки так, чтобы треугольник с вершинами в этих точках содержал (строго внутри себя) равное количество точек... http://www.cyberforum.ru/cpp-beginners/thread1052487.html
Реализовать обработку символьной информации C++
Реализовать обработку символьной информации с использованием класса string из библиотеки STL, стремясь к максимальному использованию методов класса string и алгоритмов библиотеки STL. Дан массив...
Вычислить значение функции используя цикл с постусловием C++
Вычислить ф-цию y=2sin"в квадрате"(ax"в квадрате"), где x меняется от XN до XK с шагом DX.Исп. цикл с постусловием. a,x-переменные
C++ Посоветуйте книги по программированию на с++ http://www.cyberforum.ru/cpp-beginners/thread1052472.html
Привет всем!Народ посоветуйте пожалуйста книги по с++ для начинающих ну не совсем конечно так,как я с компьютером на ты)Знаю,что многие меня пошлют в тему обсуждения литературы по с++,но я хотел бы...
C++ последовательность Добрый день у меня такое задание написать программу, которая организует: - Ввод с клавиатуры длины последовательности чисел Фибоначчи - Вычисление последовательности чисел Фибоначчи -... подробнее

Показать сообщение отдельно
A0A
0 / 0 / 0
Регистрация: 13.10.2013
Сообщений: 36

Класс, для полей которого нужно использовать класс - C++

22.12.2013, 20:17. Просмотров 447. Ответов 3
Метки (Все метки)

Создайте класс Payment, используя для представления полей начислениq и удержаниq класс Money.
...
Класс Money используется для работы с денежными суммами. Число представляется двумя полями: типа long для рублей и unsigned char для копеек. Дробная часть (копейки) при выводе на экран должна быть отеделена от целой части запятой. Реализуйте операции сложения, вычитания, деления сумм, суммы на дробное число, умножение на дробное число и операции сравнения.
Нужно помочь с этой частью, ну и проблемка - char для ФИО не переваривает пробелы.

C++ (Qt)
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
#include "stdafx.h"
#include <conio.h>
#include <iostream>
using namespace std;
 
class payment
{
 
 public:    char fio[30]; //Фио
    float oklad; //оклад
    int year; //год поступления на работу
    float procent; //процент надбавки
    float nalog; //подоходный налог
    int rab_day_month; //кол-во отработанных дней
    float day_month; //кол-во рабочих дней
    float nach_summ; //начисленная сумма
    float yder_summ; //удержанная сумма
    float stag; //стаж (полное кол-во лет)
    float zp; //зарплата
 
    float vichisl_nach_summ();
    float vichisl_yder_summ();
    float vichisl_zp();float vichisl_stag();
 
};
class Money{
public:
long roubles;
unsigned char kop;}
float payment::vichisl_nach_summ(){return (oklad*rab_day_month+oklad*rab_day_month*procent/100);}
float payment::vichisl_yder_summ(){return ((oklad*rab_day_month+oklad*rab_day_month*procent/100)*0.01+(oklad*rab_day_month+oklad*rab_day_month*procent/100)*0.13);}
float payment::vichisl_zp(){return ((oklad*rab_day_month+oklad*rab_day_month*procent/100)-((oklad*rab_day_month+oklad*rab_day_month*procent/100)*0.01+(oklad*rab_day_month+oklad*rab_day_month*procent/100)*0.13));}
float payment::vichisl_stag(){return (2013-year);}
 
void main(){
 payment* f=new payment();
 setlocale (LC_ALL, "russian");
cout<<"Введите фамилию, имя и отчество сотрудника - ";
cin>>f->fio;
cout<<"Введите оклад сотрудника  - \n";
cin>>f->oklad;
cout<<"Введите год поступления сотрудника на работу - \n";
cin>>f->year;
cout<<"Введите процент надбавки - \n";
cin>>f->procent;
cout <<"Введите кол-во отработанных дней - \n";
cin>>f->rab_day_month;
cout<<"Начисленная сумма составляет: "<<f->vichisl_nach_summ()
<<"\n";
cout<<"Удержанная сумма составляет: "<<f->vichisl_yder_summ()<<"\n";
cout<<"Итоговая сумма выплаты "<<f->vichisl_zp()<<"\n";
cout<<"Стаж : "<<f->vichisl_stag()<<"\n";
delete f;
getch();}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.