C/C++

Задание по С++

Составьте программу, которая печатает true, если среди цифр заданного трехзначного положительного целого числа есть одинаковые, и false в противном случае.
 #include  
using namespace std;
int main() {
unsigned n;
cin >> n;
const auto a = n % 10;
const auto b = n / 10 % 10;
const auto c = n / 100;
cout
АИ
Андрей Иванов
86 629
Лучший ответ
Игорь Литвинцев Спасибо) а как исправить такую ошибку?
Для произвольного количества цифр (в рамках int):
 int main() 
{
int c[10] = { 0 };
int n;
std::cin >> n;
bool b = false;
for (; n > 0; n /= 10)
b |= ++c[n % 10] > 1;
std::cout
Павел Костерин я не умею так филигранно кодить
это уровень эксперта
Павел Костерин если бы мне поставили такую задачу
бы трёхзначное число превратила в строку
Потом в двух вложенных цикла сравнивала букву со второй и третьей
потом вторую
С переменной счётчиком)
#include <iostream>
#include <set>
using namespace std;
int main(){int i; cin>>i; cout<<boolalpha<<(set<int>({i/100,i/10%10,i%10}).size()!=3);}
Даниил Снопов
Даниил Снопов
53 046
Павел Костерин я жавно за вашими ответами наблюдаю
Сколько языков программирования Вы знаете?
Для выполнения этого задания вам потребуется создать программу на языке C++, которая будет проверять наличие одинаковых цифр в трехзначном числе.

Программа может работать по следующему алгоритму:

1. Вводим трехзначное число.
2. Разбиваем число на отдельные цифры.
3. Сравниваем цифры между собой.
4. Если найдены одинаковые цифры, выводим "true", в противном случае - "false".

Вот пример реализации этого алгоритма на C++:

```cpp
#include <iostream>

int main() {
int num;
std::cout << "Enter a three-digit number: ";
std::cin >> num;

// Проверяем, является ли число трехзначным
if (num < 100 || num > 999) {
std::cout << "The number is not three-digit!";
return 0;
}

// Разбиваем число на цифры
int firstDigit = num / 100;
int secondDigit = (num % 100) / 10;
int thirdDigit = num % 10;

// Сравниваем цифры
if (firstDigit == secondDigit || firstDigit == thirdDigit || secondDigit == thirdDigit) {
std::cout << "true";
} else {
std::cout << "false";
}

return 0;
}
```

В этой программе мы сначала вводим трехзначное число. Затем мы проверяем, что число действительно трехзначное (т.е. оно находится в диапазоне от 100 до 999). После этого мы разбиваем число на отдельные цифры, используя целочисленное деление и операцию взятия остатка от деления. Наконец, мы сравниваем цифры, и если найдем хотя бы две одинаковые, выводим "true". В противном случае выводим "false".