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

ООП "Класс калькулятор - дата"

27.03.2016, 14:15. Показов 1718. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день.
Есть такая задачка: Разработать класс калькулятор(с формой) выполняющий операции например:
1) дата1-дата2 = количество дней, недель,месяцев.
2) дата1-месяц=дата2
3) дата1-недель=дата2
и так дале.

Как лучше такие операции организовать на форме?
Сделать для каждого меню и форму или можно как-то проще и компактней?
Спасибо!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.03.2016, 14:15
Ответы с готовыми решениями:

ООП. Определить класс Дата
Определить класс Дата (Date), в котором производится ввод календарной даты, определение...

Как преобразовать обычный калькулятор в калькулятор использующий класс стек?
#include <iostream> int main(){ int a = 0; int b = 0; char operation; ...

ООП калькулятор
Начал изучать ООП, задание сделать класс с названием Int, в котором будет спрашиваться, хотите ли...

Создать базовый класс Car (машина) и производный класс Lorry (грузовик): ООП ошибки
Создать базовый класс Car (машина), характеризуемый торговой маркой (строка), числом цилиндров,...

Переделать строчный калькулятор через ООП
Друзья, имею отличный строчный калькулятор, сделанный через процедурное программирование. ...

5
125 / 117 / 67
Регистрация: 07.11.2014
Сообщений: 788
27.03.2016, 14:51 2
Viktor10, недавно была такая олимпиадная задача. Не вижу ничего сложного, кроме как немного подумать над алгоритмом с високосными годами. Объемная будет программа, хотя бы попытайтесь, если что исправим
0
0 / 0 / 0
Регистрация: 01.11.2015
Сообщений: 62
27.03.2016, 18:31  [ТС] 3
Я хотел спросить про то,как организовать все эти операции, которые описал. Под них придется(для каждой операции) делать пункт в меню?
0
125 / 117 / 67
Регистрация: 07.11.2014
Сообщений: 788
28.03.2016, 08:49 4
Viktor10, в классе должно быть 3 функции: Days(char *date1, char *date2); Date2(char *date1, char *month); Date2m(char *date1, char *week);
Можете еще третью переменную приписать в функцию для вывода результата через эту строку.
Насчет меню, кажется да, будете использовать switch,case. 1 - Days, 2 - Date2, 3 - Date2m и т.д..
Если нужно все сразу вывести - не надо меню.
0
0 / 0 / 0
Регистрация: 01.11.2015
Сообщений: 62
02.04.2016, 13:51  [ТС] 5
Aymurat, я тут начал описывать класс..и при компиляции возникают ошибки, не понимает тип Date.
file main.cpp
C++
1
2
3
4
5
6
7
8
9
10
11
#include "date.h"
#include "calc.h"
#include <iostream>
#include <string>
using namespace std;
void main()
{
 
cout<<"a:";
system ("pause");
}
file calc.h
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include "date.h"
#include <string>
#include <iostream>
using namespace std;
//описание класса калькул€тор
class Calc
{
    Date op1; // операнд1
    Date op2; // операнд 2
    Date res; // результат
    int znak; // znak operazii
    int form; // forma vivoda rezultata
public:
    Calc();
    void set_op1(Date); // модификатор объекта1
    void set_op2(Date); //  модификатор объекта2
    //Date get_res(); // селектор дл€ получени€ результата
    void set_znak(int); // модификатор знака операции
    void set_form(int); // модикатор дл€ вывода формы
    void execute(); // вычисление результата
};
file date.h
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
using namespace std;
class date
{
char *date_string;// строка дл€ хранени€ даты в виде дд.мм.гггг
int days;// количество дней в дате дл€ расчетов
public:
date();// конструктор
date(const date&);//конструктор копировани€
~date();// деструктор
//инициализаци€ даты : заполн€ем атрибут date_string
//количество дней в дате, затем заполн€ем атрибут days
void init(char*);
// вспомогательна€ функци€, котора€ по колчиеству дней формирует
//строка в виде дд.мм.гггг
void days_to_string();
//вспомогательна€ функци€ дл€ расчета дней в дате
void string_to_days();
//перегруженна€ функци€ дл€ сложение двух дат
date operator+(date&);
//перегруженна€ функци€ дл€ вычитани€ двух дат
date operator-(date&);
//перегруженна€ функци€ дл€ присваив.
date& operator=(const date&);
//глобальные операторы-функции ввода-вывода
//friend istream& operator>>(istream&in,date&d);
//friend ostream& operator<<(ostream&out,const date&d);
};
файлы calc.cpp и date.cpp созданы, по пока пустые.

есть сам проект,во влож.
Вложения
Тип файла: zip class_calc.zip (2.23 Мб, 7 просмотров)
0
47 / 47 / 31
Регистрация: 02.04.2016
Сообщений: 312
02.04.2016, 13:56 6
ну если Date op1 - это экземпляр твоего класса - то ошибки в регистре(Date и date - это разные названия)
0
02.04.2016, 13:56
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.04.2016, 13:56
Помогаю со студенческими работами здесь

Класс Дата
С++ Помогите, пожалуйста. Нужно Создать класс с полями, указанными в индивидуальном задании....

класс Дата
Здравствуйте, помогите решить задачу : Создайте класс с именем Date, приватные переменные: год,...

Класс Дата
Создать класс с полями, указанными в индивидуальном задании. Реализовать в классе методы: -...

Класс дата
Создать класс типа - дата с полями: день (1-31), месяц (1-12), год(целое число).Класс имеет...

Класс Дата
Створити клас із полями, зазначеними в індивідуальному завданні . Реалізувати в класі методи: -...


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

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

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