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

Найти такие числа, десятичное представление которых содержит убывающую последовательность - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Конвертирование из float в str и наоборот http://www.cyberforum.ru/cpp-beginners/thread175827.html
Приветствую всех! Господа, помогите освоить конвертацию типов. Знаю, что такие темы не раз поднимались, но прочитав их чего-то недопонял (ибо я новичок). Многие советуют использовать atoi, scanf и т.д., но не знаю как их применять. Вот например: float a; string str="exit"; cin >> a; if (a==str) exit(1); else ... ля-ля-ля-тополя Теперь тут ошибка выходит, что нет конвертации. Вот теперь, как...
C++ Вычисления значений функции Помогите пожалуйста с задачей,требуется на писать,отладить и протестировать прогу,обеспечивающая вычисления значений указанной функции: В проге обязательно использовать функции.Использования глобальных переменных запрещено Функция у=f(x) имеет вид: Если x<-3,то y=e^x+5 Если -3<= 0, то y=x/x^2 +1 Если x>0, то y=под корнем x+1 http://www.cyberforum.ru/cpp-beginners/thread175826.html
написать игру C++
Всем привет! Нужна срочно самая простая игра, написанная на С/С++, можно Паскаль. Сам персонаж должен двигаться и можно было управлять мышкой. Народ, помогите мне это очень нужно для курсовой, учусь на вечернем поэтому прошу самую простенькую. Если есть у кого проекты, кто-то писал уже игры пожалуйста присылайте...
Найти номера элементов, соответствующих максимальному значению C++
В одномерном массиве, состоящем из n вещественных элементов, найти номера элементов, соответствующих максимальному значению среди положительных элементов массива. Упорядочить элементы массива по возрастанию модулей элементов. Помогите, пожалуйста.
C++ как написать класс квадратное уравнение??? http://www.cyberforum.ru/cpp-beginners/thread175782.html
#include <iostream> #include <complex> #include <math> using namespace std; class kvadr{ float a, b, c; public: kvadr(float a1,float b1=0.0, float c1=0.0):a(a1), b(b1), c(c1){} void korny(x1, x2){x1}
C++ Запись структуры в бинарный файл Здравствуйте! У меня есть вот такая структура, представляющая собой словарь map<wstring, wstring>. Считыванием из большого текстового файла словаря я ее заполняю: wifstream infile; infile.open("input.txt"); if (!infile){ cout<<"can not open file!"<<endl; подробнее

Показать сообщение отдельно
Mr.X
Эксперт С++
3042 / 1687 / 265
Регистрация: 03.05.2010
Сообщений: 3,867
13.10.2010, 13:59     Найти такие числа, десятичное представление которых содержит убывающую последовательность
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
///////////////////////////////////////////////////////////////////////////////////
//Среди простых чисел, не превосходящих заданного числа N, найти такие, 
//десятичное представление которых содержит убывающую последовательность чисел <цифр?>. 
///////////////////////////////////////////////////////////////////////////////////
#include <iostream>
///////////////////////////////////////////////////////////////////////////////////
typedef long long  T_int;
///////////////////////////////////////////////////////////////////////////////////
bool  has_decreasing_digits(T_int  k)
{
    T_int  dig_cur   = -1;
    T_int  dig_prev  = -1;    
 
    while(k)
    {
        dig_cur = k % 10;
        k /= 10;
        if(dig_cur <= dig_prev)
        {
            return false;
        }
        dig_prev = dig_cur;
    }
    return  true;
}
///////////////////////////////////////////////////////////////////////////////////
bool  is_simple(T_int k)
{
    for(T_int i = 2; i * i <= k; ++i)
    {
        if(k % i == 0)
        {
            return  false;
        }
    }
    return  true;
}
///////////////////////////////////////////////////////////////////////////////////
void  print_simple_with_decreasing_digits(T_int  n)
{
    //Так как число 9 876 543 210 делится на 2, а число 987 654 321 делится на 3, так как
    //сумма его цифр делится на 3, то очевидно, что максимальным числом, удовлетворяющим
    //условию, является число из восьми цифр.
    const T_int  MAX = 98765432;
    if(n > MAX)
    {
        n = MAX;
    }
    for(T_int i = 2; i <= n; ++i)
    {
        if(has_decreasing_digits(i)
           && is_simple(i))
        {
            std::cout << i
                      << std::endl;
        }
    }
}
///////////////////////////////////////////////////////////////////////////////////
int main()
{
    std::cout << "N = ";
    T_int n;
    std::cin >> n;
    std::cout << std::endl;
    print_simple_with_decreasing_digits(n);
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru