Составте алгоритм для определения количества цифр в записи числа произвольного натурального числа. составить блок
5-9 класс
|
схему
Рекурсивное решение:
function GrowTo(number,n:integer):Integer;
begin
Result:=Round(exp(n*ln(number)));
end;
function CountOfNumber(numb,exp:integer):integer;
begin
if (((numb div GrowTo(10,exp)) mod 10)=0) and (((numb div GrowTo(10,exp+1)) mod 10)=0) thenbegin Result:=0;
end
else Result:=1+CountOfNumber(numb,exp+1);
end;
Вызывать функцию вот так:
Короткое решение:) Можно было бы, конечно, и без числа, но лучше будет, если интерпретатор сам распорядится ошибочным вводом =)
var a: integer;
b: string;
begin
readln(a);
b := inttostr(a);
writeln(length(b));
end.
Другие вопросы из категории
2. вычти 1
Первая из них увеличивает число на экране в 2 раза, вторая уменьшает его на 1.
Составьте алгоритм получения из числа 9 числа 29, содержащий не более 5 команд. В ответе запишите только номера команд. (Например, 12212 – это алгоритм
умножь на 2
вычти 1
вычти 1
умножь на 2
вычти 1
который преобразует число 5 в число 15.). Если таких алгоритмов более одного, запишите любой из них.
илм двоих детей как организовать переправу если и взрослые и дети умеют грести
(пожалуйста очень срочно надо)даю 72 бала
и подсчитывает количество отрицательных элементов.
язык Pascal abc
Читайте также
оооочень буду благодарна ! хочу понять!ПОМОГИТЕ МНЕ
оооочень буду благодарна ! хочу понять!
составьте алгоритм для определенного количества цифр в записи натурального числа