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

Разность цифр в числе... - C++

Восстановить пароль Регистрация
 
stalkersev
|____WTF!?____|
 Аватар для stalkersev
84 / 83 / 6
Регистрация: 01.06.2010
Сообщений: 227
20.10.2010, 20:40     Разность цифр в числе... #1
Программа разделяет число на цифры и находит их разность, только вот неправильно находит..

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
 
using std::cout;
using std::cin;
 
int main()
{
        
                 int a,s, x;
               
        cout<<"cifra= ";
        cin>>a;
        x = a;
        s = 0;
 
        while (x != 0)
                {
                    s = s - (x % 10);
                    s = (x % 10);
                    x = x / 10;
                }
        cout<<s;
}
Не подскажите пожалуйста, как переделать код?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
quazee
14 / 14 / 0
Регистрация: 15.10.2010
Сообщений: 49
20.10.2010, 20:43     Разность цифр в числе... #2
во первых иожно просто написать
C++
1
while(x)
без !=0

Добавлено через 1 минуту
123

ответ 1-2-3 ?
stalkersev
|____WTF!?____|
 Аватар для stalkersev
84 / 83 / 6
Регистрация: 01.06.2010
Сообщений: 227
20.10.2010, 20:45  [ТС]     Разность цифр в числе... #3
Цитата Сообщение от quazee Посмотреть сообщение
ответ 1-2-3 ?
должно напечататься -4
quazee
14 / 14 / 0
Регистрация: 15.10.2010
Сообщений: 49
20.10.2010, 20:52     Разность цифр в числе... #4
я бы сделал так
C++
1
2
3
4
5
6
7
8
9
10
11
while(x>0)
{
x/10;
u++;
}
i=x/(pow(10,u-1);
while(x>9)
{
i-=x%10;
x=x/10;
}
Добавлено через 1 минуту
C++
1
using namespace std;
Не работает?
stalkersev
|____WTF!?____|
 Аватар для stalkersev
84 / 83 / 6
Регистрация: 01.06.2010
Сообщений: 227
20.10.2010, 21:16  [ТС]     Разность цифр в числе... #5
Цитата Сообщение от quazee Посмотреть сообщение
я бы сделал так
C++
1
2
3
4
5
6
7
8
9
10
11
while(x>0)
{
x/10;
u++;
}
i=x/(pow(10,u-1);
while(x>9)
{
i-=x%10;
x=x/10;
}
Добавлено через 1 минуту
C++
1
using namespace std;
Не работает?
Чё-то не работает...функция pow , хотя все библиотеки добавил...
quazee
14 / 14 / 0
Регистрация: 15.10.2010
Сообщений: 49
20.10.2010, 21:34     Разность цифр в числе... #6
#include<cmath>
stalkersev
|____WTF!?____|
 Аватар для stalkersev
84 / 83 / 6
Регистрация: 01.06.2010
Сообщений: 227
20.10.2010, 21:52  [ТС]     Разность цифр в числе... #7
Теперь, то всё работает, но не правильно
quazee
14 / 14 / 0
Регистрация: 15.10.2010
Сообщений: 49
20.10.2010, 23:16     Разность цифр в числе... #8
u занулял?
stalkersev
|____WTF!?____|
 Аватар для stalkersev
84 / 83 / 6
Регистрация: 01.06.2010
Сообщений: 227
21.10.2010, 14:01  [ТС]     Разность цифр в числе... #9
Цитата Сообщение от quazee Посмотреть сообщение
u занулял?
да...
MILAN
 Аватар для MILAN
883 / 777 / 86
Регистрация: 21.02.2009
Сообщений: 1,722
21.10.2010, 14:21     Разность цифр в числе... #10
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
#include <iostream>
 
using std::cin;
using std::cout;
using std::endl;
 
int main()
{
  int n,arr[10],rz=0,c,i=0;
  cout<<"Enter n ";
  cin>>n;
   for(n,i; n>0; n/=10,i++)
   {
       c=n%10;
       arr[i]=c;
   }
   rz=arr[i-1];
   for(int j=i-2; j>=0; j--)
   {
        rz-=arr[j];
   }
   cout<<rz;
   system("pause");
return 0;
}
stalkersev
|____WTF!?____|
 Аватар для stalkersev
84 / 83 / 6
Регистрация: 01.06.2010
Сообщений: 227
21.10.2010, 14:29  [ТС]     Разность цифр в числе... #11
Цитата Сообщение от MILAN Посмотреть сообщение
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
#include <iostream>
 
using std::cin;
using std::cout;
using std::endl;
 
int main()
{
  int n,arr[10],rz=0,c,i=0;
  cout<<"Enter n ";
  cin>>n;
   for(n,i; n>0; n/=10,i++)
   {
       c=n%10;
       arr[i]=c;
   }
   rz=arr[i-1];
   for(int j=i-2; j>=0; j--)
   {
        rz-=arr[j];
   }
   cout<<rz;
   system("pause");
return 0;
}


ОГРОМНОЕ спасибо, всё работает правильно!!!
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.10.2010, 14:55     Разность цифр в числе...
Еще ссылки по теме:

Сумма цифр в числе C++
Рекурсия: количество цифр в числе, сумма цифр и реверс числа C++
C++ Получить число, состоящее из суммы цифр, если оно четное - найти сумму двух первых цифр, иначе - разность

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

Или воспользуйтесь поиском по форуму:
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9372 / 5422 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
21.10.2010, 14:55     Разность цифр в числе... #12
C
1
2
3
4
5
6
7
8
9
10
11
12
#include <stdio.h>
 
int diff_digits(int num) { return ( num / 10 ) ? diff_digits(num / 10) - num % 10 : num; }
 
int main(void){
    int num;
    
    while ( printf("Number: ") && scanf("%d", &num) == 1 && num )
        printf("Difference of digits: %d\n", diff_digits(num));
    
    return 0;
}
Yandex
Объявления
21.10.2010, 14:55     Разность цифр в числе...
Ответ Создать тему
Опции темы

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