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

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

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 21, средняя оценка - 5.00
verena-12358
1 / 1 / 0
Регистрация: 12.10.2011
Сообщений: 165
07.04.2012, 21:17     Дана строка, изображающая целое положительное число. Вывести сумму цифр этого числа #1
Дана строка, изображающая целое положительное число. Вывести сумму цифр этого числа.(используя указатели и функции)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.04.2012, 21:17     Дана строка, изображающая целое положительное число. Вывести сумму цифр этого числа
Посмотрите здесь:

C++ Ввести целое N. Вывести количество десятичных цифр, необходимых для представления этого числа.
C++ От данного числа N вычтем сумму цифр этого числа, от полученного числа опять вычтем сумму цифр и т.д. до тех пор, пока число положительно
. Дана строка, изображающая десятичную запись целого положительного числа. Вывести строку, изображающую двоичную запись этого же числа C++
C++ Дана последовательность n натуральных чисел. Для каждого числа вычислить количество его цифр и сумму этих цифр. Вывести на экран каждое число, количес
дана строка, изображающая целое положительное число. Вывести сумму цифр этого числа. Строка должна вводиться с клавиатуры. C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Catstail
Модератор
 Аватар для Catstail
21495 / 10248 / 1669
Регистрация: 12.02.2012
Сообщений: 17,135
07.04.2012, 21:28     Дана строка, изображающая целое положительное число. Вывести сумму цифр этого числа #2
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
#include "iostream.h"
 
int sum_dig(char *s)
{
    int ss=0;
 
    while (*s != 0)
    {
        ss=ss+(*s++)-'0';
    }
 
    return ss;
}
 
int main(int argc, char* argv[])
{
 
    char *S="12345";
     
    cout << "Init number is " << S << endl;
    cout << "Sum of digits ys " << sum_dig(S) << endl;
 
    return 0;
}
Mogost
 Аватар для Mogost
7 / 7 / 1
Регистрация: 07.04.2012
Сообщений: 51
07.04.2012, 21:45     Дана строка, изображающая целое положительное число. Вывести сумму цифр этого числа #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
36
37
38
39
#include <stdio.h>
#include <conio.h>
int f(char*);
int f2(char);
void main()
{  
char *str;
printf("str=");
gets(str);
puts(str);
printf("Summa=%d",f(str));
getch();
}
 
int f(char* str)
{
    int i=0,s=0;
    while(*(str+i))
    {
    s=s+(f2(*(str+i)));
    ++i;
    }
    return s;
}
 
int f2(char z)
{
    if(z==48) return 0;
    if(z==49) return 1;
    if(z==50) return 2;
    if(z==51) return 3;
    if(z==52) return 4;
    if(z==53) return 5;
    if(z==54) return 6;
    if(z==55) return 7;
    if(z==56) return 8;
    if(z==57) return 9;
    else return 0;
}
verena-12358
1 / 1 / 0
Регистрация: 12.10.2011
Сообщений: 165
08.04.2012, 00:55  [ТС]     Дана строка, изображающая целое положительное число. Вывести сумму цифр этого числа #4
в этом коде ошибка
Mogost
 Аватар для Mogost
7 / 7 / 1
Регистрация: 07.04.2012
Сообщений: 51
08.04.2012, 07:35     Дана строка, изображающая целое положительное число. Вывести сумму цифр этого числа #5
Цитата Сообщение от verena-12358 Посмотреть сообщение
в этом коде ошибка
Какая? И какой компилятор? В Borland C++ 3.1 все ок.
Байт
 Аватар для Байт
13976 / 8807 / 1228
Регистрация: 24.12.2010
Сообщений: 15,956
08.04.2012, 10:08     Дана строка, изображающая целое положительное число. Вывести сумму цифр этого числа #6
C
1
2
3
4
5
int f2(char z)
{
  if (z>'0' && z<='9') return(z-'0');
  else return(0);
}
Catstail
Модератор
 Аватар для Catstail
21495 / 10248 / 1669
Регистрация: 12.02.2012
Сообщений: 17,135
08.04.2012, 11:12     Дана строка, изображающая целое положительное число. Вывести сумму цифр этого числа #7
Это у тебя не строка, а СИМВОЛ. И где суммирование?
Байт
 Аватар для Байт
13976 / 8807 / 1228
Регистрация: 24.12.2010
Сообщений: 15,956
08.04.2012, 12:15     Дана строка, изображающая целое положительное число. Вывести сумму цифр этого числа #8
Цитата Сообщение от Catstail Посмотреть сообщение
Это у тебя не строка, а СИМВОЛ. И где суммирование?
Я просто модифицировал часть кода уважаемого Mogost,
Mogost
 Аватар для Mogost
7 / 7 / 1
Регистрация: 07.04.2012
Сообщений: 51
08.04.2012, 12:33     Дана строка, изображающая целое положительное число. Вывести сумму цифр этого числа #9
Цитата Сообщение от Байт Посмотреть сообщение
Я просто модифицировал часть кода уважаемого Mogost,
Офтоп.
Можешь пояснить подробнее
C++
1
return(z-'0');
verena-12358
1 / 1 / 0
Регистрация: 12.10.2011
Сообщений: 165
08.04.2012, 13:52  [ТС]     Дана строка, изображающая целое положительное число. Вывести сумму цифр этого числа #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
26
27
28
29
30
31
32
33
34
35
36
37
#include <string.h>
 
 
 
 
 
int _tmain(int argc, _TCHAR* argv[])
 
{
 
        char *str ="1234567890";
 
        int i,len,sum,digit;
 
        len = strlen(str);
 
        sum = 0;
 
        for(i = 0; i < len; i++)
 
        {
 
                digit = str[i]-'0';
 
                sum += digit;
 
        }
 
        printf("Заданная строка %s\n",str);
 
        printf("Сумма цифр %d\n",sum);
 
        getchar();
 
        return 0;
 
}
Помогите в коде исправить ошибку
Schizorb
 Аватар для Schizorb
508 / 460 / 16
Регистрация: 07.04.2012
Сообщений: 865
Записей в блоге: 1
Завершенные тесты: 1
08.04.2012, 13:57     Дана строка, изображающая целое положительное число. Вывести сумму цифр этого числа #11
verena-12358, попробуй подключить
C++
1
#include <stdio.h>
Или есть ещё ошибки?
Kuzia domovenok
 Аватар для Kuzia domovenok
1883 / 1738 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
08.04.2012, 13:59     Дана строка, изображающая целое положительное число. Вывести сумму цифр этого числа #12
Русские шрифты в консоли
C++
1
2
3
4
5
int _tmain(int argc, _TCHAR* argv[]){
        char *str ="1234567890";
        int i,len,sum,digit;
        setlocale( LC_ALL,"Russian" );//!!!!!!!!!!!!!!!!!!!!!
.........................
других ошибок не вижу
Izhachok
3 / 3 / 0
Регистрация: 29.04.2011
Сообщений: 34
08.04.2012, 14:01     Дана строка, изображающая целое положительное число. Вывести сумму цифр этого числа #13
Попробуй так:
for(i = 0; i < len; i++)
{
digit = int(str[i]) - int('0');
sum += digit;
}

Так ещё короче:
sum += int(str[i]) - int('0');
!
3BEPb_TyTa
 Аватар для 3BEPb_TyTa
18 / 18 / 1
Регистрация: 18.05.2010
Сообщений: 83
08.04.2012, 14:02     Дана строка, изображающая целое положительное число. Вывести сумму цифр этого числа #14
У меня на VC 2008 всё работает. Разве что русский шрифт подключить надо бы.
verena-12358
1 / 1 / 0
Регистрация: 12.10.2011
Сообщений: 165
08.04.2012, 15:12  [ТС]     Дана строка, изображающая целое положительное число. Вывести сумму цифр этого числа #15
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include<stdio.h>
#include <string.h>
 
int main()
 
{
 
        char *str ="1234567890";
        int i,len,sum,digit;
        len =strlen(str);
        sum = 0;
        for(i = 0; i < len; i++) 
 { 
 digit = int(str[i]) - int('0'); 
 sum += digit; 
 }
 
        printf("your string %s\n",str);
        printf("summa %d\n",sum);
            return 0;
 
}
А если так??? Только как сделать с указателями???
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.04.2012, 17:24     Дана строка, изображающая целое положительное число. Вывести сумму цифр этого числа
Еще ссылки по теме:

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

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

Или воспользуйтесь поиском по форуму:
3BEPb_TyTa
 Аватар для 3BEPb_TyTa
18 / 18 / 1
Регистрация: 18.05.2010
Сообщений: 83
09.04.2012, 17:24     Дана строка, изображающая целое положительное число. Вывести сумму цифр этого числа #16
Цитата Сообщение от verena-12358 Посмотреть сообщение
digit = int(*(str+i)) - int('0');
вот вершина используется как указатель )
что именно нужно сделать с помощью указателей?
Yandex
Объявления
09.04.2012, 17:24     Дана строка, изображающая целое положительное число. Вывести сумму цифр этого числа
Ответ Создать тему
Опции темы

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