Паскаль. 2.Дано целое число N (> 0). Если оно является степенью числа 3, то вывести True, если не является — вывести False. (Для того чтобы решить эту задачу, требуется знать, что такое div и mod.)
Тут есть несколько вариантов, как это можно записать:
Если номера месяцев не превысят 12, то есть имеются ввиду только месяцы одного года, то вот так:
Var N:integer; Begin WriteLn('Введите номер месяца'); ReadLn(N); if (N = 12)or(N = 1)or(N = 2) then WriteLn('Зима') //если N = 12, 1 или 2, то выводим 'Зима', иначе идём по следующей ветке if, проверяем следующее условие else if (N = 3)or(N = 4)or(N = 5) then WriteLn('Весна') // тут точно также N = 3, 4 или 5, если нет - то проверяем следующее условие else if (N = 6)or(N = 7)or(N = 8) then WriteLn('Лето') else if (N = 9)or(N = 10)or(N = 11) then WriteLn('Осень') End.
Если же номер месяца может превысить 12, то перед проверкой нужно найти остаток от деления этого числа на количество месяцев, то есть на 12. При этом остаток от деления 12 на 12 = 0.
Var N:integer; Begin WriteLn('Введите номер месяца'); ReadLn(N); N:= N mod 12; if (N = 0)or(N = 1)or(N = 2) then WriteLn('Зима') else if (N = 3)or(N = 4)or(N = 5) then WriteLn('Весна') else if (N = 6)or(N = 7)or(N = 8) then WriteLn('Лето') else if (N = 9)or(N = 10)or(N = 11) then WriteLn('Осень') End.
Эти же самые условия можно записать иначе: if (N>=0)and(N<=2) then или: if (N>=0)and(N<3) then
IP 156.128.0.227 Mask 255.255.255.248 накладываем маску на адрес получим, что в адресе первые 3 байта не изменятся; переведем 4-й байт адреса и маски в двоичную систему:
накладываем значение маски на 4-й байт адреса получаем: 11100ХХХ, где Х-любое значение 0 или 1 - это изменяемая часть, а неизменяемой останется последовательность до Х. Подставив вместо Х нули получим самое маленькое значение (начало диапазона), а подставив вместо Х единицы - получим самое большое число (конец диапазона). Переводим в 10-ую систему полученные числа:
Наш диапазон: 156.128.0.224 - 156.128.0.231 В данном диапазоне может быть 6 адресов для использования в подсети компьютерами и еще 2 (концы интервала) резервируются для служ.целей
Если номера месяцев не превысят 12, то есть имеются ввиду только месяцы одного года, то вот так:
Var
N:integer;
Begin
WriteLn('Введите номер месяца');
ReadLn(N);
if (N = 12)or(N = 1)or(N = 2) then WriteLn('Зима') //если N = 12, 1 или 2, то выводим 'Зима', иначе идём по следующей ветке if, проверяем следующее условие
else if (N = 3)or(N = 4)or(N = 5) then WriteLn('Весна') // тут точно также N = 3, 4 или 5, если нет - то проверяем следующее условие
else if (N = 6)or(N = 7)or(N = 8) then WriteLn('Лето')
else if (N = 9)or(N = 10)or(N = 11) then WriteLn('Осень')
End.
Если же номер месяца может превысить 12, то перед проверкой нужно найти остаток от деления этого числа на количество месяцев, то есть на 12. При этом остаток от деления 12 на 12 = 0.
Var
N:integer;
Begin
WriteLn('Введите номер месяца');
ReadLn(N);
N:= N mod 12;
if (N = 0)or(N = 1)or(N = 2) then WriteLn('Зима')
else if (N = 3)or(N = 4)or(N = 5) then WriteLn('Весна')
else if (N = 6)or(N = 7)or(N = 8) then WriteLn('Лето')
else if (N = 9)or(N = 10)or(N = 11) then WriteLn('Осень')
End.
Эти же самые условия можно записать иначе:
if (N>=0)and(N<=2) then
или:
if (N>=0)and(N<3) then
Mask 255.255.255.248
накладываем маску на адрес получим, что в адресе первые 3 байта не изменятся; переведем 4-й байт адреса и маски в двоичную систему:
накладываем значение маски на 4-й байт адреса получаем:
11100ХХХ, где Х-любое значение 0 или 1 - это изменяемая часть, а неизменяемой останется последовательность до Х. Подставив вместо Х нули получим самое маленькое значение (начало диапазона), а подставив вместо Х единицы - получим самое большое число (конец диапазона). Переводим в 10-ую систему полученные числа:
Наш диапазон:
156.128.0.224 - 156.128.0.231
В данном диапазоне может быть 6 адресов для использования в подсети компьютерами и еще 2 (концы интервала) резервируются для служ.целей