Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
0 / 0 / 0
Регистрация: 04.01.2019
Сообщений: 22
1

Не получается придумать решение для задачи: вывод даты следующего воскресенья

02.02.2019, 20:15. Показов 1538. Ответов 2

Author24 — интернет-сервис помощи студентам
Здравствуйте. Задача состоит в том чтобы программа(C#) выводила дату следующего воскресенья при определении дня недели даты которая была введена пользователем. У меня получилось только сделать так, чтобы программа выводила дату след.воскресенья с учётом того что номер месяца и года не изменятся, только день. Есть одно условие, которое облегчает задачу: каждое первое января - понедельник
Пример: Введена дата 01.01.2001
Дата следующего воскресенья 07.01.2001


Мой код:
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
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApp2
{
    class Program
    {
        static void Main()
        {
            int god, mes, day, dayx, godecode ;
          
            Console.WriteLine("Введите год");
            god = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("Введите месяц");
            mes = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("Введите день");
            day = Convert.ToInt32(Console.ReadLine());
            godecode = (6 + (god % 100) + (god % 100) / 4) % 7;
            dayx = (day + mes + godecode) % 7;
            switch (dayx)
            {
                case 0:
                    Console.WriteLine("Введённая дата приходится на субботу");
                    var d3 = new DateTime(god, mes, day + 1, 00, 00, 0);
                    Console.WriteLine(d3);
                    break;
                case 1:
                    Console.WriteLine("Введённая дата приходится на воскресенье");
                    var d4 = new DateTime(god, mes, day+7, 00, 00, 0);
                    Console.WriteLine(d4);
                    break;
                case 2:
                    Console.WriteLine("Введённая дата приходится на понедельник");
                    var d5 = new DateTime(god, mes, day+6, 00, 00, 0);
                    Console.WriteLine(d5);
                    break; 
                case 3:
                    Console.WriteLine("Введённая дата приходится на вторник");
                    var d6 = new DateTime(god, mes, day+5, 00, 00, 0);
                    Console.WriteLine(d6);
                    break; 
                case 4:
                    Console.WriteLine("Введённая дата приходится на среду");
                    var d7 = new DateTime(god, mes, day+4, 00, 00, 0);
                    Console.WriteLine(d7);
                    break; 
                case 5:
                    Console.WriteLine("Введённая дата приходится на четверг");
                    var d8 = new DateTime(god, mes, day+3, 00, 00, 0);
                    Console.WriteLine(d8);
                    break; 
                case 6:
                    Console.WriteLine("Введённая дата приходится на пятницу");
                    var d9 = new DateTime(god, mes, day+2, 00, 00, 0);
                    Console.WriteLine(d9);
                    break; 
            }
        }
    }
}
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.02.2019, 20:15
Ответы с готовыми решениями:

Надо дописать!Ассемблер вывод системной даты,времени и даты ближайшего воскресенья
вот исходный код .Model Small .486p .Stack 100h .Data wNumOff DW 10 Dup(0) ;Смещение...

Вывод системной даты, времени и даты ближайшего воскресенья
вот исходный код выводит дату время .Model Small .486p .Stack 100h .Data wNumOff DW 10...

Вывод следующего после введенной даты дня
Задание такое: запросить по отдельности номер дня, месяца и года. Вывести следующую дату - Д+1. С...

Определите дату ближайшего воскресенья от заданной даты
2. Определите дату ближайшего воскресенья от заданной даты.

2
Эксперт .NETАвтор FAQ
10410 / 5140 / 1825
Регистрация: 11.01.2015
Сообщений: 6,226
Записей в блоге: 34
02.02.2019, 21:01 2
Лучший ответ Сообщение было отмечено Neyghyw как решение

Решение

Цитата Сообщение от Neyghyw Посмотреть сообщение
вывод даты следующего воскресенья
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
        static void Main(string[] args)
        {
            Console.Write("Введите год: ");
            var year = int.Parse(Console.ReadLine());
            Console.Write("Введите месяц: ");
            var month = int.Parse(Console.ReadLine());
            Console.Write("Введите день: ");
            var day = int.Parse(Console.ReadLine());
            //
            var date = new DateTime(year, month, day);
            //
            Console.WriteLine("Введённая дата приходится на " + date.ToString("dddd"));
            //
            date = date.AddDays(7 - (int)date.DayOfWeek);
            Console.WriteLine("Следующее воскресенье: " + date);
 
            Console.ReadLine();
        }
1
0 / 0 / 0
Регистрация: 04.01.2019
Сообщений: 22
03.02.2019, 12:00  [ТС] 3
Спасибо вам за ответ. Можно объяснить как это работает и что значит каждая строка ?
0
03.02.2019, 12:00
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.02.2019, 12:00
Помогаю со студенческими работами здесь

Программа для определения даты следующего дня
помогите написать программу в для определения даты следующего дня

Не могу придумать код для задачи по JavaScript
Доброго времени суток, дорогие друзья. Помогите, пожалуйста, решить хотя бы 2 задачи из списка...

Придумать для задачи 2 алгоритма и сравнить их порядок сложности
Здравствуйте! В универе начали изучать такой прекрасный предмет как "Структуры и алгоритмы данных"...

Придумать для задачи 2 алгоритма и сравнить их порядок сложности
Приветствую всех программистов! Начался, в общем, в универе такой предмет как "алгоритмы и...


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

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