Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/88: Рейтинг темы: голосов - 88, средняя оценка - 4.73
0 / 0 / 0
Регистрация: 19.06.2014
Сообщений: 24
1

Найти все натуральные числа, не превосходящие заданного n, которые делятся на каждую из своих цифр

17.06.2015, 12:30. Показов 17014. Ответов 10
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Задание:
Найти все натуральные числа, не превосходящие заданного n, которые делятся на каждую из своих цифр.

помогите с 2 частью немогу понять как из типа char можно сделать тип int и наоборот
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.06.2015, 12:30
Ответы с готовыми решениями:

Найти все натуральные числа, не превосходящие заданного N, которые делятся на каждую из своих цифр
Помогите решить!!!

Найти все натуральные числа, не превосходящие заданного n, которые делятся на каждую из своих цифр
программа 1. Найти все натуральные числа, не превосходящие заданного n, которые делятся на каждую...

Найти все натуральные числа,не превосходящие заданного n,которые делятся на каждую из своих цифр.
Найти все натуральные числа,не превосходящие заданного n,которые делятся на каждую из своих цифр.

Найти все натуральные числа, не превосходящие заданного n, которые делятся на каждую из своих цифр
Найти все натуральные числа, не превосходящие заданного n, которые делятся на каждую из своих цифр....

10
4064 / 3318 / 924
Регистрация: 25.03.2012
Сообщений: 12,495
Записей в блоге: 1
17.06.2015, 12:31 2
Цитата Сообщение от lakys Посмотреть сообщение
как из типа char можно сделать тип int и наоборот
как это связано с заданием?
0
DrOffset
17.06.2015, 12:34
  #3

Не по теме:

lakys, к слову о названии тем. Если бы ты сразу назвал свою тему нормально, то внизу страницы увидел бы тьму точно таких же тем от других участников форума. И уж точно наверняка бы нашел там решение.

0
0 / 0 / 0
Регистрация: 19.06.2014
Сообщений: 24
17.06.2015, 13:03  [ТС] 4
в ходе выполнения 2ой части мне необходимо разбить число к примеру 19 на 2 отдельные цифры(1 9) потому мне и необходимо переделать тип Int в char и наоборот. загвоздка в том что я незнаю как.
0
Dimension
594 / 462 / 223
Регистрация: 08.04.2014
Сообщений: 1,710
17.06.2015, 19:35 5
Цитата Сообщение от lakys Посмотреть сообщение
переделать тип Int в char
это можно сделать и в int, реверсите число ,затем пока оно больше нуля выводите остаток от деления на 10,и делите число на 10
2
0 / 0 / 0
Регистрация: 19.06.2014
Сообщений: 24
18.06.2015, 07:14  [ТС] 6
Можете привести пример?
0
58 / 55 / 28
Регистрация: 20.05.2015
Сообщений: 256
18.06.2015, 09:26 7
lakys,
Он имел ввиду, что можно обойтись и без этого. Вот перевод char в int:

C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
#include <cstdlib> // Подключаем дополнительную библиотеку.
using namespace std;
 
int main()
{
    char a[2] = {'5'}; // Символьный массив, в котором число 5 и нуль-терминатор
    int b; // Задаем переменную b
    b = atoi(a); // b становится равным 5.
    cout << b << endl; // Вывод b.
}
1
Dimension
594 / 462 / 223
Регистрация: 08.04.2014
Сообщений: 1,710
18.06.2015, 09:44 8
Цитата Сообщение от lakys Посмотреть сообщение
Можете привести пример?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
using namespace std;
int main(){
    int a, b=0;
    cin >> a;
    while (a){
        b = a % 10 + b * 10;
        a /= 10;
    }
    while (b){
        cout << b % 10 << " ";
        b /= 10;
    }
    return 0;
}
1
58 / 55 / 28
Регистрация: 20.05.2015
Сообщений: 256
18.06.2015, 10:20 9
Лучший ответ Сообщение было отмечено lakys как решение

Решение

Решение задачи:

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 <iostream>
using namespace std;
 
int main()
{
    int n;
    cin >> n;
    for (int i = 1; i < n; i++)
    {
        int a = i;
        int b = i;
        if (i % 10 == 0)
            continue;
        while (b != 0)
        {
            if ((a % (b % 10)) == 0)
            {
                b = b / 10;
            }
            else
                break;
        }
        if (b == 0)
            cout << a << endl;
    }
    return 0;
}
Хотя, похоже где-то допущена ошибка, делит только двузначные числа.

Решение:

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
#include <iostream>
using namespace std;
 
int main()
{
    int n;
    cin >> n;
    for (int i = 1; i < n; i++)
    {
        int a = i;
        int b = i;
        if (i % 10 == 0)
            continue;
        while (b != 0)
        {
            if (b % 10 == 0)
                continue;
            if ((a % (b % 10)) == 0)
            {
                b = b / 10;
            }
            else
                break;
        }
        if (b == 0)
            cout << a << endl;
    }
    return 0;
}
1
0 / 0 / 0
Регистрация: 19.06.2014
Сообщений: 24
18.06.2015, 12:11  [ТС] 10
Всем большое спасибо)опробую все варианты, за функцию перевода из char в int отдельное спасибо)
0
58 / 55 / 28
Регистрация: 20.05.2015
Сообщений: 256
18.06.2015, 14:12 11
Цитата Сообщение от lakys Посмотреть сообщение
Всем большое спасибо)опробую все варианты, за функцию перевода из char в int отдельное спасибо)
Я сейчас подумал, в последнем варианте есть один недочёт - считает только двузначные числа, доделаешь сам.
0
18.06.2015, 14:12
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.06.2015, 14:12
Помогаю со студенческими работами здесь

Найти все натуральные числа, не превосходящие заданного п, которые делятся на каждую из своих цифр.
Найти все натуральные числа, не превосходящие заданного п, которые делятся на каждую из своих цифр.

Найти все натуральные числа, не превосходящие заданного n, которые делятся на каждую из своих цифр
программа 1. Найти все натуральные числа, не превосходящие заданного n, которые делятся на каждую...

Найти все натуральные числа, не превосходящие заданного значения N, которые делятся на каждую из своих цифр
Задача 1.3. Разработать программу, которая находит все натуральные числа, не превосходящие...

Найти все натуральные числа, не превышающие заданного N, которые делятся на каждую из своих цифр.
Найти все натуральные числа, не превышающие заданного N, которые делятся на каждую из своих цифр....

Найти все натуральные числа, не превосходящие заданного N и делящиеся на каждую из своих цифр
При компиляции выводит какие то числа.Я уверен, что где то ошибка.Но не могу найти. ...

Найти все натуральные числа, не превосходящие заданного N и делящиеся на каждую из своих цифр
Помогите, решить задачу &quot; Найти все натуральные числа, не превосходящие заданного N и делящиеся на...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru