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

Для каждого числа последовательности проверить, представляют ли его цифры строго убывающую последовательность - C++

Восстановить пароль Регистрация
 
HelenCh
0 / 0 / 0
Регистрация: 05.05.2014
Сообщений: 7
05.05.2014, 19:09     Для каждого числа последовательности проверить, представляют ли его цифры строго убывающую последовательность #1
Здравствуйте!Помогите, пожалуйста!Необходимо подробно прокомментировать каждую строку.Вопрос жизни и смерти!

Задача

Вводится последовательность целых чисел, 0 – конец
последовательности. Для каждого числа последовательности проверить,
представляют ли его цифры строго убывающую последовательность,
например, 1234 (результатом функции будет 1 – Да, 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
30
31
32
33
34
#include "stdafx.h"
#include <iostream>
#include <cstring>
#include <math.h>
 
using namespace std;
 
int Proverka (int N)
{
    int a; int b; int k=0; int k1=0;
 b=N% 10; N=N/10;
        while (N!=0)
{   a=N%10;
    N=N/10;
    if (b>a)
 
        {k=k+1;
    b=a;}
    k1=k1+1;
        }
 if (k==k1)return (1);
else return (0);
}
int main()
{
    int ch; 
cin>>ch;
while (ch!=0)
{cout<< Proverka(ch)<<"\n";
cin>>ch;
}
    system ("pause");
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.05.2014, 19:09     Для каждого числа последовательности проверить, представляют ли его цифры строго убывающую последовательность
Посмотрите здесь:

C++ Дано трехзначное число. Проверить истинность высказывания: "Цифры даного числа образуют возрастающую или убывающую последовательность"
Для каждого числа последовательности проверить, представляют ли его цифры строго убывающую последовательность C++
Найти все натуральные n-значные числа, цифры в которых образуют строго возрастающую последовательность C++
C++ Проверить, образуют ли характеристики столбцов строго убывающую последовательность.
Цифры данного четырехзначного числа N образуют строго возрастающую последовательность C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
schdub
 Аватар для schdub
2902 / 1246 / 222
Регистрация: 19.01.2009
Сообщений: 3,210
Завершенные тесты: 1
06.05.2014, 01:42     Для каждого числа последовательности проверить, представляют ли его цифры строго убывающую последовательность #2
Вот немного отрефакторил, что не понятно - спрашивайте:
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
#include <iostream>
#include <cstdlib>
 
int Proverka(int n) {
    int a;            // хранит текущую самую правую цифру
    int b = n % 10;   // хранит правую цифру из предыдущей итерации 
    // выполняем цикл пока наше число не станет равно 0, на каждой итерации
    // и перед первой, уменьшаем число 'забывая' самую правую цифру
    for (n /= 10; n != 0; n /= 10) {
        a = n % 10;   // получаем самую правую цифру числа
        if (b <= a) { // сравнимаем с предыдущей самой правой
            return 0; // если мы здесь, то условие строго убывающей последовательности
        }             // не выполняется - нужно выйти из функции
        b = a;        // иначе запоминаем самую правую цифру для последующего сравнения
    }
    return 1;
}
 
int main() {
    for (int n = 0;;) {      // цикл (выход строка 22) и объявление переменной
        std::cin >> n;       // читаем число       
        if (n == 0) break;   // завершить ввод последовательности?
        std::cout << Proverka(n) << std::endl; // выполняем проверку и выводим результат
    }
    system ("pause");
}
риммок
0 / 0 / 0
Регистрация: 03.11.2012
Сообщений: 68
06.05.2014, 18:09     Для каждого числа последовательности проверить, представляют ли его цифры строго убывающую последовательность #3
Спасибочки!!!разберусь
HelenCh
0 / 0 / 0
Регистрация: 05.05.2014
Сообщений: 7
06.05.2014, 21:42  [ТС]     Для каждого числа последовательности проверить, представляют ли его цифры строго убывающую последовательность #4
Спасибо!!!!!!!!!!!!!!!!!!!!!!!!!!
Yandex
Объявления
06.05.2014, 21:42     Для каждого числа последовательности проверить, представляют ли его цифры строго убывающую последовательность
Ответ Создать тему
Опции темы

Текущее время: 07:05. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru