Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.01.2011, 21:54   #1
Renge
Пользователь
 
Аватар для Renge
 
Регистрация: 07.12.2010
Сообщений: 35
По умолчанию Количество цифр в числе.

С экрана вводится натуральное число. Не подскажите, как при помощи паскаля вычислить, сколько в нем цифр (для последующих с ними махинаций)?
Renge вне форума Ответить с цитированием
Старый 13.01.2011, 22:00   #2
fbus
Форумчанин
 
Аватар для fbus
 
Регистрация: 23.10.2008
Сообщений: 460
По умолчанию

Код:
var i:byte;
.....
readln(a);
i:=length(a);
...
fbus вне форума Ответить с цитированием
Старый 13.01.2011, 22:07   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

куча вариантов.

выбирайте, какой нравится/понятне/удобней:
Код:
var
  s : string;
  N: Longint;
begin
  ReadLn(N);

  Str(N, s);
  WriteLn('Количество цифр = ',Length(s));
  Readln;
end.
Код:
var
  N,Len : Longint;
begin
  ReadLn(N);

  Len := 0;
  while N>0 do begin
    Inc(Len);
    N := N div 10;
  end;
  WriteLn('Количество цифр = ',Len);
  Readln;
end.

Код:
var 
  N,Len : Longint;
begin
  ReadLn(N);

  if N>0 then
    Len := trunc(ln(N)/ln(10))+1
 else
    Len := 1;
  WriteLn('Количество цифр = ',Len);
  Readln;
end.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 13.01.2011, 22:08   #4
Renge
Пользователь
 
Аватар для Renge
 
Регистрация: 07.12.2010
Сообщений: 35
По умолчанию

Я, воощем-то, еще length, len и другие непонятные значки не знаю, первый год паскаль прохожу. А если совсем элементарно никак нельзя?*

Последний раз редактировалось Renge; 13.01.2011 в 22:13.
Renge вне форума Ответить с цитированием
Старый 14.01.2011, 02:34   #5
dixonich
Пользователь
 
Регистрация: 11.10.2009
Сообщений: 79
По умолчанию

Цитата:
Сообщение от Renge Посмотреть сообщение
Я, воощем-то, еще length, len и другие непонятные значки не знаю, первый год паскаль прохожу. А если совсем элементарно никак нельзя?*
это самый элементарный вариант.
ещё вариант :
Код:
cin>>n; // вводим число
while(floor(n)!=0) { // пока целая часть не равна нулю
    n/=10; // делим его на десять
    z++; // z - счётчик. поделил один раз и остаток стал ноль - z увеличился один раз, значит у нас одна цифра в числе.
}
cout<<z; // выводим z;
это СИ, но идея, думаю, понятна.

Последний раз редактировалось dixonich; 14.01.2011 в 23:57.
dixonich вне форума Ответить с цитированием
Старый 14.01.2011, 13:09   #6
Косюра
Пользователь
 
Аватар для Косюра
 
Регистрация: 14.01.2011
Сообщений: 74
По умолчанию

а строки то вы проходили, али как?
можно просто сделать это в двух вариантах. Первый - вводится строка, второй - число integer.

С integer длиннее и больше заморочек. со строкой вы видели) по поводу integer - вполне объясняется в предыдущем комментарии:

Цитата:
Код:


cin>>n; // вводим число
while(floor(n)!=0) {
n/=10; // делим его на десять
z++; // z - счётчик. поделил один раз и остаток стал ноль - z увеличился один раз, значит у нас одна цифра в числе.
}
cout<<z; // выводим z;
но если не понятно как переписать это на паскаль - пишите, поможем.
Девушка - переменная бинарного типа с рандомным значением
Косюра вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сортировка цифр в числе. _FENDER_ Помощь студентам 4 28.12.2010 01:16
Количество цифр в числе Zelenyi Общие вопросы C/C++ 8 18.06.2010 03:24
как в четырехзначном числе поставить через заданное количество цифр пробел KNatalia Microsoft Office Excel 4 18.08.2009 20:28
Найти количество цифр в числе immor Помощь студентам 4 14.02.2009 22:30