Составьте блок схему .для целого числа к (от 1 до 99), введенного с клавиатуры напечатать фразу «мне к лет», при
этом в нужных случаях слово «лет» заменяется на слово «год» или «года». (например: при k=76 «мне 70 лет», при k=15 «мне 15 лет», при к=23 «мне 23 года» и т. п4)
//PacalABC.NET 3.4.2
//Используется формула аналогичная формуле Бине для чисел
//Фибоначчи
const
index = power(33, 0.5);
a1 = power((19 + 3 * index), 1 / 3);
a2 = power((19 - 3 * index), 1 / 3);
b = power((586 + 102 * index), 1 / 3);
var
n, i: smallint;
x: uint64;
function tribonacthi(n: smallint): biginteger;
begin
if (n = 1) or (n = 2) then result := 0
else
result := RoundBigInteger(3 * b * ((power((1 / 3 * (a1 + a2 + 1)), n - 1)) / (power(b, 2) - 2 * b + 4)));
end;
begin
try
n := readinteger('Введите n:');
x := readinteger('Введите x:');
except
on system.formatexception do
begin
writeln('Неверный формат ввода');
exit;
end;
end;
writeln('1)', tribonacthi(n), ' ');
write('2)');
i := 1;
while (tribonacthi(i) < x) do
begin
write(tribonacthi(i), ' ');
i += 1;
end;
end.
Единственная система счисления которая имеет на борту только "1" и "0" - это двоичная система счисления ...
Перевод выполняется таким образом : каждая цифра двоичного числа умножается на 2 , которая возводиться в степень по индексу числа , тоесть имеем число 101 - для перевода необходимо : 1*2^2 + 0*2^1 + 1*2^0 = 4+0+1(т.к любое число в нулевой степени равно 1 , даже 0^0) , = 5 - это ответ уже в 10-тичной сс.
Ещё пример, возьмём число 1010. Переведём его в десятичную сс = 1*2^3+0*2^2+1*2^1+0*2^0 = 10 ...
Граматика : 2^3 - переводиться как 2 в 3 степени.Решаем твою задачу, имея на экране теорию ..10100 детей - закодировано в 2-чной сс , выполним перевод в 10-чную сс = 1*2^4+(пропускаем нули, их умножать бесполезно)+1*2^2 ... (остальное нули) = 16+4 = 20 детей в классе
Считаем колличество мальчиков в классе - 1100 - это 1*2^3+1*2^2 = 12 - вот столько мальчиков
Вычитаем из общего колличества детей колличество мальчиков , получаем = 20-12 = 8;
ответ: 8.