Задание 1: написать программу, которая по заданному значению аргумента x, вычислит значение функции y. Задание 2: составить таблицы значений функции y = f(x) на участке [0; 7] с шагом для x=1. Решение реализовать через все виды циклов.
"...напечатает сначала 2, потом - 6" -- это значит a=2 и b=6?
про пятеричные записи ничего не понял... :) И ИМХО к чему такие сложности? И для чего нам комп и программа? Я подправил исходную прогу чтобы она выдавала все числа подходящие по условию
var x,a,b: longint;
begin
for var i := 999 DownTo 100 do begin
a := 0;
b := 1;
x := i;
while x>0 do begin
if x mod 2 > 0 then a := a+1 else b := b+(x mod 5);
x := x div 5;
end;
if (a = 2) and (b = 6) then writeln('x = ', i, ' a = ', a, ' b = ',b);
end;
end.
прога проводит расчет для всх трехзначных чисел от 999 до 100
итого мы видим что максимальное подходящее число это 960
при необходимости прогу можно переделать чтобы она находила только максимальное число.
В шестеричной системе алфавит состоит из цифр 0,1,...5. Четырехразрядное число по условиям задания (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²
"...напечатает сначала 2, потом - 6" -- это значит a=2 и b=6?
про пятеричные записи ничего не понял... :) И ИМХО к чему такие сложности? И для чего нам комп и программа? Я подправил исходную прогу чтобы она выдавала все числа подходящие по условию
var x,a,b: longint;
begin
for var i := 999 DownTo 100 do begin
a := 0;
b := 1;
x := i;
while x>0 do begin
if x mod 2 > 0 then a := a+1 else b := b+(x mod 5);
x := x div 5;
end;
if (a = 2) and (b = 6) then writeln('x = ', i, ' a = ', a, ' b = ',b);
end;
end.
прога проводит расчет для всх трехзначных чисел от 999 до 100
итого мы видим что максимальное подходящее число это 960
при необходимости прогу можно переделать чтобы она находила только максимальное число.
Четырехразрядное число по условиям задания (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