Последовательность дней недели периодична с периодом 7, поэтому номер дня недели можно найти, взяв остаток от деления: (номер дня недели первого числа + сколько Такое решение будет давать верный ответ для всех дней недели кроме воскресенья: для воскресений будет выведен ноль (а не 7). Решить это можно, перенумеровав все номера дней недели с нуля, а не с единицы.
m - 1 – номер дня недели первого числа месяца (считая с 0)
n - 1 – пройдёт от первого числа
(m + n - 2) mod 7 – номер нужного дня недели (считая с 0)
(m + n - 2) mod 7 + 1 – ответ.
Программа (PascalABC.NET):
begin
var n := ReadInteger;
var m := ReadInteger;
print((m + n - 2) mod 7 + 1)
end.
Пример ввода:
7
7
Пример вывода:
6
(Действительно, 1 апреля 2018 года – воскресенье, а сегодня, 7 апреля – суббота)
Ерцкин_Овечкина391
31.03.2023
Const n=20; var a:array[1..n]of integer; i,b,k,c,f,g,h:integer; begin for i:=1 to n do a[i]:=Random(70)-20; for i:=1 to n do write(a[i],' '); writeln; for i:=1 to n do begin if (a[i] mod 5 = 0) and (a[i] mod 10<>0) or (a[i]=50) then begin b:=i; for b:=i to (n-1) do a[i]:=a[i+1]; end; end; for i:=1 to n do write(a[i],' '); write('введите к '); read(k); for i:=1 to n do begin if a[i] mod i = 0 then begin c:=i; for i:=n downto c+1 do begin a[i]:=a[i-1]; a[c+1]:=k; end;end;end; for i:=1 to n do write(a[i],' '); writeln; f:=0; g:=0; for i:=n downto 1 do begin if (a[i]>0) then f:=i; end; if a[f]=0 then write('нет положительных '); for i:=n downto 1 do begin if (a[i]<0) then g:=i; end; if (a[g]=0) then write('нет отрицательных '); if (a[f]<>0) and (a[g]<>0) then begin h:=a[f]; a[f]:=a[g]; a[g]:=h; end; for i:=1 to n do write(a[i],' '); writeln; end.
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
Дан сценарий скрипта на Скрейтч.опишите условие которое выполняет данный скрипт
Объяснение:
Последовательность дней недели периодична с периодом 7, поэтому номер дня недели можно найти, взяв остаток от деления: (номер дня недели первого числа + сколько Такое решение будет давать верный ответ для всех дней недели кроме воскресенья: для воскресений будет выведен ноль (а не 7). Решить это можно, перенумеровав все номера дней недели с нуля, а не с единицы.
m - 1 – номер дня недели первого числа месяца (считая с 0)
n - 1 – пройдёт от первого числа
(m + n - 2) mod 7 – номер нужного дня недели (считая с 0)
(m + n - 2) mod 7 + 1 – ответ.
Программа (PascalABC.NET):
begin
var n := ReadInteger;
var m := ReadInteger;
print((m + n - 2) mod 7 + 1)
end.
Пример ввода:
7
7
Пример вывода:
6
(Действительно, 1 апреля 2018 года – воскресенье, а сегодня, 7 апреля – суббота)