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

Анализ цифр трехзначного числа

15.12.2015, 13:37. Показов 10287. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Доброго времени суток всем. В универе дали домой лабораторку. Вот само задание:
Составить блок-схему и программу на языке С++.
Ввести с клавиатуры трехзначное число, записав его значение в одну переменную, и определить в нем:
а) верно ли, что все его цифры одинаковые
б) верно ли, что его средняя цифра нечетная
Суть в том, что я программу написал. Но при вводе числа с двумя одинаковыми цифрами она не показывает информацию о том, все ли цифры одинаковы или нет. Хотя, когда вводишь число с тремя одиннаковыми или тремя разными, то информация выводится. Пожалуйста, подскажите, что не так?
Собственно, сам код:

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
#include<iostream>
using namespace std;
int main()
{setlocale(LC_ALL,"Russian");
 int a,b,c;
 cout<<"Введите трехзначное число: ";
 cin>>a;
 if (a<100 || a>999)
  cout<<"Ошибка. Вы ввели не трехзначное число!"<<endl;
 else 
 {c=a/100;
  b=a%100;
  b=b/10;
  a=a%10;
 if ((a==b && a==c)||(b==a && b==c)||(c==a & c==b))
  cout<<"ВЕРНО. Все три цифры числа одинаковые"<<endl;
  else if(a!=b && c!=a && b!=c)
  cout<<"НЕВЕРНО. Не все три цифры числа одинаковые"<<endl;
  if (b % 2 != 0)
  cout<<"ВЕРНО. Средняя цифра в числе нечетная"<<endl;
  else
  cout<<"НЕВЕРНО. Средняя цифра в числе четная"<<endl;
 }return 0;
}
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.12.2015, 13:37
Ответы с готовыми решениями:

Найти, во сколько раз произведение цифр трехзначного числа больше суммы цифр
найти во сколько раз произведение цифр трехзначного числа больше суммы цифр

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

Квадрат заданного трехзначного числа равен кубу суммы цифр этого числа
квадрат заданного трехзначного числа равен кубу суммы цифр этого числа

Вывести все возможные трехзначные числа, полученные путем перестановки цифр трехзначного числа
Ребята, хелп!!! Выведите на экран все возможные трехзначные числа, полученные путем перестановки...

5
Модератор
Эксперт С++
13505 / 10756 / 6411
Регистрация: 18.12.2011
Сообщений: 28,711
15.12.2015, 13:45 2
Лучший ответ Сообщение было отмечено CyaNDEL как решение

Решение

1. По Вашему что, из того, что a=c и b=c не следует, что b=a?
2. Из того, что не(a=c и b=c) не следует, что (a!=b или c!=a или b!=c)?
C++
1
2
3
4
if ((a==b && a==c))
   cout<<"ВЕРНО. Все три цифры числа одинаковые"<<endl;
else 
  cout<<"НЕВЕРНО. Не все три цифры числа одинаковые"<<endl;
1
252 / 158 / 118
Регистрация: 26.11.2012
Сообщений: 384
15.12.2015, 13:49 3
C++
1
2
3
4
5
6
7
8
        if ((a == b && a == c))
            cout << "ВЕРНО. Все три цифры числа одинаковые" << endl;
        else if (a != b || c != a || b != c)
            cout << "НЕВЕРНО. Не все три цифры числа одинаковые" << endl;
        if (b % 2 != 0)
            cout << "ВЕРНО. Средняя цифра в числе нечетная" << endl;
        else
            cout << "НЕВЕРНО. Средняя цифра в числе четная" << endl;
1
2 / 2 / 0
Регистрация: 15.12.2015
Сообщений: 37
15.12.2015, 13:56  [ТС] 4
Zss, От души благодарю. Теперь вроде как всё правильно выводится
А скажите, в других частях кода ошибок логических нет? Я вот сомневаюсь насчет этого куска:
c=a/100;
b=a%100;
b=b/10;
a=a%10;
Спрашивал у одного человека, он сказал, что правильно именно так
0
Диссидент
Эксперт C
27706 / 17322 / 3812
Регистрация: 24.12.2010
Сообщений: 38,979
15.12.2015, 14:01 5
Цитата Сообщение от CyaNDEL Посмотреть сообщение
(c==a & c==b)
в строке 15 ошибка (описка) Надо "&&"
Хоть это уже наверное, не актуально...

Добавлено через 2 минуты
Цитата Сообщение от Байт Посмотреть сообщение
Надо "&&"
Хотя, если внимательно посмотреть, это одно и тоже...

Добавлено через 1 минуту
Цитата Сообщение от CyaNDEL Посмотреть сообщение
правильно именно так
Он прав. Число cba.
Чтобы не было сомнений, возьмите несколько чисел и посмотрите, как над ними выполняются данные операции.
1
Модератор
Эксперт С++
13505 / 10756 / 6411
Регистрация: 18.12.2011
Сообщений: 28,711
15.12.2015, 14:32 6
CyaNDEL, Еще раз
Цитата Сообщение от Apostol584 Посмотреть сообщение
if (a != b || c != a || b != c)
писать не надо!
У логических переменных только 2 значения. Если не истина, то это ложь!
1
15.12.2015, 14:32
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.12.2015, 14:32
Помогаю со студенческими работами здесь

Проверить, квадрат заданного трехзначного числа равен кубу суммы цифр этого числа
ОЧЕНЬ СРОЧНО НУЖНА ПОМОЩЬ ПО ПРОГРАММИРОВАНИЮ, НА СТИПУХУ НАДО ВЫХОДИТЬ!!! Задание 1 Написать...

Определить, равен ли квадрат заданного трехзначного числа кубу суммы цифр этого числа VS2010
тупая задача на новый лад - С++: Определить, равен ли квадрат заданного трехзначного числа кубу...

Сумма цифр трехзначного числа кратна 7, само число также делится на 7. Найти все такие числа
Помогите составить программу на С++. Сумма цифр трехзначного числа кратна 7, само число также...

Сумма цифр трехзначного числа
Делаю делаю, че-то ни так делаю :)) #include &lt;iostream&gt; using namespace std; int main() { ...

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

Найти разницу цифр трехзначного числа
Дано трехзначное число, найти разницу его цифр


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

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