Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Слияние массива как лучше https://www.cyberforum.ru/ cpp-beginners/ thread2179779.html
Здравствуйте. Допустим есть 2 массива char a char b созданные в разные времена, то есть находятся в разных областях.
Определить количество гласных букв C++
Ввести массив символов с (эН) элементов. Вычеслить, сколько раз в нем встречаются символы, относящиеся к гласным буквам украинского алфавита. 1.Я не понимаю,как задать,именно элементы.Рандомно?Но...
C++ Мультимап: "не удается инициализировать ссылку значением" подскажите как исправить Ошибка (активно) E0434 не удается инициализировать ссылку типа "std::multimap<std::string, book, std::less<std::string>, std::allocator<std::pair<const std::string,... https://www.cyberforum.ru/ cpp-beginners/ thread2179764.html C++ Подсчитать среднее арифметическое ненулевых элементов над побочной диагональю матрицы https://www.cyberforum.ru/ cpp-beginners/ thread2179759.html
Дан массив размером n × n, элементы которого целые числа Подсчитать среднее арифметическое ненулевых элементов, расположенных над побочным диагональю.
Cтруктура Student, определить количество студентов, имеющих заданную оценку по заданному предмету C++
Описать структуру с именем Student, содержащую поля фамилия, имя, название предмета и оценка по данному предмету. Выполнить: 1)Ввод данных с клавиатуры в массив, состоящий из восьми элементов типа...
C++ Задачи на последовательность Фибоначчи Обязательно делать через цикл do while Последовательность Фибоначчи образуется так: первый и второй члены последовательности равны 1, каждый следующий равен сумме двух предыдущих(1, 1, 2, 3, 5,... https://www.cyberforum.ru/ cpp-beginners/ thread2179678.html
C++ N видов валют и М пунктов, в которых можно обменивать валюту https://www.cyberforum.ru/ cpp-beginners/ thread2179653.html
В нашем городе работает несколько пунктов обмена валют. Каждый пункт специализируется на обмене двух конкретных валют и выполняет обменные операции только над ними. Может быть несколько пунктов,...
Сдвинуть элементы массива на три позиции вправо (сдвиг выполнить не циклический) C++
Дан одномерный массив М из 10 элементов. Сдвинуть его элементы на три позиции вправо (сдвиг выполнить не циклический)
C++ Разработать командный файл, копирующий произвольное число файлов https://www.cyberforum.ru/ cpp-beginners/ thread2179635.html
Помогите пожалуйста,не шарю вообще в программировании толком. 1. Разработать командный файл, копирующий произвольное число файлов, заданных аргументами из текущего каталога в каталог C:\Temp....
C++ Удалить из массива элементы, величина которых находится в интервале [a, b] https://www.cyberforum.ru/ cpp-beginners/ thread2179633.html
Помогите не получается , удалить из него элементы, величина которых находится в интервале . Освободившиеся в конце массива элементы заполнить нулями. #include <stdafx.h> #include <iostream>...
Для каждого числа последовательности найти количество цифр C++
Помогите написать программу не понимаю строки , заранее спасибо . Вводится последовательность из N целых чисел. Для каждого числа последовательности найти количество цифр 5 (функцией оформить...
C++ Получить список файлов в папке С++17 https://www.cyberforum.ru/ cpp-beginners/ thread2179597.html
Здравствуйте! Вопрос наверное невероятно глупый, но я не смог нагуглить и разобраться сам.. В С++17 есть возможность легко напечатать все файлы, находящиеся в папке: #include <string>...
0 / 0 / 0
Регистрация: 09.01.2018
Сообщений: 12
0

Проверка количества цифр в числе - C++ - Ответ 12061134

25.01.2018, 14:37. Показов 1522. Ответов 7
Метки (Все метки)

Доброго времени суток) Возникла проблема с программой, помогите, пожалуйста
Уверен, что ошибка простая, но не могу понять

Как всё должно работать:
  1. Вводится пятизначное число
  2. Проверяется, пятизначное ли число введено
  3. Если да - запускается программа, вызывается функция, там всё нормально
  4. Если нет - выводится сообщение об ошибке, мол, не пятизначное число, надо чёт решать

Но в итоге, какое бы число не вводилось, появляется сообщение об ошибке -- введено не пятизначное число

Кликните здесь для просмотра всего текста
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
#include <iostream>
#include <cmath>
#include "palendrom.h"
using namespace std;
 
int main(int argc, char** argv) {
    setlocale(LC_ALL, "");
    int in_number;
    int score = 0;
    int menu;
    int number_check;
    
    //Этот цикл перезапускает программу, чтобы она не завершалась после первой проверки палендром-не палендром
    for(int i = 0; i <= 1;){
    
        cout << "Введите пятизначное число: ";
        cin >> in_number;
        
        //Это проверка, пятизначное ли введено число. Тут и возникает проблема
        for(int i =0; in_number > 0 ; i++){
            in_number /= 10;
            number_check = i;
        }
        //Если число равно пяти, начинается работа программы. Тут всё как надо, всё работает
        if(number_check == 5){
        
        
            if(palendrom_2(in_number)){
                cout << "Число " << in_number << " -- палендром. "; 
            }
            else{
                cout << "Это не палендром";
            }
            
            cout << "Продолжить?\n1.Y\n2.N\n";
            cin >> menu;
            
            if(menu == 1){
                i = 0;
            }
            else{
                i = 2;
            }
        }
        else{
            //Почему-то выводится вот это, вне зависимости от того, пятизначное введено число или нет :(
            cout << "Это не пятизначное число!";
        }
    }
    
    return 0;
}


Если это может чем-то помочь(хотя скорее всего я просто что-то не так сделал в условии проверки количества цифр), вот код функции palendrom_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
bool palendrom_2(int number){
    int balance1;
    int balance2;
    int balance4;
    int balance5;
    
    balance1 = number % 10;
    number /= 10;
    
    balance2 = number % 10;
    number /= 100;
    
    balance4 = number % 10;
    number /= 10;
    
    balance5 = number %10;
    
    if((balance1 == balance5) && (balance2 == balance4)){
        return true;
    }
    else{
        return false;
    }
}


Вернуться к обсуждению:
Проверка количества цифр в числе C++
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
25.01.2018, 14:37
Готовые ответы и решения:

Определение количества цифр в восьмеричном числе
Помогите сделать программу, пожалуйста! Алгоритм определения кол-ва цифр в восьмеричном числе

Определение количества цифр в целом числе
Помогите плиз) Вот вариант что нужно сделать! написать подпрограмму-функцию определения...

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

Алгоритм определения количества цифр в шестнадцатиричном числе
Привет, у меня постала задача создать программу на с++, связану с определениям количества цифр в...

7
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.01.2018, 14:37

Рекурсивный подсчет количества нечетных цифр в числе
Всем привет. Есть работающая программа, которая считает все цифры в числе рекурсивно. А по...

Проверка на различность цифр в числе
Дано четырехзначное целое число. Определить все ли цифры числа различны. Пример входных данных...

Функция: подсчёт количества цифр после запятой в дробном числе
Нужно написать функцию подсчёта количества цифр после запятой в дробовом числе и при этом не...

Проверка наличия определенных цифр в числе
int n,kn = 0,kc = 0,a,b; cout&lt;&lt;&quot;Введите натуральное число:&quot;; cin &gt;&gt;n; cout &lt;&lt;&quot;Введите...

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