<span>Дисководы гибких магнитных дисков хранят данные примерно так же, как и жесткие диски - путем изменения магнитной полярности металлических частичек на их поверхности. Здесь сходство заканчивается. Первое отличие состоит в том, что дискеты можно вынимать из дисководов, то есть теоретически они предлагают неограниченное хранилище данных любому желающему. Но ограниченная емкость дискет (1, 44 МВ в отличие тысяч мегабайтов жестких дисков) уменьшает их полезность. (это дискета)</span>
В неделе семь дней, поэтому решение выполняется на основе нахождения остатка целочисленного деления от номера дня на 7. Такой остаток находится в пределах от 0 до 6, а для нашей нумерации нужны значения от 1 до 7, поэтому полученный остаток будем увеличивать на единицу. Если 1 января вторник, то есть день недели с номером 2, то первым понедельником будет 7 января, вторым 14 января и т.д. 1 января (k=1) при делении на 7 даст в остатке 1 и при сдвиге остатка на 1 (см. выше), получим 2 (вторник). 7 января даст остаток 0 и после сдвига получим 1 (понедельник), что и требовалось.
<u>1. Современное короткое, эффективное, но требующее определенных знаний решение</u>
<u>PascalABC.NET 3.3.5, сборка 1659 от 09.04.2018</u>
<u>Внимание! Если программа не работает, обновите версию!</u>
begin
var d:='Понедельник Вторник Среда Четверг Пятница Суббота Воскресенье'.ToWords;
Writeln(d[ReadInteger('Введите номер дня') mod 7])
end.
<u>Примеры</u>
Введите номер дня 215
Суббота
Введите номер дня 14
Понедельник
<u>2. Более близкое к приведенному выше алгоритму решение</u>
begin
var n:=ReadInteger('Введите номер дня');
n:=n mod 7+1;
case n of
0:Writeln('Воскресенье');
1:Writeln('Понедельник');
2:Writeln('Вторник');
3:Writeln('Среда');
4:Writeln('Четверг');
5:Writeln('Пятница');
6:Writeln('Суббота')
end
end.
<u>3. Типовое школьное решение</u>
var
n:integer;
begin
Write('Введите номер дня');
Read(n);
n:=n mod 7+1;
case n of
0:Writeln('Воскресенье');
1:Writeln('Понедельник');
2:Writeln('Вторник');
3:Writeln('Среда');
4:Writeln('Четверг');
5:Writeln('Пятница');
6:Writeln('Суббота')
end
end.
Без блок-схемы.
var i,sum,n: Integer;
begin
sum:=0;
for i:=0 to 4 do
begin
writeln('Введите ',i+1,' число');
readln(n);
sum:=sum+n;
end;
writeln('Ответ: ',sum/5);
end.
Ответ:
000
Объяснение:
У нас будут кодовые слова для А: 011, 000, 101, но выберем мы 000, потому что он имеет наименьшее числовое значение.
Вывод информацию на монитор)