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

содержет ли трёхзначное число цифру 4? - C++

Восстановить пароль Регистрация
 
Apmyp /7
3 / 3 / 0
Регистрация: 14.10.2009
Сообщений: 76
21.03.2010, 17:27     содержет ли трёхзначное число цифру 4? #1
не могу понять как можно записать программу, что бы когда я ввожу одно-трёхзначное число, она мне сообщает, содержет ли это число цифру 4.

Заранее спасибо.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.03.2010, 17:27     содержет ли трёхзначное число цифру 4?
Посмотрите здесь:

C++ Дано трёхзначное число.Найти число полученное при перестановке первой и второй цифр заданного числа.
Дано трёхзначное число. Определить,какая из его трёх цифр больше. C++
C++ Дано трёхзначное число.Определить, равен ли квадрат этого числа сумме его цифр.
Трёхзначное число C++
дано трёхзначное число, определить, есть ли среди его цифр одинаковые?? C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Nameless One
Эксперт С++
 Аватар для Nameless One
5755 / 3404 / 255
Регистрация: 08.02.2010
Сообщений: 7,393
21.03.2010, 17:34     содержет ли трёхзначное число цифру 4? #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
 
int main()
{
   int z;
   std::cin >> z;
   do
   {
      if(z%10==4)
      {
         std::cout << "Yes" << std::endl;
         return 0;
      }
      z/=10;
   }
   while(z);
   std::cout << "No" << std::endl;
   return 0;
}
Apmyp /7
3 / 3 / 0
Регистрация: 14.10.2009
Сообщений: 76
21.03.2010, 18:30  [ТС]     содержет ли трёхзначное число цифру 4? #3
Цитата Сообщение от Nameless One Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
 
int main()
{
   int z;
   std::cin >> z;
   do
   {
      if(z%10==4)
      {
         std::cout << "Yes" << std::endl;
         return 0;
      }
      z/=10;
   }
   while(z);
   std::cout << "No" << std::endl;
   return 0;
}
пробывал этот вариант, но программа не работает корректно, беру подбор чисел: 104, 141, 401 и в двух случаях выводит, что цифры 4 нет.
Nameless One
Эксперт С++
 Аватар для Nameless One
5755 / 3404 / 255
Регистрация: 08.02.2010
Сообщений: 7,393
21.03.2010, 18:37     содержет ли трёхзначное число цифру 4? #4
А у меня все работает:
Число 104
Число 141
Число 401
Himka
2 / 2 / 1
Регистрация: 28.02.2010
Сообщений: 5
21.03.2010, 23:49     содержет ли трёхзначное число цифру 4? #5
Попробуй так:
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
#include <iostream.h>
int main(int argc, char* argv[])
{int N;
 int Rez;
 int K;
 do
 {cout<<"Chislo (100..999): ";
  cin>>N;
 }while((N<100)||(N>999));
 Rez=0;
 while (N>0) 
 {K=N%10;
  if (K==4)
  {Rez=1;
   break;
  }
  N=N/10;
 }
 if (Rez==1)
     cout<<"Chislo sodergit 4"<<endl;
 else
     cout<<"Chislo ne sodergit 4"<<endl;
 return 0;
}
CAMCOH
1 / 1 / 0
Регистрация: 27.01.2010
Сообщений: 19
22.03.2010, 01:16     содержет ли трёхзначное число цифру 4? #6
Прочти как стринг и поищи что-нить типа:

C++
1
if(имя_переменной=~ m/(..4|.4.|4..)\d/)   cout<<"Chislo sodergit 4"<<endl;
как-то так, сам плохо знаком с регулярными выражениями, и еще не дошел до практики, посмотри, почитай, думаю разберешся, там можно все упростить в 10-ки раз. Попробуй книжечку Джефри Фридела, "регулярные выражения", по крайней мере я ее ща читаю. вроде не плохо все написано, только дурак не разберется.
Nameless One
Эксперт С++
 Аватар для Nameless One
5755 / 3404 / 255
Регистрация: 08.02.2010
Сообщений: 7,393
22.03.2010, 03:00     содержет ли трёхзначное число цифру 4? #7
CAMCOH, только в стандартной библиотеке C++, если я не ошибаюсь, отсутствуют средства для работы с регулярными выражениями.
CAMCOH
1 / 1 / 0
Регистрация: 27.01.2010
Сообщений: 19
22.03.2010, 09:12     содержет ли трёхзначное число цифру 4? #8
В стандартной, их может и не быть, хотя по идее должны, а в .NET они точно реализованы во всех языках и во всех версиях, будь то VB, C++, J#, C#. Причем они там немного расширенны в сравнении с Perlom.

Только их надо отдельно прописывать, там Using.System.Regular что-то там, не помню сейчас. Может вечером посмотрю на счет плюсов и как их подключать, а сейчас пока бегу.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.03.2010, 10:09     содержет ли трёхзначное число цифру 4?
Еще ссылки по теме:

дано трёхзначное число.найти число, полученное при прочтении его цифр справа налево C++
Некоторое число оканчивается на 2. Если же эту его последнюю цифру переставить на первое место, то число удвоится. Найти это число C++
C++ Трёхзначное число

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

Или воспользуйтесь поиском по форуму:
CyBOSSeR
Эксперт C++
 Аватар для CyBOSSeR
2294 / 1664 / 86
Регистрация: 06.03.2009
Сообщений: 3,675
22.03.2010, 10:09     содержет ли трёхзначное число цифру 4? #9
Apmyp /7,
C++
1
2
3
4
5
6
7
8
9
10
11
bool IsContains4(int n)
{
  while (n) {
    if (n % 10 == 4)
      return true;
 
   n /= 10;
  }
 
  return false;
}
Yandex
Объявления
22.03.2010, 10:09     содержет ли трёхзначное число цифру 4?
Ответ Создать тему
Опции темы

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