С Новым годом! Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/15: Рейтинг темы: голосов - 15, средняя оценка - 4.60
4 / 4 / 4
Регистрация: 25.03.2013
Сообщений: 140
1

Расчет количества прожитых дней между датами рождения и смерти

31.10.2014, 23:21. Показов 2807. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Народ подскажите где я ошибся.
Есть задача написать программу которая вычисляет количество прожитых дней человека по датам !

К примеру если мы вводим дату рождения 15.2.1911 и дату смерти 4.10.1987 должно получится 27991 дня.

Собственно сам код :

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
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace ConsoleApplication1
{
    class Person
    {
        public int bYear;
        public int bMont;
        public int bDeay;
 
        public int dYear;
        public int dMont;
        public int dDeay;
 
        int[,] date;
        public Person()
        {
             date = new int[DateTime.Today.Year, 12];
 
             for (int year = 0; year < DateTime.Today.Year; year++)
            {
                for (int mond = 0; mond < 12; mond++)
                {
                    if (mond == 0 || mond == 2 || mond == 4 || mond == 6 || mond == 7 || mond == 9 || mond == 11)
                    {
                        date[year, mond] = 31;
                    }
                    else if (mond == 3 || mond == 5 || mond == 8 || mond == 10)
                    {
                        date[year, mond] = 30;
                    }
                    else
                    {
                        if (year % 4 == 0 & year % 100 > 0 | year % 400 == 0)
                        {
                            date[year, mond] = 29;
                        }
                        else
                        {
                            date[year, mond] = 28;
                        }
                    }
                }
            }
 
 
        }
 
 
 
        public int DeayLife()
        {
            int sumDeay = 0;
 
            for (int bridyear = bYear, deadyear = dYear; bridyear <= deadyear; bridyear++)
            {
                for (int mond = bMont; mond < 12; mond++)
                {
                    sumDeay += date[bridyear,mond];
                }
            }
           
            sumDeay += dDeay;
            return sumDeay-bDeay;
 
        }
 
    }
     
    class Program
    {
        static void Main(string[] args)
        {
            
 
            Person human = new Person();
            human.bYear = 1911;
            human.bMont = 2;
            human.bDeay = 15;
            human.dYear = 1987;
            human.dMont = 10;
            human.dDeay = 4;
 
            Console.WriteLine(human.DeayLife());
 
 
        
        }
    }
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
31.10.2014, 23:21
Ответы с готовыми решениями:

Вычисление дня недели и количества дней между двумя датами
Ребят,мне нужно написать программу &quot;Вычисление дня недели и количества дней между двумя датам&quot; я...

Сумма дней между датами.
Есть следующий код: DateTime dt = new DateTime(); DateTime dy = new DateTime();...

Как подсчитать количество дней между датами
Как подсчитать количество дней между датами, которые вводятся в два maskedTextBox и отобразить в...

Вычислить количество месяцев и дней между датами
В общем-то не охота писать такой код самому. Как уже имеющими средствами (тем же DateTime)...

2
8943 / 4855 / 1886
Регистрация: 11.02.2013
Сообщений: 10,246
31.10.2014, 23:32 2
Ошибся ты в выборе метода подсчёта. Всё гораздо проще:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
class Person {
    public int bYear;
    public int bMont;
    public int bDeay;
 
    public int dYear;
    public int dMont;
    public int dDeay;
 
    public int DeayLife() {
        DateTime birthDate = new DateTime(bYear, bMont, bDeay);
        DateTime deathDate = new DateTime(dYear, dMont, dDeay);
        return (int)(deathDate - birthDate).TotalDays;
    }
}
1
4 / 4 / 4
Регистрация: 25.03.2013
Сообщений: 140
31.10.2014, 23:53  [ТС] 3
Спасибо большое )
Жаль что теперь массив не нужно использовать (((
0
31.10.2014, 23:53
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
31.10.2014, 23:53
Помогаю со студенческими работами здесь

Вычислите количество дней между датами из файла
На формах сделал с помощью datetimepicker и вывел разницу, но нужно сделать с файлами но не знаю...

Как определить количество дней между двумя датами, исключая выходные
Люди, подскажите как можно определить количество дней между двумя датами, исключая выходные? я...

Ввести название гостиницы, цену за проживание в сутки и количество прожитых дней
самостоятельно разработать интерфейс – использовать флажки, радиокнопки и списки выбора. Ввести...

Расчет количества рабочих дней между датами
Здравствуйте. Хочу посчитать количествот рабочих дней между датами. Сделал так: КолРабДней=0;...


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

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