Форум программистов, компьютерный форум, киберфорум
Наши страницы
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
Apzor
0 / 0 / 0
Регистрация: 29.12.2012
Сообщений: 15
1

Определить количество полных недель и понедельников между заданными датами

30.12.2012, 20:06. Просмотров 1386. Ответов 14
Метки нет (Все метки)

Заданы две даты. Определить количество полных недель и понедельников между этими датами.

Добавлено через 2 часа 27 минут
Ау кто нибудь ответит мне или нет?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.12.2012, 20:06
Ответы с готовыми решениями:

Определить количество дней четвертого числа между двумя датами
Перед мной стоит задача определить сколько к примеру 4-тых чисел между датой N1...

Вычислить количество дней между датами
Нужно вычислить количество дней между датами. Есть стандартные функции?

Как вычислить разницу между датами
Господа подскажите в программе нужно узнать разницу времени между началом...

Получение интервала между двумя датами в DGV
Уважаемые форумчане. не могу решить одну проблему. Проблема в том что сравнить...

Как вычислить разницу в годах между двумя датами?
Задачка школьного уровня но напрочь забыл(. Осложняется еще и тем, что...

14
Splinter_Cell
239 / 129 / 15
Регистрация: 26.12.2012
Сообщений: 267
30.12.2012, 21:04 2
Попробуйте:

vb.net
1
2
3
4
5
6
        Dim start As New Date(2008, 8, 23)   'год, месяц, день
        Dim finish As New Date(2008, 12, 25)   'год, месяц, день
 
        TextBox1.Text = DateDiff(DateInterval.Day, start.Date, finish.Date).ToString
 
        TextBox2.Text = DateDiff(DateInterval.Weekday, start.Date, finish.Date).ToString
у DateInterval. ещё много других свойств. Попробуйте для решения вашей задачи. . .
0
Artem333
22 / 22 / 1
Регистрация: 12.10.2012
Сообщений: 288
30.12.2012, 23:52 3
А вот так ?
vb.net
1
TextBox2.Text = (TextBox1.Text : "7")
0
Splinter_Cell
239 / 129 / 15
Регистрация: 26.12.2012
Сообщений: 267
31.12.2012, 00:11 4
Цитата Сообщение от Artem333 Посмотреть сообщение
TextBox2.Text = (TextBox1.Text : "7"
так нЭ совсЭм прокатит

Добавлено через 3 минуты
Хотяяя.... Если идеально не делится на 7 то к количеству недель прбавляем ещё один понедельник, ииии ВОТ ОНО!
0
Artem333
22 / 22 / 1
Регистрация: 12.10.2012
Сообщений: 288
31.12.2012, 00:12 5
0
Splinter_Cell
239 / 129 / 15
Регистрация: 26.12.2012
Сообщений: 267
31.12.2012, 00:17 6
Во как:

vb.net
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
        Dim start As New Date(2008, 8, 23)   'год, месяц, день
        Dim finish As New Date(2008, 12, 25)   'год, месяц, день
 
        TextBox1.Text = DateDiff(DateInterval.Day, start.Date, finish.Date).ToString
 
        TextBox2.Text = DateDiff(DateInterval.Weekday, start.Date, finish.Date).ToString
 
        Dim weeks As Decimal
 
        weeks = CDec(TextBox2.Text) / 7
 
        TextBox3.Text = CStr(weeks)
 
        If TextBox3.Text.Contains(",") Then
            TextBox2.Text = CStr(CInt(TextBox2.Text) + 1) & " Понедельников"
        Else
            TextBox2.Text = TextBox2.Text & " Понедельников"
        End If
1
Artem333
22 / 22 / 1
Регистрация: 12.10.2012
Сообщений: 288
31.12.2012, 00:21 7
Стоп, но в одной неделе 1 понедельник а вы к 7 + 1 то есть 8 но тут первое число является понедельником и их 2 в 8 днях
0
Splinter_Cell
239 / 129 / 15
Регистрация: 26.12.2012
Сообщений: 267
31.12.2012, 00:26 8
нееет, я посчитанные недели разделил на 7 и если результат с запятой, то я прибавляю к количеству недель ещё одну, т.е. ещё один понедельник. Всё верно. .
0
Artem333
22 / 22 / 1
Регистрация: 12.10.2012
Сообщений: 288
31.12.2012, 00:30 9
Я что то мозг сломал ты прав
0
Splinter_Cell
239 / 129 / 15
Регистрация: 26.12.2012
Сообщений: 267
31.12.2012, 00:33 10
Только вот если дней меньше чем одна неделя (поправочка):

vb.net
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
        Dim start As New Date(2008, 8, 23)   'год, месяц, день
        Dim finish As New Date(2008, 12, 25)   'год, месяц, день
 
        TextBox1.Text = DateDiff(DateInterval.Day, start.Date, finish.Date).ToString
 
        TextBox2.Text = DateDiff(DateInterval.Weekday, start.Date, finish.Date).ToString
 
        Dim weeks As Decimal
 
        weeks = CDec(TextBox2.Text) / 7
 
        TextBox3.Text = CStr(weeks)
 
        If TextBox3.Text.Contains(",") And CInt(TextBox3.Text) > 1 Then     'и если недель больше чем 1
            TextBox2.Text = CStr(CInt(TextBox2.Text) + 1) & " Понедельников"
        Else
            TextBox2.Text = TextBox2.Text & " Понедельников"
        End If
Добавлено через 43 секунды
Ну всё. . Мы её добили
2
Artem333
22 / 22 / 1
Регистрация: 12.10.2012
Сообщений: 288
31.12.2012, 00:34 11
ага
0
Splinter_Cell
239 / 129 / 15
Регистрация: 26.12.2012
Сообщений: 267
31.12.2012, 00:37 12
У нас тут мозг кипит, а где вообще заказчик?! Оно ему ещё нужно вообще
1
Artem333
22 / 22 / 1
Регистрация: 12.10.2012
Сообщений: 288
31.12.2012, 00:38 13
Ага, ща получается зря работали
0
Памирыч
Почетный модератор
20884 / 8768 / 1080
Регистрация: 11.04.2010
Сообщений: 11,013
31.12.2012, 00:40 14
Оффтоп прекращаем
0
АББА
133 / 60 / 24
Регистрация: 08.11.2012
Сообщений: 250
31.12.2012, 08:58 15
Спасибо ребята!
0
31.12.2012, 08:58
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.12.2012, 08:58

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

Вычислить сколько полных недель прошло между указанными датами
Заданы натуральные числа а1, b1, a2, b2, которые обозначают числа и номера...

Вычислить количество дней, полных месяцев, и полных лет, прошедших между датами
Даны натуральные числа a1, b1 , c1 (число, месяц, год) ...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru