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

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

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 14, средняя оценка - 4.71
KoFeMaH
 Аватар для KoFeMaH
38 / 25 / 1
Регистрация: 21.02.2009
Сообщений: 249
17.03.2010, 21:56     Сколько различных цифр встречается в десятичной записи числа? #1
Дано натуральное число n. Сколько различных цифр встречается в его десятичной записи?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.03.2010, 21:56     Сколько различных цифр встречается в десятичной записи числа?
Посмотрите здесь:

Дано натурально число N. Сколько различных цифр встречается в его десятичной записи? C++
Задано два натуральных числа: m и n. Определить, сколько цифр содержится в десятичной записи числа m^n. C++
C++ Подсчитать количество различных цифр в десятичной записи натурального числа.
Подсчитать количество различных цифр в десятичной записи натурального числа C++
C++ Дано натурально число N. Сколько различных цифр встречается в его десятичной записи?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
HIMen
 Аватар для HIMen
4105 / 1354 / 39
Регистрация: 12.04.2009
Сообщений: 2,346
17.03.2010, 22:05     Сколько различных цифр встречается в десятичной записи числа? #2
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;
while(i > 0)
{
    if(arr[i % 10] == false)
    {
        arr[i % 10] = true;
        count++;
    }
    i = i / 10;
}   
cout << count;
delete [] arr;
Зоти Сергей
 Аватар для Зоти Сергей
228 / 226 / 13
Регистрация: 18.12.2009
Сообщений: 316
17.03.2010, 23:33     Сколько различных цифр встречается в десятичной записи числа? #3
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
//---------------------------------------------------------------------------
#include <conio.h>
#include <complex.h>
#include <iostream.h>
//---------------------------------------------------------------------------
int main(int argc, char* argv[])
{
    int n;
        char StrValue[255];
        char * TempValue;
        cout<<"Enter n: ";
        cin>>n;
        itoa(n,StrValue,10);
        int NotEquallAmount=0;
        int Length=strlen(StrValue);
        TempValue=new char[Length];
        memset(TempValue, 0x2D, Length);
        for(int i=0;i<Length;i++)
        {
            bool IsFounded=false;
                for(int k=0;k<Length;k++)
                if(StrValue[i]==TempValue[k])
                {
                    IsFounded=true;
                        break;
                }
                if(!IsFounded)
                    NotEquallAmount++;
                TempValue[i]=StrValue[i];
        }
        printf("V chisle %d nahoditsea %d nepovtorjajushihsea desjatichnih zifr", n,NotEquallAmount);
        getch();
        delete [] TempValue;
}
//---------------------------------------------------------------------------
][акер
#define книжный_червь Я
 Аватар для ][акер
182 / 93 / 6
Регистрация: 30.01.2010
Сообщений: 780
18.03.2010, 06:24     Сколько различных цифр встречается в десятичной записи числа? #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <stdafx.h>
#include <string.h>
#include <iostream>
#include <conio.h>
 
void main()
{
    int a,b,c = 1;
    std::cin >> a;
    b = a;
    while (b > 9) {
        c++;
        b /= 10;
    }
    std::cout << c;
    getch();
}
Для Visual C++.
KoFeMaH
 Аватар для KoFeMaH
38 / 25 / 1
Регистрация: 21.02.2009
Сообщений: 249
18.03.2010, 17:28  [ТС]     Сколько различных цифр встречается в десятичной записи числа? #5
Ув. Himen я немножко не понял зачем вы в цикле из счетчик цикла делите без остатка на 10.
В общем у меня уже был код правда прикомпиляции почему то выдает ошибку.Himen мне кажется если их скрестить получится правильно.вот мой код
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
//---------------------------------------------------------------------------
#include <stdio.h>
int Count(int c)
 {
  int count = 0;
  int arr[10];
  if(c != 0) 
  {
    while(c>0)
    {
      for (int i=1;10; i++) 
      {
        if((c % 10)!=arr[i])
          {
            arr[count]=(c % 10);
            count++;
          }         
      }
      c /= 10;     
    } 
  else count++;
  return count;
  } 
int main()
 {
  int result;
  int k;
  scanf("%d",&k); 
  result = Count(k);  
  printf("%d",result);
 }
Добавлено через 7 часов 31 минуту
Himen можете разьяснить что выполняется на каждом шаге программы.ибо некоторые моменты для меня остались неясными
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9373 / 5423 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
18.03.2010, 17:35     Сколько различных цифр встречается в десятичной записи числа? #6
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
#include <set>
    
/* Дано натуральное число n. Сколько различных цифр встречается в его десятичной записи? */
 
int main(){
    int num;
    std::cout << "Number: ";
    std::cin >> num;
    
    std::set<int> s;
    do {
        s.insert(num % 10);
    } while ( num /= 10 );
    std::cout << s.size() << " different digits." << std::endl;
    
    return 0;
}
][акер
#define книжный_червь Я
 Аватар для ][акер
182 / 93 / 6
Регистрация: 30.01.2010
Сообщений: 780
19.03.2010, 03:38     Сколько различных цифр встречается в десятичной записи числа? #7
KoFeMaH, я не такрй профессионал по С++/С и я могу ошибиться. Нету прототипа функции.
Цитата Сообщение от KoFeMaH Посмотреть сообщение
for (int i=1;10; i++)
Вот условие 10 всегда будет равным true и получиться бесконечный цикл.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.03.2010, 08:17     Сколько различных цифр встречается в десятичной записи числа?
Еще ссылки по теме:

C++ Определить количество различных цифр, содержащихся в десятичной записи каждого элемента массива натуральных ч
C++ Множества: дано N натуральных чисел. Сколько различных цифр встречается в его десятичной записи?
C++ Цикл: Выяснить встречается ли цифра k в десятичной записи числа N.

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

Или воспользуйтесь поиском по форуму:
HIMen
 Аватар для HIMen
4105 / 1354 / 39
Регистрация: 12.04.2009
Сообщений: 2,346
19.03.2010, 08:17     Сколько различных цифр встречается в десятичной записи числа? #8
Цитата Сообщение от 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; //освобождаем память
Yandex
Объявления
19.03.2010, 08:17     Сколько различных цифр встречается в десятичной записи числа?
Ответ Создать тему
Опции темы

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