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

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

Войти
Регистрация
Восстановить пароль
 
PAMPA
6 / 6 / 2
Регистрация: 20.03.2014
Сообщений: 117
#1

Найти числа до 9999 у которых из 4 цифр совпадает 3 - C++

19.04.2014, 19:04. Просмотров 367. Ответов 6
Метки нет (Все метки)

найти числа в интервале n<=9999 если из 4 цифр совпадает 3.Например 4111 , 3393 ,4414
заранее спасибо !
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.04.2014, 19:04
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Найти числа до 9999 у которых из 4 цифр совпадает 3 (C++):

Дано натуральное число N. Найти и вывести все числа в интервале от 1 до N-1, у которых произведение цифр совпадает с произведением цифр данного числа - C++
Помогите, пожалуйста!!! А то у меня не получается( Написал программу, когда ввожу число 32 как в примере выводит только 16, а 6 и 23 не...

Найти числа из интервала от 1 до N-1, для которых произведение всех цифр совпадает с суммой - C++
Есть условие задачи: Дано натуральное двухзначные число N. Найти и вывести все числа из интервала от 1 до N-1, для которых произведение...

Найти такие числа запись которых совпадает с последними цифрами записи их квадрата - C++
Натолкните на мысль, пожалуйста!!! Программу пока не пишите, а дайте подсказки, или покажите код похожих программ. Очень прошу помочь ...

Ввести натуральное число n. Среди чисел 1,.,n найти все такие числа, запись которых совпадает с последними цифрами - C++
Ввести натуральное число n. Среди чисел 1,...,n найти все такие числа, запись которых совпадает с последними цифрами записи их квадрата...

Найти все четырёхзначные числа, у которых сумма крайних цифр равна сумме средних цифр, а само число делится на 6 и 27 - C++
найти все четырёхзначные числа , у которых сумма крайних цифр равна сумме средних цифр , а само число делится на 6 и 27 . В С++

Найти все двузначные числа, сумма цифр которых не меняется при умножении числа на 2,3,4,5,6,7,8,9 - C++
Найти все двузначные числа, сумма цифр которых не меняется при умножении числа на 2,3,4,5,6,7,8,9. Знаю что должно вывести 18, 45, 90,...

6
IrineK
Заблокирован
19.04.2014, 19:05 #2
Цитата Сообщение от PAMPA Посмотреть сообщение
найти числа в интервале
Цитата Сообщение от PAMPA Посмотреть сообщение
работа с классами
Причем здесь одно к другому?
0
PAMPA
6 / 6 / 2
Регистрация: 20.03.2014
Сообщений: 117
22.04.2014, 08:38  [ТС] #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
using namespace std;
int main()
{
    
int  a,b,c,d;
  int  n=9999;
    
    for(int i=1000;i<=n;i++){
    d = i%10;
    c=((i%100)-d)/10;
    b=((i%1000)-c)/100;
    a=i/1000;
     if(a==b&&a==c&&a==d)
          continue;
      if((a==b&&a==c)||(a==b&&a==d)||(a==c&&a==d)||(b==c&&b==d))
          
                cout << i << endl;
    }   
    
}
0
ZaMaZaN4iK
Мой лучший друг-отладчик!
164 / 164 / 9
Регистрация: 24.06.2012
Сообщений: 662
Записей в блоге: 5
Завершенные тесты: 1
22.04.2014, 13:41 #4
PAMPA, гореть Вам в аду за такой код.А если человеку понадобится на числах до 100000? Вы тоже всё руками допишите?Предлагаю другой вариант: бежим циклом от начала отрезка до его конца.У каждого числа выдираем все его цифры, пихаем в std::set, смотрим, чтобы размер set'a нам подходил(легко посчитать, какого размера должен быть set).Если такого размера - выводим это число, нет - идем дальше.И не забываем очищать set.Тут конечно можно различные эвристики ещё впихнуть - от какого числа начинаем бежать, прыгать не по каждому числу, а перепрыгивать.И так далее.Но для начала и это думаю сойдет
0
PAMPA
6 / 6 / 2
Регистрация: 20.03.2014
Сообщений: 117
01.05.2014, 15:43  [ТС] #5
ты лучше код напиши,и будь со словами поаккуратнее!!!
0
cooller
565 / 533 / 120
Регистрация: 25.12.2013
Сообщений: 1,456
01.05.2014, 16:21 #6
PAMPA, как то так
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
#include <algorithm>
#include <iostream>
#include<vector>
const size_t count_digits = 3;
bool bool_count(int number)
{
    std::vector <int> ivec;
    while (number>0)
    {
        ivec.push_back(number % 10);
        number /= 10;
    }
    for (size_t i = 0; i < ivec.size(); ++i)
    if (std::count(ivec.begin(), ivec.end(), ivec.at(i)) == count_digits)
        return true;
    return false;
}
 
int main()
{
    for (size_t i = 110; i<9999; ++i)
    {
        if (bool_count(i))
            std::cout << i << "\n";
    }
    return 0;
}
Добавлено через 2 минуты
PAMPA, ну ты не нервничай, а адекватно воспринимай критику, ведь код мало того что не "красивый", он еще и не рабочий
0
UME
2 / 2 / 1
Регистрация: 14.01.2014
Сообщений: 68
19.05.2014, 15:53 #7
Здрасьте, в общем, это я ему подкинул эту идею( имею ввиду ужасный код).
А чем плох код?
Тем что он написан только для определенного интервала или как?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.05.2014, 15:53
Привет! Вот еще темы с ответами:

Найти все двузначные числа, сумма цифр которых не меняется при умножении числа на 2, 3, 4, 5, 6, 7, 8, 9 - C++
Вроде код правильный наклепала. А вывода никакого нет. В чем ошибка? #include &lt;vcl.h&gt; #include &lt;iostream.h&gt; #include &lt;math.h&gt; ...

На отрезке [2, n] найти все натуральные числа, сумма цифр которых при умножении числа на а не изменится - C++
Помогите,вот задание. На отрезке найти все натуральные числа, сумма цифр которых при умножении числа на а не изменится. Код...

Найти все простые числа, не превосходящие заданного числа, сумма цифр которых, также является простым числом - C++
Срочно нужен код программы в C++ (желательно с комментариями). Я бы разобрался и сам, но на это уйдет время, которого у меня нет :( ...

Найти все простые числа от 1000 до 1999, в каждом из которых сумма первой и второй цифр в записи этого числа равна сумме третьей и четвертой. - C++
Прошу помочь решить задачки!:(очень нужно (Билет №14) Найти все простые числа от 1000 до 1999, в каждом из которых сумма первой и...


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

Или воспользуйтесь поиском по форуму:
7
Yandex
Объявления
19.05.2014, 15:53
Ответ Создать тему
Опции темы

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