Другие языки программирования и технологии

Дано число типа longint определить количество цифр в этом числе. Очень срочно!

Игорь Хан
Игорь Хан
257
Опять строки, строки, строки.. . Когда же вы научитесь программировать, а не просто кодить?
Jurii, а число ноль, значит, состоит из нуля цифр?
program N65487301;
var x:longint;
n:byte;
begin
write('Введите число: ');
readln(x);
n := 0;
repeat
inc(n); {или n := n + 1;}
x := x div 10
until x = 0;
writeln('Цифр в числе: ',n);
readln
end.

Или вариант с циклом while:
program N65487301;
var x:longint;
n:byte;
begin
write('Введите число: ');
readln(x);
n := 1;
while abs(x) > 9 do
begin
inc(n); {или n := n + 1;}
x := x div 10
end;
writeln('Цифр в числе: ',n);
readln
end.
АП
Алексей Плисов
51 590
Лучший ответ
Это же Паскаль!
K := 0; while N <> 0 do begin Inc(K); N := N div 10; end; WriteLn(K);
S:=inttostr(i);
t:=length(s);


Садись, два! Оно может быть и отрицательным, а минус не считается.
Пётр Тимошенко
Пётр Тимошенко
49 555
конвертируй в строку процедурой Str(), получи кол-во цифр ф-цией Length(), скорректируй рез-т с учетом возможного знака "минус" в первом символе строки.

> Очень срочно

"Срочно" бывает только при ловле блох и поносе)
Стучи в агент.
S:=inttostr(i);
t:=length(s);

to Антон Харченко - Я описал общий принцип, думаю проверить на отрицательность автор может и сам догадаться. Зачем же сразу 2)
Хотя если не может, то
S:=inttostr(i);
if i<0 then t:=length(s)-1 else t:=length(s);

Похожие вопросы