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

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

Войти
Регистрация
Восстановить пароль
 
Julianna123
0 / 0 / 0
Регистрация: 19.03.2016
Сообщений: 12
#1

Для каждого числа последовательности вывести новое число, состоящее только из четных чисел исходного числа - C++

28.06.2016, 17:03. Просмотров 312. Ответов 8
Метки нет (Все метки)

жду помощи!!!С++
водится последовательность из N целых чисел.Для каждого числа последовательности вывести новое число которое состоит только из четных чисел исходного числа(Функцией оформить определение нового числа для заданного.)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.06.2016, 17:03     Для каждого числа последовательности вывести новое число, состоящее только из четных чисел исходного числа
Посмотрите здесь:

Для каждого числа от 1 до n найти произведение его четных делителей C++
C++ Дана последовательность n натуральных чисел. Для каждого числа вычислить количество его цифр и сумму этих цифр. Вывести на экран каждое число, количес
Дано трехзначное число. Вывести число, полученное при прочтении исходного числа справа налево. C++
Дано двузначное число. Вывести число, полученное при перестановке цифр исходного числа. C++
Числа. Подсчитать количество четных и нечетных чисел- разрядов. Найти суммы только всех четных и только нечетных, проверить какая из сумм больше C++
C++ Для каждого числа последовательности вывести новое число, которое получится после записи цифр числа в обратном порядке
Дан целый массив. выяснить имеются ли в нем числа, состоящие только из четных цифр. Если да, то вывести все найденные числа и их порядковые номера C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zss
Модератор
Эксперт С++
6248 / 5851 / 1891
Регистрация: 18.12.2011
Сообщений: 14,992
Завершенные тесты: 1
28.06.2016, 17:45     Для каждого числа последовательности вывести новое число, состоящее только из четных чисел исходного числа #2
Цитата Сообщение от Julianna123 Посмотреть сообщение
только из четных чисел исходного числа
Что такое "четные числа исходного числа"?
Может быть - "четные десятичные цифры исходного числа"?
Julianna123
0 / 0 / 0
Регистрация: 19.03.2016
Сообщений: 12
28.06.2016, 17:54  [ТС]     Для каждого числа последовательности вывести новое число, состоящее только из четных чисел исходного числа #3
zss, я написала как было в условии моей задачи
zss
Модератор
Эксперт С++
6248 / 5851 / 1891
Регистрация: 18.12.2011
Сообщений: 14,992
Завершенные тесты: 1
28.06.2016, 20:07     Для каждого числа последовательности вывести новое число, состоящее только из четных чисел исходного числа #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
int GetEvenDigits(int n)
{
    int res=0;
    while(n)
    {
         int digit=n%10;
         if(digit%2==0)
            res=res*10+digit;
         n/=10;
    }
    return res;
}
Julianna123
0 / 0 / 0
Регистрация: 19.03.2016
Сообщений: 12
28.06.2016, 23:16  [ТС]     Для каждого числа последовательности вывести новое число, состоящее только из четных чисел исходного числа #5
zss, ваша программа выбивает ошибку
Senarist
38 / 38 / 12
Регистрация: 14.03.2014
Сообщений: 563
28.06.2016, 23:29     Для каждого числа последовательности вывести новое число, состоящее только из четных чисел исходного числа #6
Ну дак, как оно без main() будет работать
Геомеханик
534 / 341 / 258
Регистрация: 26.06.2015
Сообщений: 770
29.06.2016, 06:30     Для каждого числа последовательности вывести новое число, состоящее только из четных чисел исходного числа #7
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>
 
bool even_digits(unsigned int& n){
    unsigned int x = 0, y = 1, z = n;
    do {
        if((z & 1) == 0){
            x += y * (z % 10);
            y *= 10;
        }
    } while((z /= 10) != 0);
 
    if(y > 1)
        n = x;
    return (n == x);
}
 
int main(void){ 
    unsigned int n = 123456789;
    if(even_digits(n))
        std::cout << n << std::endl;
 
/*  ввод с консоли
    const int N = 5;
    for(int i = 0; i < N; ++i){
        if((std::cin >> n) && even_digits(n))
            std::cout << n << ' ';
    }
    std::cout << std::endl;
    std::cin.sync();*/
 
    std::cin.get();
    return 0;
}
zss
Модератор
Эксперт С++
6248 / 5851 / 1891
Регистрация: 18.12.2011
Сообщений: 14,992
Завершенные тесты: 1
29.06.2016, 19:48     Для каждого числа последовательности вывести новое число, состоящее только из четных чисел исходного числа #8
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
unsigned int GetEvenDigits(int n)
{
   unsigned int res=0;
    while(n)
    {
         int digit=n%10;
         if(digit%2==0)
            res=res*10+digit;
         n/=10;
    }
    return res;
}
int main()
{ 
    unsigned int n = 123456789;
    std::cout << GetEvenDigits(n) << std::endl;
     return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.06.2016, 19:53     Для каждого числа последовательности вывести новое число, состоящее только из четных чисел исходного числа
Еще ссылки по теме:

C++ Получить новое число M, которое образуется путем исключения средней цифры исходного числа
Дано трехзначное число. Вывести число, полученное при перестановке цифр сотен и десятков исходного числа (напр C++
Вывести количество делителей каждого числа из последовательности C++
Из целого числа получить новое, состоящее из нечетных цифр числа (2315663 -> 3153) C++
Образовать новое число, путём замены последней цифры на значение наименьшей цифры в записи исходного числа C++

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

Или воспользуйтесь поиском по форуму:
Julianna123
0 / 0 / 0
Регистрация: 19.03.2016
Сообщений: 12
29.06.2016, 19:53  [ТС]     Для каждого числа последовательности вывести новое число, состоящее только из четных чисел исходного числа #9
Цитата Сообщение от zss Посмотреть сообщение
unsigned int

unsigned int почему этот тип?
ведь целые -это и отрицательные?
Yandex
Объявления
29.06.2016, 19:53     Для каждого числа последовательности вывести новое число, состоящее только из четных чисел исходного числа
Ответ Создать тему
Опции темы

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