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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 27.09.2009, 10:59   #1
Дырдин
Пользователь
 
Аватар для Дырдин
 
Регистрация: 26.09.2009
Сообщений: 81
По умолчанию Как в С узнать количество символов в цифрах

Народ, подскажите. Никто ответить не может. Как подсчитать кол-во знаков до запятой и после неё? Я всю голову сломал уже.

З.Ы.: Через строковый параметр я знаю способ. Может кто проще подскажет
Дырдин вне форума Ответить с цитированием
Старый 27.09.2009, 11:11   #2
pu4koff
Старожил
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,065
По умолчанию

До запятой: преобразовать вещественное число в целое и делить его на 10, пока не кончится, а после запятой число цифр не определить никак не получится (это конечно если используется тип float/double, а не какой-нибудь свой тип, реализующий числа с фиксированной точкой )
pu4koff вне форума Ответить с цитированием
Старый 27.09.2009, 11:33   #3
Дырдин
Пользователь
 
Аватар для Дырдин
 
Регистрация: 26.09.2009
Сообщений: 81
По умолчанию

Это и есть метод через строковый я другой способ хочу узнать
Дырдин вне форума Ответить с цитированием
Старый 27.09.2009, 11:52   #4
pu4koff
Старожил
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,065
По умолчанию

Цитата:
Сообщение от Дырдин Посмотреть сообщение
Это и есть метод через строковый я другой способ хочу узнать
Мне почему-то кажется, что другого метода нет. Для решения задачи нужно подсчитать число десятичных разрядов. Компьютеры умеют только двоичное смещение, потому его заменяем делением на основание системы счисления, т.е. на 10. Что тут еще можно придумать я не знаю. И каким боком это строковый метод тоже непонятно. Это если бы число преобразовали в строку и определили её длину, тогда да - строковый метод, а так очень даже математический
pu4koff вне форума Ответить с цитированием
Старый 28.09.2009, 07:17   #5
Дырдин
Пользователь
 
Аватар для Дырдин
 
Регистрация: 26.09.2009
Сообщений: 81
По умолчанию

А как в таком случае посчитать то, что после запятой?
Дырдин вне форума Ответить с цитированием
Старый 28.09.2009, 07:34   #6
Consol
Пользователь
 
Регистрация: 19.08.2009
Сообщений: 89
По умолчанию

после запятой можно и так сделать
Код:
float j=128,384738;
int i=1;
while(i>0)
{
  i=(j*10)%10;
}
но только если после запятой нет нуля

Последний раз редактировалось Consol; 28.09.2009 в 07:37.
Consol вне форума Ответить с цитированием
Старый 28.09.2009, 07:42   #7
Consol
Пользователь
 
Регистрация: 19.08.2009
Сообщений: 89
По умолчанию

Код:
#include <iostream>
using namespace std;
int main()
{
  float j=123.45;
  int i=(j*10);
  i=i%10;
  cout<<i;
  system("pause");
   return 0;
}
Consol вне форума Ответить с цитированием
Старый 28.09.2009, 08:31   #8
Дырдин
Пользователь
 
Аватар для Дырдин
 
Регистрация: 26.09.2009
Сообщений: 81
По умолчанию

А есть спецификатор , чтобы точность была до бесконечного кол-ва чисел?
Дырдин вне форума Ответить с цитированием
Старый 28.09.2009, 08:34   #9
Дырдин
Пользователь
 
Аватар для Дырдин
 
Регистрация: 26.09.2009
Сообщений: 81
По умолчанию

Цитата:
Сообщение от Consol Посмотреть сообщение
Код:
  cout<<i;
  system("pause");
Что эта строчка значит?

Последний раз редактировалось Дырдин; 28.09.2009 в 08:38.
Дырдин вне форума Ответить с цитированием
Старый 28.09.2009, 08:45   #10
Дырдин
Пользователь
 
Аватар для Дырдин
 
Регистрация: 26.09.2009
Сообщений: 81
По умолчанию

Так....... С этим я сам разобрался. Кто-нибудь ответит на предыдущий вопрос?

Цитата:
Сообщение от Дырдин Посмотреть сообщение
А есть спецификатор , чтобы точность была до бесконечного кол-ва цифр?

Последний раз редактировалось Дырдин; 28.09.2009 в 08:57.
Дырдин вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как узнать количество рисунков в документе? Busine2009 Microsoft Office Word 7 15.07.2009 18:26
Как узнать количество таблиц в базе udpflood БД в Delphi 2 27.03.2009 00:06
Как узнать количество дисплеев и их разрешение crc83 Мультимедиа в Delphi 1 25.02.2009 01:11
Как узнать количество скачиваний файла с сайта? Dux PHP 34 02.02.2009 00:28
количество цифр и количество символов до первой гласной буквы 111111 Общие вопросы C/C++ 2 22.12.2008 12:15