8.12.2011 / 15:17 | |
Bobrosoft Пользователь Сейчас: Offline
Имя: Pablo Регистрация: 20.08.2011
| ScRoLiS (04.12.2011/16:22)По просьбе Ксакепа:Жомарт прочитал в гороскопе, что если 7-ое число месяца приходится на вторник, то этот день является счастливым. Его заинтересовал вопрос, сколько счастливых дней будет между задаответ есть. Только пока что без комментариев. Стоит выкладывать?
|
8.12.2011 / 15:28 | |
XakepPRO Модератор форума Сейчас: Offline
Регистрация: 20.06.2012
| Bobrosoft, конечно стоит.
|
8.12.2011 / 15:34 | |
Bobrosoft Пользователь Сейчас: Offline
Имя: Pablo Регистрация: 20.08.2011
| уже откомментировал using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
namespace Task_4
{
class Program
{
static void Main(string[] args)
{
string dateStart; //сюда занесем первую строку файла input.txt
string dateEnd; //сюда - вторую строку
int numOfLuckyDays=0; //число счастливых дней
using (StreamReader task = File.OpenText("input.txt")) //открываем файл
{
//считываем строки
dateStart=task.ReadLine();
dateEnd=task.ReadLine();
}
//переменные для членов даты
int dayStart, monthStart, yearStart; //переменные начальной даты
int dayEnd, monthEnd, yearEnd; //конечной
Console.WriteLine("Привет!");
//извлекаем члены даты в числовые переменные. Функция Substring() выдает подстроку (в нашем случае, в каждой строке три подстроки: день, месяц, год)
dayStart = Int32.Parse(dateStart.Substring(0,2));
monthStart = Int32.Parse(dateStart.Substring(3,2));
yearStart = Int32.Parse(dateStart.Substring(6, 4));
dayEnd = Int32.Parse(dateEnd.Substring(0,2));
monthEnd = Int32.Parse(dateEnd.Substring(3,2));
yearEnd = Int32.Parse(dateEnd.Substring(6, 4));
for (int dayOfWeek = 1;; dayStart++) //начинаем цикл. Вводим новую переменную - день недели (1 - понедельник, 2 - вторник и т.д.)
{
if ((dayStart==dayEnd) && (monthStart==monthEnd) && (yearStart==yearEnd)) break; //если мы достигли конечной даты, цикл завершается
if (dayStart == 7 && dayOfWeek == 2) numOfLuckyDays++; //если день - вторник 7-го числа, увеличиваем кол-во счастливых дней на единицу
if (monthStart == 2 && ((dayStart == 29 && (yearStart % 4 == 0 && (yearStart % 100 != 0 || yearStart % 400 == 0))) || (dayStart == 28 && (yearStart % 4 != 0 && (yearStart % 100 == 0 || yearStart % 400 != 0)))))
{
dayStart = 1;
monthStart++;
if (dayOfWeek < 7) dayOfWeek++;
else dayOfWeek = 1;
} //эта громоздкая конструкция определяет, не пора ли переносить месяц с февраля на март с учетом високосных годов
if (dayStart == 30 && ((monthStart % 2 == 0 && monthStart < 8) || (monthStart % 2 == 1 && monthStart > 7)))
{
dayStart = 1;
monthStart++;
if (dayOfWeek < 7) dayOfWeek++;
else dayOfWeek = 1;
} //если сейчас 30-е и 30-дневный месяц, переносим месяц
if (dayStart == 31)
{
dayStart = 1;
monthStart++;
if (monthStart == 13) { yearStart++; monthStart = 1; }
if (dayOfWeek < 7) dayOfWeek++;
else dayOfWeek = 1;
} //если сейчас 31-е, переносим месяц
if (dayOfWeek < 7) dayOfWeek++;
else dayOfWeek = 1;
//увеличиваем день недели
}
Console.WriteLine("Число счастливых дней равно {0}",numOfLuckyDays);
Console.ReadLine();
}
}
}
Изменено P@bloid (8.12 / 15:44) (всего 1 раз) |
8.12.2011 / 15:50 | |
XakepPRO Модератор форума Сейчас: Offline
Регистрация: 20.06.2012
| Bobrosoft, Собственно говоря, пока шел из школы тоже нашел решение, подобное этому. |
8.12.2011 / 15:58 | |
Bobrosoft Пользователь Сейчас: Offline
Имя: Pablo Регистрация: 20.08.2011
| проверял по календарю - все даты сходятся |
8.12.2011 / 16:02 | |
Alsawin Пользователь Сейчас: Offline
Откуда: Минск Регистрация: 05.09.2011
| это на чём написано? не надо писать извкекаем члены |
8.12.2011 / 16:03 | |
Bobrosoft Пользователь Сейчас: Offline
Имя: Pablo Регистрация: 20.08.2011
| Alsawin, это на С#
|
18.12.2011 / 14:20 | |
XakepPRO Модератор форума Сейчас: Offline
Регистрация: 20.06.2012
| Прилагаю задачку на новогоднюю тему
Прикрепленные файлы: DSC02859.jpg (494.65 кб.) Скачано 147 раз |
18.12.2011 / 15:57 | |
XakepPRO Модератор форума Сейчас: Offline
Регистрация: 20.06.2012
| Неужели она столь сложная? Криптография.
|
18.12.2011 / 16:03 | |
LPzhelud Пользователь Сейчас: Offline
Имя: Коля Откуда: Москва Регистрация: 02.06.2010
| XakepPRO, Всем пофиг. Я, например, программист, а не математик. Предложи интересную задачу, и мы решим
__________________
Эль Презеденте |