Решение №1
var x,y:integer;
begin
readln(x,y);
if x> y then begin
x:=x+y;
y:=x-y;
x:=x-y;
writeln(x,' ',y);
end.
Тестовое решение:
8 5
5 8
Решение №2
На PascalABC.Net можно сделать проще:
var x,y:integer;
begin
readln(x,y);
if x>y then begin swap(x,y); println(x,y); end;
end.
Ну... а что сложного? Создаёшь структуру, заполняешь её, и обрабатываешь условие на входном M:
#include <stdio.h>
#include <conio.h>
#include <locale.h>
int main(void) {
setlocale(LC_ALL, "russian");
struct months {
char name[16];
int days;
};
struct months m[12] = {
{"Январь", 31},
{"Февраль", 29},
{"Март", 31},
{"Апрель", 30},
{"Май", 31},
{"Июнь", 30},
{"Июль", 31},
{"Август", 31},
{"Сентябрь", 30},
{"Октябрь", 31},
{"Ноябрь", 30},
{"Декабрь", 31}
};
int M;
printf("Введите номер месяца: ");
scanf("%d", &M);
if (M > 0 && M < 13) {
M--;
if (m[M].days == 29 || m[M].days == 30) {
printf("В месяце \"%s\" %d дней.", m[M].name, m[M].days);
} else {
printf("В месяце \"%s\" %d день.", m[M].name, m[M].days);
}
} else {
printf("Неизвестный месяц.");
}
getch();
return 0;
}
Воспользуемся методом потетрадного перевода из двоичной системы в шестнадцатеричную. Запишем 3 группы по 4 двоичных разряда в каждой. Наименьшее число будет содержать 7 нулей в старших разрядах, а наибольшее - в младших. Каждая группа переводится как цифра в шестнадцатеричную систему.
0000 0001 1111(2) = 01F(16) = 31(10) - наименьшее число.
1111 1000 0000(2) = F80(16) = 3968(10) - наибольшее число.
1 - 0001
2 - 0010
3 - 0011
4 - 0100
5 - 0101
6 - 0110
7 - 0111
8 - 1000
9 - 1001
8 бит - значит в числе должно быть 8 нулей или единичек, если их не хватает, то можно добавить незначащие нули.
1) 5₁₀ = 00000101₂
2) 17₁₀ = 00010001₂ ( 16 =
, в 2й сс это 1 и 4 нуля по степени, 17 = 16 + 1)
3) 64₁₀ = 01000000₂ ( 64 =
, в 2й сс это 1 и 6 нулей)
4) 255₁₀ = 11111111₂
Wi-fi Роутер.
Но можно объединить компьютеры в такую сеть и через индивидуальные адаптеры wi-fi, если они установлены на каждом компьютере, один из которых подключен к сети Интернет посредством кабеля.