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

Если в нем есть цифра a и b, то определить, какая из них расположена в числе правее - C++

Восстановить пароль Регистрация
 
Ёжик-программёр
17 / 17 / 0
Регистрация: 27.02.2010
Сообщений: 55
21.03.2011, 21:58     Если в нем есть цифра a и b, то определить, какая из них расположена в числе правее #1
??? (((
Дано натуральное число. Если в нем есть цифра a и b, то определить, какая из них расположена в числе правее. Если одна или обе эти цифры встречаются в числе несколько раз, то должны быть рассмотрны самые правые из одинаковых цифр.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.03.2011, 21:58     Если в нем есть цифра a и b, то определить, какая из них расположена в числе правее
Посмотрите здесь:

C++ Определить: а) Есть ли в нем цифра 3; б) Есть ли цифры 2 и 5
Определить, какая цифра в числе есть большей – первая или последняя C++
C++ Задано трицифровое число. Определить, какая цифра в нем...
Дано трехзначное число. Определить, какая цифра в нем есть больше – первая или последняя. C++
C++ Определить, какая цифра в числе расположена левее: Максимальная или минимальная
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Байт
 Аватар для Байт
14001 / 8832 / 1234
Регистрация: 24.12.2010
Сообщений: 16,008
21.03.2011, 23:37     Если в нем есть цифра a и b, то определить, какая из них расположена в числе правее #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
C
1
2
3
4
5
6
7
while(N>0) {
   c = N%10;
   if (c==a) { printf("%d", a); break;}
   if (c==b) { printf("%d", b); break;}
   N /= 10;
}
if (N==0) printf("Netu");
kazak
 Аватар для kazak
3029 / 2350 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
22.03.2011, 03:56     Если в нем есть цифра a и b, то определить, какая из них расположена в числе правее #3
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
cnt = 1;
a_pos = 0;
b_pos = 0;
while (number)
{
   digit = number % 10;
   if (digit == a)
      a_pos = cnt;
   if (digit == b)
      b_pos = cnt;
   number /= 10;
   cnt++;
}
if (a_pos == 0 || b_pos == 0)
   printf("Tsifr ne naideno\n");
else if (a_pos > b_pos)
   printf("a pravee b\n");
else
   printf("b pravee a\n");
Mayonez
 Аватар для Mayonez
379 / 271 / 20
Регистрация: 26.12.2009
Сообщений: 875
22.03.2011, 11:57     Если в нем есть цифра a и b, то определить, какая из них расположена в числе правее #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>
 
int a, b;
 
void r (int c)
{
     if (c == 0)
     {
        std::cout << "No same digits" << std::endl;
        return;      
     }
     if (c%10 == a)
     {
        std::cout << a << std::endl;
        return;
     }
     if (c%10 == b)
     {
        std::cout << b << std::endl;
        return;
     }
     r (c/10);
}
 
int main()
{
    std::locale::global(std::locale(""));
    int c;
    std::cin >> c;
    std::cin >> a >> b;
    r (c);
    return 0;    
}
Yandex
Объявления
22.03.2011, 11:57     Если в нем есть цифра a и b, то определить, какая из них расположена в числе правее
Ответ Создать тему
Опции темы

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