Составьте программу, которая, учитывая наименование года и день недели соответствующий 1 января, выводит на экран наименования месяцев в которых число 13 выпадет на пятницу (программа pascal abc) срочно надо, не понимаю как сос...

Составьте программу, которая, учитывая наименование года и день недели соответствующий 1 января, выводит на экран наименования месяцев в которых число 13 выпадет на пятницу (программа pascal abc) срочно надо, не понимаю как составить(
Гость
Ответ(ы) на вопрос:
Гость
//Можно и без дня недели пятницы //PascalABC.NET 3.2 сборка 1318 //PascalABC вариант Var   Year,YearCode:integer; begin readln(Year);   case(Year div 100 mod 4) of   0:YearCode:=6;   1:YearCode:=4;   2:YearCode:=2;   3:YearCode:=0;   end; YearCode:=(YearCode+Year mod 100+ Year mod 100 div 4) mod 7; if Year mod 4<>0 then   begin     if (13+1+YearCode) mod 7=6 then writeln('Январь');   end else     if (13+1+YearCode) mod 7=0 then writeln('Январь'); if Year mod 4<>0 then   begin     if (13+4+YearCode) mod 7=6 then writeln('Февраль');   end else     if (13+4+YearCode) mod 7=0 then writeln('Февраль'); if (13+1+YearCode) mod 7=6 then writeln('Октябрь'); if (13+2+YearCode) mod 7=6 then writeln('Май'); if (13+3+YearCode) mod 7=6 then writeln('Август'); if (13+4+YearCode) mod 7=6 then writeln('Март'); if (13+4+YearCode) mod 7=6 then writeln('Ноябрь'); if (13+5+YearCode) mod 7=6 then writeln('Июнь'); if (13+6+YearCode) mod 7=6 then writeln('Декабрь'); if (13+6+YearCode) mod 7=6 then writeln('Сентябрь'); if (13+0+YearCode) mod 7=6 then writeln('Апрель'); if (13+0+YearCode) mod 7=6 then writeln('Июль'); end. //.NET вариант uses   system;   const   Day=13;   n=12;   Var   Year,i:integer;   ars:array[1..n] of string:=('Январь','Февраль','Март','Апрель','Май','Июнь','Июль','Август','Сентябрь','Октябрь','Ноябрь','Декабрь');   ard:array[1..n] of DateTime; begin readln(Year); for i:=1 to n do   begin     ard[i]:=ard[i].AddDays(Day-1);     ard[i]:=ard[i].AddMonths(i-1);     ard[i]:=ard[i].AddYears(Year-1);     if ard[i].DayOfWeek.ToString='Friday' then writeln(ars[i]);   end; end. Пример ввода: 2016 Пример вывода: Май
Не нашли ответ?
Ответить на вопрос
Похожие вопросы