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

Класс "Историческое событие" - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Как подключиться к текстовому файлу? http://www.cyberforum.ru/cpp-beginners/thread362950.html
мне надо чтобы программа доставала от туда записи и сама записывала
C++ Описать структуру УЧЕНИК Здравствуйте. Возникла проблема. Пропустил тему в универе а задание требуют. Ввести структуру УЧЕНИК с полями ФИО, ГОД ОБУЧЕНИЯ, НАЗВАНИЯ КЛАССА (БУКВА), ИТОГОВАЯ ОЦЕНКА. Написать и протестировать функцию a) добавления нового ученика в массив учеников; b) вывода на экран массива учеников; c) сортирующую массив учеников по классам; d) подсчитывающего среднюю оценку для каждого класса. ... http://www.cyberforum.ru/cpp-beginners/thread362947.html
C++ Матрицы C++
Помогите, пожалуйста, с задачей! Я новичок, мне пока сложновато.. Напечатать элементы заданной матрицы размером NxN в следующем порядке ....... ._. ._. ........\.\.\.\. ..........\.\.\! !\..........\.\. .\.\..........\! !\.\.\.........
C++ Покритикуйте пожалуйста программу
Student.h#ifndef _STUDENT_H #define _STUDENT_H class Student { public: Student(); void del(); void add_surname(char* y); void add_name(char* y);
C++ Поиск элемента в списке. http://www.cyberforum.ru/cpp-beginners/thread362908.html
Есть список, который содержит объекты класа type. Мне нужно найти в этом списке объект, который будет отвечать некоторым условиям. Пробую реализовать это с помощью рекурсии type GetUnit(std::list<type*> List, std::list<type*>::iterator itr) { if ((*itr)) { if <условие> return itr; if (itr != List.end()) {
C++ Предварительное объявление Добрый вечер, Есть файл file.h и file.cpp, в file.cpp я делаю подключение #include <boost/signal.hpp>, не подключаю в хэдер file.h умышленно, потому что этот хэдер подключается в много других файлов, проблема состоит в том чтобы в file.h объявить указатель на сигнал Signal *errorSignal; пробовал сделать предварительное объявление в file.h так: namespace boost { class signal<void... подробнее

Показать сообщение отдельно
Lennadij
3 / 3 / 0
Регистрация: 08.10.2011
Сообщений: 45
08.10.2011, 09:19     Класс "Историческое событие"
//Ввести класс ИСТОРИЧЕСКОЕ СОБЫТИЕ с полями ЧИСЛО, МЕСЯЦ, ГОД, СОБЫТИЕ. Составить и протестировать функцию
//a)ввода исторического события;
//b)вывода на экран списка исторических событий;
//c)вычисляющую интервал в днях, прошедший между двумя заданными историческими событиями;
//d)сортирующую массив исторических событий по полю СОБЫТИЕ.

Я сделала так(не могу сделать под с и d):

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
#pragma once
#ifndef __History_H
#define __History_H
class History
{   int year;
    int month;
    int day;
char event [10];
    int visokos(int year) const;//скрытый метод, проверяющий является ли год високосным 
public:
History();//Конструктор
    int get_year() const {return year;}//метод,возвращающий год
    int get_month() const {return month;}
    int get_day() const {return day;} 
    char get_event() const {return event[10];} 
    void vvod();// метод , обеспечивающий ввод события
    void vivod() const; // константный метод, обеспечивающий вывод списка событий
    void interval() ; // константный метод, вычисляющую интервал в днях, прошедший между двумя заданными историческими событиями
    void massiv (); //  сортирующую массив исторических событий по полю СОБЫТИЕ.       
};
#endif
 
 
 
 
#include "StdAfx.h"
#include "History.h"
#include <iostream>
#include <stdio.h>
#include <iomanip>
#include <ctime>
#include <conio.h>
using namespace std;
int tab_day [2][12]= {{31,28,31,30,31,30,31,31,30,31,30,31},
                    {31,29,31,30,31,30,31,31,30,31,30,31}};
 
History:: History (){}
int History:: visokos(int year) const
{int k=year%4==0&&year%100!=0||year%400==0;
 return k;
}
 
///////////метод, обеспечивающий  ввод исторического события
void  History::vvod()
{
N: cout<<"Vvesti day, month, year, event:\n";
cin>>day>>month>>year>>event;
int k=visokos(year);
if (day<1||day>tab_day[k][month-1]||month<1||month>12||year<0||year>2012)
{cout<<"oschibka vvoda:\n"; /*goto N*/ getch ();}
else {cout<<"Istor. event vvedeno\n"; getch ();}
}
 
////////////метод, обеспечивающий вывод исторического события
void History:: vivod () const
{cout<<setw(2)<<day<<'.'<<month<<'.'<<setw(2)<<year<<' '<<setw(2)<<event<<"\n"; getch (); }
 
 
 
 
// 1.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
# include <iostream>
# include <stdio.h>
# include <conio.h>
# include <stdlib.h>
# include <ctime> 
# include "History.h"
using namespace std;
 
 
int _tmain()
{system ("cls");
cout<< "Viberite function\n";
    cout<<" 1 = Vvoda Istor. event\n";
cout<<" 2 = Vivoda na screen spiska Istor. event\n";
cout<<" 3 = vichisl. interval v day, mejdu Istor. event\n";
cout<<" 4 = sortir. massiv Istor. event po polj EVENT\n";
cout<<" 0 = Vihod iz programmi\n";
int nom;
cin>>nom;
switch (nom)
{
case 0: exit(0);
case 1: {History h; h.vvod(); break;}
case 2: {History h; cout<<"\nVvesti kolichestvo date: ";
        int n; cin>>n;
        History* mas = new History [n];
        for (int i=0; i<n; i++)
        mas[i].vvod(); 
        for (int i=0; i<n; i++)
         mas[i].vivod();break;}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 22:31. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru