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

Определить сумму чётных разрядов числа и произведение нечётных - C++

Восстановить пароль Регистрация
 
Rikk
45 / 5 / 1
Регистрация: 10.06.2011
Сообщений: 263
10.10.2011, 17:18     Определить сумму чётных разрядов числа и произведение нечётных #1
Здравствуйте! Вот какое у меня задание. Дано целое число, определить сумму чётных разрядов и произведение нечётных

Добавлено через 47 минут
код, вот где ошибка?

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
#include <stdio.h>
#include <math.h>
#include <conio.h>
int main()
{
long int x, s, k, p, a, z, os, t;
printf("\nEnter a:");
scanf("%ld", &a);
z=a;
s=k=t=0;
p=1;
m1: a=a/10;
k++;
if(a>0) goto m1;
printf("\n%ld\n", k);
os=k-k/2*2;
if(os==0)
{
k=0;
w1: x=z-z/10*10;
z=z/10;
k++;
os=z-z/2*2;
if(os==0) s=s+x;
p=p*x;
if(z!=0) goto w1;
printf("Summary =%ld, proizvedenie =%ld", s, p);
}
else
{
w2: x=z-z/10*10;
p=p*x;
t++;
z=z/10;
x=z-z/10*10;
s=s+x;
t++;
if(t<k) goto w2;
printf("Summary =%ld, proizvedenie =%ld", s, p);
}
getch();
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.10.2011, 17:18     Определить сумму чётных разрядов числа и произведение нечётных
Посмотрите здесь:

C++ Найти сумму чётных и нечётных чисел массива
C++ Найти сумму Максимум(среди чётных)+Минимум(среди нечётных)
C++ Поменять местами цифры числа, стоящие на чётных и нечётных местах
Проверить, как изменилось количество разрядов в числе M по сравнению с количеством разрядов числа N C++
C++ Проверить как изменится количество разрядов в числе M по сравнению с количеством разрядов числа N
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Thinker
Эксперт C++
 Аватар для Thinker
4215 / 2189 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
10.10.2011, 17:22     Определить сумму чётных разрядов числа и произведение нечётных #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Для 2 и более разрядных чисел:

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
void Count(long a, long *sum, long *prod)
{
   int i = 0;
   *sum = 0;
   *prod = 1;
   while (a)
   {
       if (i & 1)
          *prod *= a % 10;
       else *sum += a % 10;
       a /= 10;
       i++;
   }
}
int main()
{
   long sum, prod, a;
   scanf("%ld", &a);
   Count(a, &sum, &prod);
   printf("sum = %ld prod = %ld\n", sum, prod);
   return 0;
}
Rikk
45 / 5 / 1
Регистрация: 10.06.2011
Сообщений: 263
10.10.2011, 17:24  [ТС]     Определить сумму чётных разрядов числа и произведение нечётных #3
Цитата Сообщение от Thinker Посмотреть сообщение
Для 2 и более разрядных чисел:

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
void Count(long a, long *sum, long *prod)
{
   int i = 0;
   *sum = 0;
   *prod = 1;
   while (a)
   {
       if (i & 1)
          *prod *= a % 10;
       else *sum += a % 10;
       a /= 10;
       i++;
   }
}
Это добавить надо?
YusipovIlsur
11 / 11 / 2
Регистрация: 17.12.2010
Сообщений: 52
10.10.2011, 17:25     Определить сумму чётных разрядов числа и произведение нечётных #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
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
#include <iostream>
using namespace std;
 
char c[2];  //c[0]->сумма чётный,c[1]->произведение нечётных (глобальный массив)
 
int enter() //функция ввода числа
{
    int ent;
    cin>>ent;
    return ent;
}
 
int product(int n)  //подсчёт произведения нечётных разрядов
{
    int x=1;
    while ((int)n!=0)
    {
        x=(n%10)*x;
        n=n/100;
    }
    return x;
}
 
int sum (int m)     //функция подсчёта суммы чётных разрядов
{
    int y=0;
    while ((int)m!=0)
    {
        y=((m%100)/10)+y;
        m=m/100;
    }
    return y;
}
 
int main(int argc, char* argv[])
{
    int number=enter();
    cout<<"sum="<<sum(number)<<endl;
    cout<<"product="<<product(number)<<endl;
    return 0;
}
Thinker
Эксперт C++
 Аватар для Thinker
4215 / 2189 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
10.10.2011, 17:27     Определить сумму чётных разрядов числа и произведение нечётных #5
Цитата Сообщение от Rikk Посмотреть сообщение
Это добавить надо?
Нет, там целая программа в #2
Rikk
45 / 5 / 1
Регистрация: 10.06.2011
Сообщений: 263
10.10.2011, 17:30  [ТС]     Определить сумму чётных разрядов числа и произведение нечётных #6
Не идёт у меня никакая из прог, ошибка(((
Thinker
Эксперт C++
 Аватар для Thinker
4215 / 2189 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
10.10.2011, 17:32     Определить сумму чётных разрядов числа и произведение нечётных #7
Сообщение было отмечено автором темы, экспертом или модератором как ответ
У меня все работает, библиотеку просто надо подключить

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 <stdio.h>
void Count(long a, long *sum, long *prod)
{
   int i = 0;
   *sum = 0;
   *prod = 1;
   while (a)
   {
       if (i & 1)
          *prod *= a % 10;
       else *sum += a % 10;
       a /= 10;
       i++;
   }
}
 
int main()
{
   long sum, prod, a;
   scanf("%ld", &a);
   Count(a, &sum, &prod);
   printf("sum = %ld prod = %ld\n", sum, prod);
   getchar();
   return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.10.2011, 17:34     Определить сумму чётных разрядов числа и произведение нечётных
Еще ссылки по теме:

C++ Вычислить произведение k старших разрядов (находящихся слева) цифр числа
C++ Вычислить произведение сумм чётных и нечётных элементов массива
C++ Определить количество чётных и нечётных десятичных цифр в числе

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

Или воспользуйтесь поиском по форуму:
Rikk
45 / 5 / 1
Регистрация: 10.06.2011
Сообщений: 263
10.10.2011, 17:34  [ТС]     Определить сумму чётных разрядов числа и произведение нечётных #8
Спасибо!
Yandex
Объявления
10.10.2011, 17:34     Определить сумму чётных разрядов числа и произведение нечётных
Ответ Создать тему
Опции темы

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