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

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

Войти
Регистрация
Восстановить пароль
 
Harmonster
9 / 9 / 3
Регистрация: 20.05.2012
Сообщений: 101
#1

Цикл вывода пятизначных цифр - C++

31.01.2014, 10:20. Просмотров 384. Ответов 10
Метки нет (Все метки)

Вывести на печать все пятизначные числа,в которых имеются цифры 3 и 8

Но цикл работает неправильно. Помогите, пожалуйста!

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream> 
 
using namespace std;
 
int main()
{
    setlocale(LC_ALL, "Russian");
    for (int i = 10000; i <= 99999; i++)
    {
        if (if ((((i / 10000) == 3) || ((i / 1000) == 3) || ((i / 100) == 3) || ((i / 10) == 3)) || (((i / 10000) == 8) || ((i / 1000) == 8) || ((i / 100) == 8) || ((i / 10) == 8))))
            cout << i << endl;
    }
}
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.01.2014, 10:20
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Цикл вывода пятизначных цифр (C++):

Цикл вывода диапазона данных - C++
Не могу понять почему не выводит минимальное значение, хотя когда тип меняю на char или на short int , то всё прекрасно работает. Почему...

Getch() и цикл вывода меню вместе - C++
Я хочу чтобы во время ожидания ввода (любого, не обязательно getch, но он, вроде, лучше всего подходит) у меня в цикле менюшка была...

Программа на цикл for (как добиться вывода на экран?) - C++
Программа на цикл for(помогите добиться вывода на экран), повторять в цикле нужно вот это выражение: (x^i+sin(ix))/3^i от i:=1 до...

Как преобразовать цикл для вывода сотрудников по отделам - C++
#include &lt;iostream&gt; #include &lt;locale.h&gt; #include &lt;string.h&gt; #include &lt;windows.h&gt; #include &lt;conio.h&gt; using namespace std; ...

Цикл для вывода min чисел в одномерный массив - C++
Цикл для вывода min чисел в одномерный массив

Цикл вычисления и вывода первых 15 членов последовательности и их суммы - C++
Помогите, пожалуйста! Нужно: составить алгоритм и программу вычисления и вывода первых 15 членов последовательности и их суммы....

10
sktm
0 / 0 / 1
Регистрация: 30.01.2014
Сообщений: 11
31.01.2014, 10:27 #2
Чтобы получить первую цифру нужно i/10000, вторую - i/1000%10, третью - i/100%10, четвертую - i/10%10, пятую i%10
0
Xopecc
33 / 28 / 2
Регистрация: 13.09.2013
Сообщений: 250
31.01.2014, 10:33 #3
Harmonster, в твоем коде пару ошибок:
во-первых, непонятное использование двойного логического оператора if
во-вторых, нужно использовать деление с остатком(оператор %)
Вот готовый код:
C++
1
2
3
4
5
for (int i = 10000; i <= 99999; i++)
    {
        if ((((i % 10000) == 3) || ((i % 1000) == 3) || ((i % 100) == 3) || ((i % 10) == 3)) || (((i % 10000) == 8) || ((i % 1000) == 8) || ((i % 100) == 8) || ((i % 10) == 8)))
            cout << i << endl;
    }
1
sktm
0 / 0 / 1
Регистрация: 30.01.2014
Сообщений: 11
31.01.2014, 10:42 #4
C++
1
2
3
4
5
for (int i = 10000; i <= 99999; i++)
    {
        if (i / 10000 == 3 || i / 1000 % 10 == 3 || i / 100 % 10 == 3 || i / 10 % 10 == 3 || i % 10 == 3  || i / 10000 == 8 || i / 1000 % 10 == 8 || i / 100 % 10 == 8 || i / 10 % 10 == 8 || i % 10 == 8)
            cout << i << endl;
    }
0
Xopecc
33 / 28 / 2
Регистрация: 13.09.2013
Сообщений: 250
31.01.2014, 10:46 #5
sktm, у нас с тобой не совсем правильные варианты, как не странно...
И в твоем, и в моем случае число, например 10032 не выводится...
0
sktm
0 / 0 / 1
Регистрация: 30.01.2014
Сообщений: 11
31.01.2014, 10:55 #6
Xopecc, у меня выводит, я проверил
0
Xopecc
33 / 28 / 2
Регистрация: 13.09.2013
Сообщений: 250
31.01.2014, 11:02 #7
sktm, я твой код проверил на 10032, не выводит его!!!
Harmonster,Вот переделанный код(все работает):
C++
1
2
3
4
5
for(int i(10000); i<=99999; i++){
        
        if((i%10 == 3) || (i%100/10 == 3) || (i%1000/100 == 3) || (i%10000/1000 == 3) || (i/10000 == 3) || (i%10 == 8) || (i%100/10 == 8) || (i%1000/100 == 8) || (i%10000/1000 == 8) || (i/10000 == 8))
         cout<<i<<endl;
    }
Добавлено через 5 минут
sktm, я отказываюсь понимать дебаггер MSVS 2012, в первый раз в твоем коде не показал число 10032, во второй раз показал... Что бы это могло значить?
0
Harmonster
9 / 9 / 3
Регистрация: 20.05.2012
Сообщений: 101
31.01.2014, 11:03  [ТС] #8
Господа! Спасибо Вам за ответы! Но вы наверное поняли неправильно:
"Вывести на печать все пятизначные числа,в которых имеются цифры 3 и 8"
То есть, например 10308, 10803 и тп
0
Xopecc
33 / 28 / 2
Регистрация: 13.09.2013
Сообщений: 250
31.01.2014, 11:06 #9
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Harmonster, Ничего сложного, берем мой код, и кое-что добавляем:
C++
1
2
3
4
5
for(int i(10000); i<=99999; i++){
        
        if(((i%10 == 3) || (i%100/10 == 3) || (i%1000/100 == 3) || (i%10000/1000 == 3) || (i/10000 == 3)) && ((i%10 == 8) || (i%100/10 == 8) || (i%1000/100 == 8) || (i%10000/1000 == 8) || (i/10000 == 8)))
         cout<<i<<endl;
    }
P.S. То есть мы сначала ищем цифру 3, а затем цифру 8 в числе, если оба присутствуют, то выводим число:
C++
1
&&
0
sktm
0 / 0 / 1
Регистрация: 30.01.2014
Сообщений: 11
31.01.2014, 11:08 #10
Harmonster, тогда вот
C++
1
2
3
4
5
for(int i(10000); i<=99999; i++){
        
        if(((i%10 == 3) || (i%100/10 == 3) || (i%1000/100 == 3) || (i%10000/1000 == 3) || (i/10000 == 3)) && ((i%10 == 8) || (i%100/10 == 8) || (i%1000/100 == 8) || (i%10000/1000 == 8) || (i/10000 == 8)))
         cout<<i<<endl;
    }
0
Xopecc
31.01.2014, 11:10     Цикл вывода пятизначных цифр
  #11

Не по теме:

sktm, я быстрей

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.01.2014, 11:10
Привет! Вот еще темы с ответами:

Цикл: Написать программу вывода таблицы через 1 градус в 3 столбца - C++
Написать программу вывода таблицы через 1 градус в 3 столбца (х изменяется от 0 до альфа). Альфа, А, В - переменные, которые нужно...

Преобразовать массив цифр в строку для вывода на cout<< - C++
Реализую класс длинных чисел (только+). Числа представляю в виде массиве, где каждый элемент это цифра. Но не могу понять, как его...

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

Цикл: Найти произведение цифр числа К - C++
Помогите пжа. &quot;Дано целое число K. Найти произведение цифр числа К.&quot; В С++ если знаете паскальто в паскале тож.. спс


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

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

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