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

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

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

дано натуральное число. Определить номер цифры 8 в нем - C++

17.12.2012, 19:57. Просмотров 925. Ответов 8
Метки нет (Все метки)

дано натуральное число. Определить номер цифры 8 в нем.считая конца числа. Если такой цифры нет, ответом должно быт число 0,если таких цифр в числе несколько должен быть определен номер самой левой из них.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.12.2012, 19:57     дано натуральное число. Определить номер цифры 8 в нем
Посмотрите здесь:

Дано натуральное число n. Отбросить в нем все цифры, стоящие правее самой правой единицы либо оставить число без изменений, если единицы в нем нет C++
C++ Дано натуральное число. Определить, сколько раз в нем встречается первая цифра
Дано натуральное число. Определить сколько раз в нем встречается первая цифра C++
C++ Дано натуральное число.Определить сколько раз в нем встречается последняя цифра
дано натуральное число. Определить: количество цифр 3 в нем (while) C++
C++ Дано натуральное число n (n <= 9999). Учитывая все четыре цифры числа, определить, правильно, что оно содержит: все разные цифры
C++ Дано натуральное число. Определить номер цифры «8»
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
David Sylva
1285 / 947 / 51
Регистрация: 17.05.2012
Сообщений: 2,687
17.12.2012, 20:05     дано натуральное число. Определить номер цифры 8 в нем #2
Такой вариант
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream> 
 
int main() 
{ 
    int number, count = 1; 
 
    std::cout << "Inter number " << std::endl; 
    std::cin >> number; 
 
    while(number) 
    { 
        if(number % 10 == 8) 
            break;  
        count++;
        number /= 10; 
    } 
    if(number == 0) 
        std::cout << 0 << " "; 
    else 
        std::cout << count << std::endl;
}
Mиxaил
531 / 436 / 37
Регистрация: 10.12.2009
Сообщений: 1,857
17.12.2012, 20:06     дано натуральное число. Определить номер цифры 8 в нем #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
 
int func( int n )
{
   int pos = 0, index = 0;
   while ( n )
   {
      index++;
      if ( n % 10 == 8 ) pos = index;
      n /= 10;
   }
   return pos;
}
 
int main()
{
   std::cout << func( 128346584 ) << std::endl;
   return 0;
}
v.a.l.i.d
412 / 377 / 10
Регистрация: 21.09.2012
Сообщений: 913
17.12.2012, 20:06     дано натуральное число. Определить номер цифры 8 в нем #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#include <iostream>
using namespace std;
 
int main()
{
    setlocale(LC_ALL, "Russian");
    
    int n;
 
    cout << "Введите число: ";
    cin >> n;
 
    int i=0;
    bool b=false;
    while (n!=0)
    {
        i++;
        if (n%10==8) 
        {
            b = true;
            break;
        }
        n /= 10;
    }
 
    if (b)
        cout << "Восьмерка по номеру " << i << endl;
    else
        cout << "Восьмерки нет в этом числе" << endl;
    
    system("pause");
    return 0;               
}
David Sylva
17.12.2012, 20:08
  #5

Не по теме:

tohir_91 Зачем дублируешь темы?

Elfenlide
23 / 23 / 1
Регистрация: 15.04.2012
Сообщений: 183
17.12.2012, 20:18     дано натуральное число. Определить номер цифры 8 в нем #6
можешь представить число в виде массива, так будет проще всего.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
int mas[10];
int left; 
int counter;
int pr;
cin >> mas;
for ( int i = 10; i <=10; i--)
{
   if (mas[i] == 8) { left = 8; pr = i; counter++;}
}
 
if(counter < 1) cout << counter << endl;
else if (counter == 1) cout << left << endl;
if (counter > 1) cout << left << " " << pr << endl;
}
pr это будет индекс самой левой восмёрки, для доказательства того что ты вывел самую левую, если их много.
Stanis
52 / 41 / 8
Регистрация: 16.12.2012
Сообщений: 144
17.12.2012, 20:36     дано натуральное число. Определить номер цифры 8 в нем #7
Цитата Сообщение от David Sylva Посмотреть сообщение
Такой вариант
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream> 
 
int main() 
{ 
    int number, count = 1; 
 
    std::cout << "Inter number " << std::endl; 
    std::cin >> number; 
 
    while(number) 
    { 
        if(number % 10 == 8) 
            break;  
        count++;
        number /= 10; 
    } 
    if(number == 0) 
        std::cout << 0 << " "; 
    else 
        std::cout << count << std::endl;
}
Так не получится , если несколько восьмёрок то он выведет крайнюю справа
David Sylva
1285 / 947 / 51
Регистрация: 17.05.2012
Сообщений: 2,687
17.12.2012, 20:38     дано натуральное число. Определить номер цифры 8 в нем #8
Stanis Спасибо абсолютно верное замечание.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.12.2012, 18:20     дано натуральное число. Определить номер цифры 8 в нем
Еще ссылки по теме:

Дано натуральное число. Определить являются ли цифры числа упорядоченными по убыванию C++
Дано натуральное число. Определить, сколько раз в нем встречается максимальная цифра C++
C++ Дано натуральное число. Определить есть ли в нем цифра 3? C++
C++ Дано натуральное число Определить количество сотен в нем.

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

Или воспользуйтесь поиском по форуму:
Stanis
52 / 41 / 8
Регистрация: 16.12.2012
Сообщений: 144
18.12.2012, 18:20     дано натуральное число. Определить номер цифры 8 в нем #9
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
using namespace std;
 
int main()
   {
       int num;
       int i=0;
       int eight=0;
       cout<<"Enter number please:"<<endl;
       cin>>num;
 
       do
         {
             i++;
             if(num%10==8)
                {eight=i;}
             num=(num/10);
 
             }while(num!=0);
 
         cout<<"Number eight is "<<eight<<" in position from the right"<<endl;
         system("pause");
   }
Yandex
Объявления
18.12.2012, 18:20     дано натуральное число. Определить номер цифры 8 в нем
Ответ Создать тему
Опции темы

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