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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
glushara
0 / 0 / 0
Регистрация: 20.04.2012
Сообщений: 33
#1

Сколько цифр в числе, которые равны "а"? - C++

26.05.2013, 21:39. Просмотров 607. Ответов 9
Метки нет (Все метки)

сколько цифр в числе, которые НЕ равны а.
программа не очень правильно работает.
не могу понять почему. Гляньте.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include<iostream>
#include<stdlib.h>
int main()
{
    int n;
    int a,k,b;
    std::cout<<"vvedute chuslo a\n";
    std::cin>>a;
    std::cout<<"vvedute chuslo n\n";
    std::cin>>n;
    k=0;
    while(n!=0)
    {
               b=n%10;
               if (b!=a) k++;
               n=n/10;
               }
    std::cout<<"kolichestvo  "<<k<<"\n";
    
    system("pause");
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.05.2013, 21:39     Сколько цифр в числе, которые равны "а"?
Посмотрите здесь:

На C++ в строке после символа - "+" поставить символ "*" и посчитать сколько "+" - C++
С++ Мы вводим вручную строку , (через cin &gt;&gt; )программа должна после каждого &quot;+&quot; поставить &quot;*&quot; потом посчитать сколько всего было &quot;+&quot;...

Удалять в словах, которые заканчиваются на букву "А" все другие буквы "А" - C++
Здравствуйте! Есть текст &quot;Варвара очень любит леопарда&quot;. Нужно сделать программу, которая будет удалять в словах, которые заканчиваются...

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

Нужно найти слова которые встречаются в буквы "a" "z" - C++
Даны две буквы &quot;a&quot; &quot;z&quot; и текст, нужно найти и вывести те слова в которых встречаются две эти буквы вот мой вариант но он не работает ...

Определить сколько цифр в заданном числе, найти сумму цифр, и последнюю цифру - C++
дано натуральное число n (n&lt;10000). определить сколько цифр, найти сумму цифр, и последнюю цифру. Не могу сообразить где косяк вышел ...

Определить сколько цифр в заданном натуральном числе, и чему равна сумма его цифр - C++
Дано натуральное число n (n&lt;=100). Определить сколько цифр в числе n, чему равна сумма его цифр.

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
genock94
20 / 20 / 1
Регистрация: 16.11.2012
Сообщений: 348
26.05.2013, 21:49     Сколько цифр в числе, которые равны "а"? #2
glushara, позвольте уточнить. Пользователь вводит цифру "a". Потом пользователь вводит число "n". И в этом числе "n" надо поссчитать число цифр, не равных цифре "a"?
glushara
0 / 0 / 0
Регистрация: 20.04.2012
Сообщений: 33
26.05.2013, 21:52  [ТС]     Сколько цифр в числе, которые равны "а"? #3
Цитата Сообщение от genock94 Посмотреть сообщение
glushara, позвольте уточнить. Пользователь вводит цифру "a". Потом пользователь вводит число "n". И в этом числе "n" надо поссчитать число цифр, не равных цифре "a"?
да..именно так
genock94
20 / 20 / 1
Регистрация: 16.11.2012
Сообщений: 348
26.05.2013, 21:59     Сколько цифр в числе, которые равны "а"? #4
glushara,
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
// помощь.cpp: определяет точку входа для консольного приложения.
//
 
#include "stdafx.h"
#include <conio.h>
 
int main()
{
    int a,n,b,k;
 
    printf("Vvedite chislo: ");
    scanf("%d",&n);
 
    printf("Vvedite cifru: ");
    scanf("%d",&a);
    
    while (n!=0)
    {
        b=n%10;
        if (b!=a) 
            k++;
        n=n/10;
    }
 
    printf("Kolichestvo cifr, ne ravnih 'a': %d",k);
 
    getch();
    return 0;
}
Добавлено через 2 минуты
glushara, скорее всего ошибка заключалась в отсутствии инициализации переменной "k"..
glushara
0 / 0 / 0
Регистрация: 20.04.2012
Сообщений: 33
26.05.2013, 22:01  [ТС]     Сколько цифр в числе, которые равны "а"? #5
Цитата Сообщение от genock94 Посмотреть сообщение
glushara,
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
// помощь.cpp: определяет точку входа для консольного приложения.
//
 
#include "stdafx.h"
#include <conio.h>
 
int main()
{
    int a,n,b,k;
 
    printf("Vvedite chislo: ");
    scanf("%d",&n);
 
    printf("Vvedite cifru: ");
    scanf("%d",&a);
    
    while (n!=0)
    {
        b=n%10;
        if (b!=a) 
            k++;
        n=n/10;
    }
 
    printf("Kolichestvo cifr, ne ravnih 'a': %d",k);
 
    getch();
    return 0;
}
Добавлено через 2 минуты
glushara, скорее всего ошибка заключалась в отсутствии инициализации переменной "k"..

спасибо.
а не знаешь ли что не так в моей программе?
genock94
20 / 20 / 1
Регистрация: 16.11.2012
Сообщений: 348
26.05.2013, 22:04     Сколько цифр в числе, которые равны "а"? #6
glushara, хмм.. Скомпилировал вашу программу и резьтаты сходятся.. Как вы поняли то, что в программе ошибка?

Добавлено через 3 минуты
Кстати, главное следить за тем, чтобы число "n" не выходило за пределы своего типа.. Например я ввел число "n"=223323242355222 и число "a"=1. Результат 9, что неверно, т.к. максимальное значение числа "n"=(2^31)-1
glushara
0 / 0 / 0
Регистрация: 20.04.2012
Сообщений: 33
26.05.2013, 22:05  [ТС]     Сколько цифр в числе, которые равны "а"? #7
Цитата Сообщение от genock94 Посмотреть сообщение
glushara, хмм.. Скомпилировал вашу программу и резьтаты сходятся.. Как вы поняли то, что в программе ошибка?
например
цифра - 4
число - 45555555555
выводит - 9
должно - 10

все...я ошибку понял...не обратил внимания на тип.))
genock94
20 / 20 / 1
Регистрация: 16.11.2012
Сообщений: 348
26.05.2013, 22:07     Сколько цифр в числе, которые равны "а"? #8
glushara, рад, что проблема решена
glushara
0 / 0 / 0
Регистрация: 20.04.2012
Сообщений: 33
26.05.2013, 22:11  [ТС]     Сколько цифр в числе, которые равны "а"? #9
Цитата Сообщение от genock94 Посмотреть сообщение
glushara, рад, что проблема решена
может подскажешь.
нужно в этой же программе проверить условие
правда ли что все цифры равны?
имеется в виду в числе n/
какая тут идея?
я что то не могу додуматься
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.05.2013, 08:36     Сколько цифр в числе, которые равны "а"?
Еще ссылки по теме:

Дано натурально число n. Сколько цифр в этом числе. Чему равняется сумма цифр. Найти первую цифру - C++
Желательно в С

Написать программу, которая определяет, сколько гласных символов введено с клавиатуры и сколько из них "а" - C++
Помогите ребята, очень нужно. написать программу, которая определяет, сколько гласных символов введено с клавиатуры и сколько из них &quot;а&quot; ...

Определить, сколько цифр в числе n - C++
Дано натуральное число n (n&lt;=100). Определить: 1) сколько цифр в числе n; 2) чему равна сумма его цифр.

В каждом числе массива определить количество разрядов, равных "1" - C++
В каждом числе массива определить количество разрядов, равных &quot;1&quot;. Записать это количество в отдельный массив. Все вроде сделал,только...


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

Или воспользуйтесь поиском по форуму:
genock94
20 / 20 / 1
Регистрация: 16.11.2012
Сообщений: 348
27.05.2013, 08:36     Сколько цифр в числе, которые равны "а"? #10
glushara, если я правильно понял, то: в случае равенства всех цифр в числе "n" вывести "Все цифры в числе n равны", иначе "НЕ все цифры в числе n равны". В таком случае код будет таким:
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
// помощь.cpp: определяет точку входа для консольного приложения.
//
 
#include "stdafx.h"
#include <conio.h>
 
int main()
{
    int a,n,b,k=0;
    int x; // переменная-накопитель (для проверки равенства всех цифр) x==n;
    bool ravni=1;
 
    printf("Vvedite chislo: ");
    scanf("%d",&n);
 
    printf("Vvedite cifru: ");
    scanf("%d",&a);
    x=n;
 
    while (n!=0)    // цикл для нахождения числа цифр, не равных "a"
    {
        b=n%10;
        if (b!=a) 
            k++;
        n=n/10;
    } 
    printf("Kolichestvo cifr, ne ravnih 'a': %d\n",k);
 
    b=x%10; //сохраняем первую цифру.
    while (x!=0)    // цикл для проверки равенства всех цифр в числе "n" цифре "b"
    {
        if((x%10)!=b)
        {
            ravni=0;
            break;
        }
        x=x/10;
    }   
 
    if (ravni)
        printf("Vse cifri v chisle 'n' ravni %d.",b);
    else
        printf("NE vse cifri v chisle 'n' ravni %d.",b);
 
    getch();
    return 0;
}
Добавлено через 2 минуты
А если надо сравнивать все цифры числа "n" с цифрой "a", и в случае их равенства вывести "Все цифры в числе n равны a", то программа выглядит следующим образом:
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
// помощь.cpp: определяет точку входа для консольного приложения.
//
 
#include "stdafx.h"
#include <conio.h>
 
int main()
{
    int a,n,b,k=0;
    int x; // переменная-накопитель (для проверки равенства всех цифр) x==n;
    bool ravni=1;
 
    printf("Vvedite chislo: ");
    scanf("%d",&n);
 
    printf("Vvedite cifru: ");
    scanf("%d",&a);
    x=n;
 
    while (n!=0)    // цикл для нахождения числа цифр, не равных "a"
    {
        b=n%10;
        if (b!=a) 
            k++;
        n=n/10;
    } 
    printf("Kolichestvo cifr, ne ravnih 'a': %d\n",k);
 
    while (x!=0)    // цикл для проверки равенства всех цифр в числе "n" цифре "b"
    {
        if((x%10)!=a)
        {
            ravni=0;
            break;
        }
        x=x/10;
    }   
 
    if (ravni)
        printf("Vse cifri v chisle 'n' ravni %d.",a);
    else
        printf("NE vse cifri v chisle 'n' ravni %d.",a);
 
    getch();
    return 0;
}
Yandex
Объявления
27.05.2013, 08:36     Сколько цифр в числе, которые равны "а"?
Ответ Создать тему
Опции темы

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