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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 21, средняя оценка - 5.00
verena-12358
1 / 1 / 0
Регистрация: 12.10.2011
Сообщений: 165
#1

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

07.04.2012, 21:17. Просмотров 3081. Ответов 15
Метки нет (Все метки)

Дана строка, изображающая целое положительное число. Вывести сумму цифр этого числа.(используя указатели и функции)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.04.2012, 21:17
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Дана строка, изображающая целое положительное число. Вывести сумму цифр этого числа (C++):

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

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

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

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

Для данного числа m найти наименьшее положительное целое число с суммой цифр m и которое делится m - C++
Для данного числа m найти наименьшие положительное целое число с суммой цифр m, которое делится m. ВВОД: Во входном файле записано m ...

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

15
Catstail
Модератор
22711 / 11080 / 1795
Регистрация: 12.02.2012
Сообщений: 18,272
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;
}
0
Mogost
7 / 6 / 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;
}
0
verena-12358
1 / 1 / 0
Регистрация: 12.10.2011
Сообщений: 165
08.04.2012, 00:55  [ТС] #4
в этом коде ошибка
0
Mogost
7 / 6 / 1
Регистрация: 07.04.2012
Сообщений: 51
08.04.2012, 07:35 #5
Цитата Сообщение от verena-12358 Посмотреть сообщение
в этом коде ошибка
Какая? И какой компилятор? В Borland C++ 3.1 все ок.
0
Байт
Эксперт C
16324 / 10600 / 1587
Регистрация: 24.12.2010
Сообщений: 20,207
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);
}
0
Catstail
Модератор
22711 / 11080 / 1795
Регистрация: 12.02.2012
Сообщений: 18,272
08.04.2012, 11:12 #7
Это у тебя не строка, а СИМВОЛ. И где суммирование?
0
Байт
Эксперт C
16324 / 10600 / 1587
Регистрация: 24.12.2010
Сообщений: 20,207
08.04.2012, 12:15 #8
Цитата Сообщение от Catstail Посмотреть сообщение
Это у тебя не строка, а СИМВОЛ. И где суммирование?
Я просто модифицировал часть кода уважаемого Mogost,
0
Mogost
7 / 6 / 1
Регистрация: 07.04.2012
Сообщений: 51
08.04.2012, 12:33 #9
Цитата Сообщение от Байт Посмотреть сообщение
Я просто модифицировал часть кода уважаемого Mogost,
Офтоп.
Можешь пояснить подробнее
C++
1
return(z-'0');
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;
 
}
Помогите в коде исправить ошибку
0
Schizorb
509 / 461 / 16
Регистрация: 07.04.2012
Сообщений: 865
Записей в блоге: 1
Завершенные тесты: 1
08.04.2012, 13:57 #11
verena-12358, попробуй подключить
C++
1
#include <stdio.h>
Или есть ещё ошибки?
0
Kuzia domovenok
1892 / 1747 / 119
Регистрация: 25.03.2012
Сообщений: 5,936
Записей в блоге: 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" );//!!!!!!!!!!!!!!!!!!!!!
.........................
других ошибок не вижу
0
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');
!
0
3BEPb_TyTa
18 / 18 / 1
Регистрация: 18.05.2010
Сообщений: 83
08.04.2012, 14:02 #14
У меня на VC 2008 всё работает. Разве что русский шрифт подключить надо бы.
0
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;
 
}
А если так??? Только как сделать с указателями???
0
08.04.2012, 15:12
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.04.2012, 15:12
Привет! Вот еще темы с ответами:

От данного числа N вычтем сумму цифр этого числа, от полученного числа опять вычтем сумму цифр и т.д. до тех пор, пока число положительно - C++
И опять: сколько можно? Задано натуральное число N. От данного числа вычтем сумму цифр этого числа, от полученного числа опять...

Дана строка, изображающая арифметическое выражение. Вывести значение - C++
помогите пожалуйста решить 1)Дана строка, изображающая арифметическое выражение вида «&lt;циф- ра&gt;±&lt;цифра&gt;±…±&lt;цифра&gt;», где на месте ...

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

Ввести целое число N. Вывести все простые делители этого числа - C++
прошу помочь над 2 задачами в с++: 1. Ввести целое число N. Вывести все простые делители этого числа 2. Ввести строку и слово,...


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

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

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