Помогите с С...
Модераторы: Hawk, Romeo, Absurd, DeeJayC, WinMain
Программа с while , которая считает количество чисел в числе
- Romeo
- Сообщения: 3126
- Зарегистрирован: 02 мар 2004, 17:25
- Откуда: Крым, Севастополь
- Контактная информация:
Наверное ты имел ввиду "количество цифр в числе"?
Если нужно сделать именно с while, то можно вот так:
Но вообще-то есть более просто решение, не требующее использования цикла. Достаточно вспомнить школьный курс математики и сообразить, что целая часть десятичного логарифм, увеличенная на 1, как раз даст нам нужный ответ. Таким образом цикл можно заменить на следующую строку без потери функциональности:
P.S. Тема должна иметь осмысленное название и иметь прямое отношение к тому, что в ней обсуждается. Если это условие не выполнено, то тема может быть удалена на основании соглашения, которое ты подписал при регистрации. Короче, следующий раз больно замодерирую!
Если нужно сделать именно с while, то можно вот так:
Код: Выделить всё
int nValue;
std::cout << "Enter integer number: ";
std::cin >> nValue;
if (nValue < 0)
{
nValue = -nValue;
}
int nCount = 0;
while (nValue > 0)
do
{
++nCount;
nValue = nValue / 10;
}
std::cout << "Your number consits of " << nCount << " digits" << std::endl;
Код: Выделить всё
nCount = log10(nValue) + 1;
P.S. Тема должна иметь осмысленное название и иметь прямое отношение к тому, что в ней обсуждается. Если это условие не выполнено, то тема может быть удалена на основании соглашения, которое ты подписал при регистрации. Короче, следующий раз больно замодерирую!
Entites should not be multiplied beyond necessity @ William Occam
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.