Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.86/14: Рейтинг темы: голосов - 14, средняя оценка - 4.86
Adio
0 / 0 / 0
Регистрация: 04.03.2011
Сообщений: 17
1

Верно ли, что в числе есть цифра, встречающаяся 2 и более раз?

04.03.2011, 00:38. Просмотров 2527. Ответов 23
Метки нет (Все метки)

Ввести 4-х значное число. Верно ли, что в этом числе есть цифра, встречающаяся 2 и более раз.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.03.2011, 00:38
Ответы с готовыми решениями:

Верно ли что данная цифра встречается в числе n раз?
Дано натуральное число. Верно ли что заданная цифра встречается в числе n раз?

Вводится массив. Верно ли, что в нем каждое значение встречается не более 2-х раз.
Помогите пожалуйста. Дана задача, надо решение.... Вводится массив. Верно...

Найти произведение четных цифр этого числа. Верно ли, что число содержит данную цифру А более двух раз
Видел похожу здесь на форуме но она на pascale как писать в c++ я не понял.

Сколько раз в данном числе встречается цифра 5 ?
т.е допустим дано 3х значное число 546. Значит там цифра "5" будет встречаться...

Сколько раз повторяется цифра в числе, введенном пользователем
Пользователь вводит число. Потом вводит цифру этого числа и должно вывести...

23
Gepar
1181 / 537 / 77
Регистрация: 01.07.2009
Сообщений: 3,517
04.03.2011, 01:00 2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
# include <iostream>
# include <iomanip>
using namespace std;
 
int main()
{
    char a[4];
    cout<<"Enter number:";
    cin>>a;
    for (int i=0;i<4;i++)
     if (a[i]==a[i+1]||a[i]==a[i+2]||a[i]==a[i+3]||a[i]==a[i+4])
      cout<<"In number repeated:"<<a[i]<<"\n";
     return 0;
}
P.S Проверка наверное смешная, но рабочая же, но это только если 2 числа будут одинаковы, а не больше

Добавлено через 11 минут
Вот правильный код:
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>
# include <iomanip>
using namespace std;
 
int main()
{
    char a[4];
    int x;
    cout<<"Enter number:";
    cin>>a;
    for (int i=0;i<4;i++)
     if (a[i]==a[i+1]||a[i]==a[i+2]||a[i]==a[i+3]||a[i]==a[i+4])
     {
         if (a[i]==-1)
          continue;
         cout<<"In number repeated:"<<a[i]<<"\n";
         x=a[i];
         for (int j=0;j<4;j++)
         if (a[j]==x)
          a[j]=-1;
     }
    return 0;
}
Но он из разряда "ненормальное программирование" )
0
Adio
0 / 0 / 0
Регистрация: 04.03.2011
Сообщений: 17
04.03.2011, 01:09  [ТС] 3
надо попроще, без всяких массивов, циклов и переводов чисел в строку..
0
MILAN
04.03.2011, 01:16
  #4

Не по теме:

Цитата Сообщение от Adio Посмотреть сообщение
надо попроще, без всяких массивов, циклов и переводов чисел в строку..
Попроще только hello word.

0
zulkis
04.03.2011, 01:17
  #5

Не по теме:

MILAN, Бугагашеньки :)

0
Adio
0 / 0 / 0
Регистрация: 04.03.2011
Сообщений: 17
04.03.2011, 01:19  [ТС] 6
я тут накатал, но где-то есть ошибки
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include<stdio.h>
#include<iostream.h>
#include<conio.h>
void main()
{
clrscr();
int num,a,b,c,d;
printf("\n введите число");
scanf("%d",num);
a=num/1000;
b=num/100%10;
c=num/10%10;
d=num/1%10;
if (a==b || a==c || a==d || b==c || b==d || c==d) do
printf("\n есть число")
else
printf("\n нет числа");
getch();
}
0
MILAN
888 / 782 / 186
Регистрация: 21.02.2009
Сообщений: 1,722
04.03.2011, 01:21 7
Цитата Сообщение от Adio Посмотреть сообщение
if (a==b || a==c || a==d || b==c || b==d || c==d) do
do - ето к чему?
0
Adio
0 / 0 / 0
Регистрация: 04.03.2011
Сообщений: 17
04.03.2011, 01:25  [ТС] 8
а, ну да, do не надо писать)

Добавлено через 1 минуту
одна ошибка- statement missing
0
MILAN
888 / 782 / 186
Регистрация: 21.02.2009
Сообщений: 1,722
04.03.2011, 01:28 9
Adio, может так

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<stdio.h>
#include <iostream.h>
#include<conio.h>
int main()
{
int num,a,b,c,d;
printf("\n enter number");
scanf("%d",&num);
a=num/1000;
b=num/100%10;
c=num/10%10;
d=num/1%10;
if ((a==b || a==c) || (b==c || b==c) || (b==d || c==d))
{
printf("\n yes");
}
else
{
printf("\n no");
}
getch();
return 0;
}
0
Adio
0 / 0 / 0
Регистрация: 04.03.2011
Сообщений: 17
04.03.2011, 01:30  [ТС] 10
работает), но все время пишет YES
0
MILAN
888 / 782 / 186
Регистрация: 21.02.2009
Сообщений: 1,722
04.03.2011, 01:31 11
Adio, какая у вас ошыбка конкретно?
0
Adio
0 / 0 / 0
Регистрация: 04.03.2011
Сообщений: 17
04.03.2011, 01:43  [ТС] 12
ошибок уже нет, только считает не правильно, все время пишет YES
0
MILAN
888 / 782 / 186
Регистрация: 21.02.2009
Сообщений: 1,722
04.03.2011, 01:45 13
Adio, а вы введите 4 разные цыфри.
0
Adio
0 / 0 / 0
Регистрация: 04.03.2011
Сообщений: 17
04.03.2011, 01:47  [ТС] 14
вводил уже
0
MILAN
888 / 782 / 186
Регистрация: 21.02.2009
Сообщений: 1,722
04.03.2011, 01:48 15
Adio, а что на ето скажете?
http://codepad.org/6JNbKINf
1
Adio
0 / 0 / 0
Регистрация: 04.03.2011
Сообщений: 17
04.03.2011, 02:02  [ТС] 16
если число задано, то все работает

Добавлено через 17 секунд
спасибо
0
Digit@ll
Brainsbreaker
888 / 366 / 51
Регистрация: 01.02.2011
Сообщений: 1,586
04.03.2011, 08:55 17
Ничего не работает:

int num=1234; no
int num=1231; тоже no
0
MILAN
888 / 782 / 186
Регистрация: 21.02.2009
Сообщений: 1,722
04.03.2011, 09:26 18
Digit@ll,
C++
1
if ((a==b || a==c) || (b==c || a==d) || (b==d || c==d))
0
Gepar
1181 / 537 / 77
Регистрация: 01.07.2009
Сообщений: 3,517
04.03.2011, 09:36 19
Цитата Сообщение от MILAN Посмотреть сообщение
do - ето к чему?
Do это после паскаля остаётся, поначалу сложно с ним бороться.
0
Dexter
286 / 146 / 34
Регистрация: 13.10.2009
Сообщений: 164
04.03.2011, 10:37 20

Не по теме:

Цитата Сообщение от MILAN Посмотреть сообщение
Adio, может так

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<stdio.h>
#include <iostream.h>
#include<conio.h>
int main()
{
int num,a,b,c,d;
printf("\n enter number");
scanf("%d",&num);
a=num/1000;
b=num/100%10;
c=num/10%10;
d=num/1%10;
if ((a==b || a==c) || (b==c || b==c) || (b==d || c==d))
{
printf("\n yes");
}
else
{
printf("\n no");
}
getch();
return 0;
}
Одно b==c надо бы сменить на a==d...

Уже не в тему) вторую страницу пропустил)




Adio, ваш код переделал, вы там точку с запятой забыли и считывали число не верно
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include<stdio.h>
#include<iostream>
#include<conio.h>
void main()
{
    int num,a,b,c,d;
    printf("\n введите число");
    scanf("%d",&num);
    a=num/1000;
    b=num/100%10;
    c=num/10%10;
    d=num/1%10;
    if (a==b || a==c || a==d || b==c || b==d || c==d)
    printf("\nyes");
    else
    printf("\nno");
    getch();
}
1
04.03.2011, 10:37
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.03.2011, 10:37

Определить сколько раз в числе встречается заданная цифра
Кто поможет. С++ Дано натуральное число. Определить:сколько раз в нем...

Сколько раз в данном натуральном числе встречается цифра 3?
Дано натуральное число = 31537833243. Сколько раз в нем встречается число 3?...

Определить сколько раз встречается максимальная цифра в числе
Дано натуральное число. Определить, сколько раз в нем встречается максимальная...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

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