Шпионы используют шифр длиной 7 символов. шифр шпионы составляют из десятичных цифр, к которым они добавляют 25 различных букв. шпионы малограмотные, поэтому используют только строчные буквы. цифры и буквы могут находиться в различном порядке относительно друг друга. шифр записывается минимально возможным и одинаковым целым количеством байтов. символы шифра кодируются одинаковым и минимальным числом битов. кодирование посимвольное. для записи 50 шифров, какой необходим объем памяти (в байтах)?
Четырехразрядное число по условиям задания (1) и (2) имеет вид aabb,
где a=1,2,...5, b=0,1,...5.
В развернутой записи число имеет вид
a×6³+a×6²+b×6+b×1 = 6²×a(6+1)+b(6+1) = 7(36a+b)
При этом по условию (3) можно записать, что k² = 7(36a+b)
Чтобы число 7(36a+b) было полным квадратом, 36a+b должно быть кратно 7, а остаток от деления (36a+b) на 7 также должен быть полным квадратом.
Получаем, что 36a+b = 7m²
Минимальное значение 36a+b равно 36×1+0 = 36, следовательно m>2 (при m=2 получим 7×4=28, что меньше 36).
При m=3 получаем 36a+b = 63 и при a∈[1;5], b∉[0;5] решений нет.
При m=4 получаем 36a+b = 112 и находим a=3, b=4 - есть решение!
При m=5 получаем 36a+b = 175 и при a∈[1;5], b∉[0;5] решений нет.
При m=6 получаем 36a+b = 175 и получаем, что a=7, а это недопустимо. Дальше смысла проверять нет.
Итак, a=3, b=4, число 3344₆ = 7×(36×3+4) = 784₁₀ = 28²
ответ: 3344
ответ:
. в нужно вывести все составные числа из промежутка [2; n]. код программы:
program lab3;
var i,n,j,s,l: integer;
m: real;
begin
readln (n);
for i: =2 to n do
begin
s: =trunc (sqrt (i));
for l: =2 to s do
begin
m: = i mod l;
if m=0 then
write (' ',i);
end;
end;
end.
но проблема - как только s становится больше 2, составные числа начинают несколько раз повторятся, т.к., например 12 делится и на 2 и на 3. вопрос: как мне сделать выход из цикла после первого успешного деления?
var
i, n, j, s, l: integer;
m: real;
begin
readln(n);
for i : = 2 to n do
begin
s : = trunc(sqrt(i));
for l : = 2 to s do
begin
m : = i mod l;
if m = 0 then
begin
write(' ', i);
break;