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

Описать класс «Календарь»

20.02.2013, 17:24. Показов 3442. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Описать класс «Календарь», позволяющий работать с календарными датами от 0 до 10000 года нашей эры. Поля класса продумать самостоятельно. Обязательные методы класса: установка и вывод информации о текущей дате; вывод дня недели для указанной даты; подсчет числа дней между двумя указанными датами; подсчет числа дней недели, выпадающих на конкретное число указанного месяца в пределах указанного диапазона дат.

Можно описать хотя бы 2года
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.02.2013, 17:24
Ответы с готовыми решениями:

Разработать класс Tableware (посуда) и производный класс Dish (тарелка). Описать атрибуты
Разработать класс Tableware (посуда) и производный класс Dish (тарелка). Описать атрибуты.

Разработать класс Man (человек) и производный класс Student (студент). Описать атрибуты.
Разработать класс Man (человек) и производный класс Student (студент). Описать атрибуты.

Описать базовый класс Point. Описать класс Прямоугольник от класса Point
Описать базовый класс Point - точка. Описать класс "прямоугольник". Обязательные поля класса...

Класс Календарь
Пишу тут небольшую программку, но столкнулся с одной проблемой. using System; using...

2
60 / 60 / 6
Регистрация: 28.05.2012
Сообщений: 222
20.02.2013, 17:59 2
Цитата Сообщение от sovershenstvo Посмотреть сообщение
Описать класс «Календарь», позволяющий работать с календарными датами от 0 до 10000 года нашей эры. Поля класса продумать самостоятельно. Обязательные методы класса: установка и вывод информации о текущей дате; вывод дня недели для указанной даты; подсчет числа дней между двумя указанными датами; подсчет числа дней недели, выпадающих на конкретное число указанного месяца в пределах указанного диапазона дат.

Можно описать хотя бы 2года
Приведите свои наработки, мысли по этому поводу - люди будут охотнее отвечать.
0
0 / 0 / 1
Регистрация: 18.02.2012
Сообщений: 128
20.02.2013, 18:45  [ТС] 3
Лучший ответ Сообщение было отмечено sovershenstvo как решение

Решение

Или переделать вот эту прогр-у,
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
#include <iostream> 
#include <iomanip> //Манипуляторы для поточных вводов-выводов
#include <time.h> //Это наша суть, работа со временем
#include <fstream> //Файловые потоки ввода/вывода
using namespace std;
int main()
{    
setlocale(LC_ALL,"Russian");    
int Year; //Год на который будет разрабатыватся календарь    
class tm *date; //Класс календарной даты    
time_t temp = time(NULL);   
char *Month[] = {"Январь", "Февраль", "Март", "Апрель", "Май", "Июнь", "Июль", "Август", "Сентябрь", "Октябрь","Ноябрь", "Декабрь"};  
ofstream file("Calendar.txt"); //Файловый ввод   
cout << "Введите год : ";   
cin >> Year; //Ввод года    
//Поставим date в 1 января введенного года    
date = localtime(&temp); //Получим текущую дату    
date->tm_year = Year - 1900;        
date->tm_mon = 0; //Это январь    
date->tm_mday = 1; //Это первое число        
time_t a = mktime(date); //Создадим time_t исходя из нашей даты    
int limitsDay = date->tm_year; //Для цикла определим текущий год из структуры    
int Selection = -1; //Опция выбора (смещение строки) если текущий месяц закончился    
//Пока структура указывает еще на введенный год   
while (date->tm_year == limitsDay)     
{        if (Selection != date->tm_mon) //Проверим не закончился ли текущий месяц (нам же шапку вывести нужно)        
{            //А если месяц закончился, то перейдем на след. строку            
cout<< endl;            
file<< endl;            
//Выведим название месяца            
cout<< endl<< Month[date->tm_mon] << endl;             
file<< endl<< Month[date->tm_mon] << endl;            
//Выведим шапку дней недели            
cout<< setw(3) << "Вс"<< setw(3) << "Пн"<< setw(3) << "Вт"<< setw(3) << "Ср"<< setw(3) << "Чт"<< setw(3) << "Пт"<< setw(3) << "Сб"<<endl;            
file<< setw(3) << "Вс"<< setw(3) << "Пн"<< setw(3) << "Вт"<< setw(3) << "Ср"<< setw(3) << "Чт"<< setw(3) << "Пт"<< setw(3) << "Сб"<<endl;                        
Selection = date->tm_mon;  //Перезапишим Selection в уже новый-текущий месяц            
if (date->tm_wday != 0) //Если день недели в новом месяце не сначало, то отделим пробелами        
{                for (int i = 0; i < date->tm_wday; i++)                
{                    cout<< setw(3) << "";                    
file<< setw(3) << "";                
}            
}        
}        cout<<setw(3)<<date->tm_mday; //Вывод дня в месяце        
file<< setw(3) << date->tm_mday;                
if (date->tm_wday == 6) //Если дни недели закончились перейдем на новую строку        
{            
             cout << endl;            
             file << endl;        }       
             date->tm_mday++; //Добавим 1 день        
a = mktime(date); //Свормируем новое время по данным структуры    
}        cout << endl;    
file.close(); //Закроем файл
system("pause");
}
0
20.02.2013, 18:45
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.02.2013, 18:45
Помогаю со студенческими работами здесь

Класс: Описать класс Points, затем производный от него Circle
Задание: Описать класс Points, затем производный от него Circle. Создать динамический массив...

Описать базовый класс колоды карт и производный класс пасьянс
Здраствуйте! товарищи-программисты, помогите пожалуйста со следующим заданием: Создать колоду...

Описать класс Car и его наследника, класс Avto
Создать класс Автомобиль: Поля: - Марка - приватный - Габариты (А, Б, С) - публичный ...

Описать класс Car и его наследника, класс Sedan
Описать базовый класс CAR (автомашина) со свойствами: •*Марка машины; На его основе создать...


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

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

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