Напиши программу на языке pascal, выводящую на экран изображение шахматной доски, где черные клетки изображаются звездочками, а белые - пробелами. Нужно использовать команду repeat
Program z2; var day, month, year:integer; begin writeln('Введите число, месяц, год'); readln(day,month,year); if(year mod 4=0) and (year mod 100 <> 0) or (year mod 100=0) and (year mod 400 = 0) then //определение висок. года begin if(month=2) then begin if(day=29) then begin day:=1; month:=3; end else day:=day+1; end else if(month=1) or (month=3) or (month=5) or( month=7) or (month=8) or (month=10) then begin if(day=31) then begin month:=month+1; day:=1; end else day:=day+1; end else if(month=12)then begin if(day=31) then begin year:=year+1; month:=1; day:=1; end else day:=day+1; end else begin if(day=30) then begin day:=1; month:=month+1; end else day:=day+1; end; end else //проверка обычного года begin if(month=2) then begin if(day=28) then begin day:=1; month:=3; end else day:=day+1; end else if(month=1) or (month=3) or (month=5) or( month=7) or (month=8) or (month=10) then begin if(day=31) then begin month:=month+1; day:=1; end else day:=day+1; end else if(month=12)then begin if(day=31) then begin year:=year+1; month:=1; day:=1; end else day:=day+1; end else begin if(day=30) then begin day:=1; month:=month+1; end else day:=day+1; end; end; writeln('Следующий день: ',day, ' ',month, ' ',year); end.
Aleksandrovich-Yurevna1421
09.06.2021
Const dm:array[1..12] of integer=(31,28,31,30,31,30,31,31,30,31,30,31); var d,m,y,dFeb:integer; begin Write('Введите дату в формате день месяц год: '); Read(d,m,y); if (m=2) and (d>=28) then begin if ((y mod 4=0) and (y mod 100 <> 0)) or ((y mod 100=0) and (y mod 400 =0)) then dFeb:=29 else dFeb:=29; if d=dFeb then begin d:=1; Inc(m) end else Inc(d); if m=13 then begin m:=1; Inc(y) end end else begin Inc(d); if d>dm[m] then begin d:=1; Inc(m) end; if m=13 then begin m:=1; Inc(y) end end; Writeln('Следующая дата ',d,' ',m,' ',y) end.
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
Напиши программу на языке pascal, выводящую на экран изображение шахматной доски, где черные клетки изображаются звездочками, а белые - пробелами. Нужно использовать команду repeat
var day, month, year:integer;
begin
writeln('Введите число, месяц, год');
readln(day,month,year);
if(year mod 4=0) and (year mod 100 <> 0) or (year mod 100=0) and (year mod 400 = 0) then //определение висок. года
begin
if(month=2) then
begin
if(day=29) then
begin
day:=1;
month:=3;
end
else
day:=day+1;
end
else if(month=1) or (month=3) or (month=5) or( month=7) or (month=8) or (month=10) then
begin
if(day=31) then
begin
month:=month+1;
day:=1;
end
else
day:=day+1;
end
else if(month=12)then
begin
if(day=31) then
begin
year:=year+1;
month:=1;
day:=1;
end
else
day:=day+1;
end
else
begin
if(day=30) then
begin
day:=1;
month:=month+1;
end
else
day:=day+1;
end;
end
else //проверка обычного года
begin
if(month=2) then
begin
if(day=28) then
begin
day:=1;
month:=3;
end
else
day:=day+1;
end
else if(month=1) or (month=3) or (month=5) or( month=7) or (month=8) or (month=10) then
begin
if(day=31) then
begin
month:=month+1;
day:=1;
end
else
day:=day+1;
end
else if(month=12)then
begin
if(day=31) then
begin
year:=year+1;
month:=1;
day:=1;
end
else
day:=day+1;
end
else
begin
if(day=30) then
begin
day:=1;
month:=month+1;
end
else
day:=day+1;
end;
end;
writeln('Следующий день: ',day, ' ',month, ' ',year);
end.