Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
marina5
0 / 0 / 0
Регистрация: 25.12.2014
Сообщений: 10
#1

Найти первую цифру числа - C++

04.01.2015, 10:41. Просмотров 1169. Ответов 4
Метки нет (Все метки)

Здравствуйте. Помогите написать алгоритм к заданию:

Дано натуральное N. Составить программу для поиска первой цифры этого числа.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.01.2015, 10:41     Найти первую цифру числа
Посмотрите здесь:

C++ найти первую цифру числа в массиве с++
определить первую цифру дробную части числа C++
C++ Дано натуральное число n, найти первую цифру числа n
Узнать первую цифру целого числа C++
Переставить первую и последнюю цифру числа местами C++
Дано натуральное число. Удвоить первую цифру числа C++
Определить и вывести первую и последнюю цифру числа C++
Дано натуральное число n, найти первую цифру числа n C++
Переставить первую цифру числа в разряд единиц C++
Найти первую цифру заданного натурального числа C++
Как выбрать первую цифру из числа? C++
C++ Увеличить первую цифру числа на 2

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
taras atavin
Ушёл с форума.
 Аватар для taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
04.01.2015, 10:44     Найти первую цифру числа #2
Нулевая цифра равна остатку от деления на основание, сдвиг влево эквивалентен делению на цело на основание, причём, результат сдвига - это частное. Сначала надо сдвинуть, чтоб цифра стала нулевой, потом вычислить остаток.
zss
Модератор
Эксперт С++
 Аватар для zss
6112 / 5715 / 1849
Регистрация: 18.12.2011
Сообщений: 14,600
Завершенные тесты: 1
04.01.2015, 10:48     Найти первую цифру числа #3
C++
1
2
3
4
5
6
7
8
9
10
int firstDigit(int n)
{
   int k;
   do
   {
      k=n;
      n/=10;
   }while(n);
   return k;
}
TrueTerm
163 / 111 / 35
Регистрация: 25.12.2014
Сообщений: 370
04.01.2015, 11:04     Найти первую цифру числа #4
marina5, первая цифра- значит самая левая? Тут возможны разные подходы.
1)Можно преобразовать число в строку и взять самый левый символ. Правда некоторые функции преобразования могут подсунуть пробел перед числом в качестве знака, это уже нужно смотреть в конкретной системе.
2)целая часть (не округление, а отбрасывание дробной части) от десятичного логорифма N, как раз даёт количество цифр, которые надо обрезать справа, чтобы осталась одна искомая циферка. Обрезать столько цифр можно в цикле или разделив N на 10 в этой степени. Тут проблемы могут быть с точностью вычисления логарифма (вдруг перескочит и лишнюю цифру обрежет). И логарифм нуля не определён. Если 0 считается натуральным числом, то этот случай надо предусмотреть отдельно.
3)но скорее всего ожидается просто цикл "пока число больше 9, разделить его нацело на 10".
Вот то, что останется от числа после этого цикла, и будет искомой цифрой.
taras atavin
Ушёл с форума.
 Аватар для taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
04.01.2015, 11:53     Найти первую цифру числа #5
Вот только цифры нумеруются по-англо-еврейски: справа на лево и с ноля.
Yandex
Объявления
04.01.2015, 11:53     Найти первую цифру числа
Ответ Создать тему
Опции темы

Текущее время: 05:57. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru