С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

Сколько различных цифр встречается в десятичной записи числа? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ прямоугольная матрица http://www.cyberforum.ru/cpp-beginners/thread105913.html
Ув. программисты, помогите пожалуйста решить задачу.Определить количество классов эквивалентных столбцов данной прямоугольной матрицы. Столбцы считать эквивалентными, если равны множества их...
C++ Не разберу скан кода по встраиваемым функциям У Дейтлов есть код: Что может быть написано в области, которая выделена мной красной рамочкой? http://www.cyberforum.ru/cpp-beginners/thread105912.html
Граница проверки простого числа C++
У Дейтлов есть задача: Написал такой код: #include<iostream> using namespace std; #include<windows> #include<cmath>
C++ Вычислить выражение
Добрый вечер. Я не пойму как делать это задание: нужно вычислить значение суммы этого примера. Конкретные величины исходных данных можна выбрать самостоятельно. Буду очень благодарен за любую...
C++ вывод слагаемых совершенного числа http://www.cyberforum.ru/cpp-beginners/thread105890.html
У Дейтлов есть задача Напишите программу, которая определяет и печатает все совершенные числа в диапазоне от 1 до 1000. Напечатайте сомножители каждого совершенного числа, чтобы убедиться, что...
C++ Широкий диапазон форм У Дейтлов есть задача Используйте подход, развитый в упражнениях 3.22 и 3.23, для создания программы, которая вычерчивает широкий диапазон форм. В 3.22 печатался квадрат из звездочек ****... подробнее

Показать сообщение отдельно
HIMen
4150 / 1399 / 39
Регистрация: 12.04.2009
Сообщений: 2,346
19.03.2010, 08:17
Цитата Сообщение от KoFeMaH Посмотреть сообщение
Himen можете разьяснить что выполняется на каждом шаге программы.ибо некоторые моменты для меня остались неясными
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
int i = 11126666; //само число
int count = 0; //количество уникальных цифр
bool* arr = new bool[10]; //массив, который хранит информацию, встречалась ли каждая цифра в числе
for(int i = 0; i < 10; i++) arr[i] = false; //заполняем его falseми
while(i > 0) //пока число не равно 0
{
        if(arr[i % 10] == false) //берем последнюю цифру, проверям встречалась ли она ранее
        {
                arr[i % 10] = true; //если встречалась, помечаем в массиве, что она встречалась
                count++; //увеличиваем количество уникальных цифр
        }
        i = i / 10; //делим число на 10, чтобы при следующей итерации взять предпоследнюю цифру
}       
cout << count; //выводим результат
delete [] arr; //освобождаем память
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.