Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/58: Рейтинг темы: голосов - 58, средняя оценка - 4.88
1 / 1 / 0
Регистрация: 12.10.2011
Сообщений: 165

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

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

Студворк — интернет-сервис помощи студентам
Дана строка, изображающая целое положительное число. Вывести сумму цифр этого числа.(используя указатели и функции)
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
07.04.2012, 21:17
Ответы с готовыми решениями:

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

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

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

15
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38174 / 21109 / 4307
Регистрация: 12.02.2012
Сообщений: 34,711
Записей в блоге: 14
07.04.2012, 21:28
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 / 6
Регистрация: 07.04.2012
Сообщений: 51
07.04.2012, 21:45
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
1 / 1 / 0
Регистрация: 12.10.2011
Сообщений: 165
08.04.2012, 00:55  [ТС]
в этом коде ошибка
0
 Аватар для Mogost
7 / 6 / 6
Регистрация: 07.04.2012
Сообщений: 51
08.04.2012, 07:35
Цитата Сообщение от verena-12358 Посмотреть сообщение
в этом коде ошибка
Какая? И какой компилятор? В Borland C++ 3.1 все ок.
0
Диссидент
Эксперт C
 Аватар для Байт
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
08.04.2012, 10:08
C
1
2
3
4
5
int f2(char z)
{
  if (z>'0' && z<='9') return(z-'0');
  else return(0);
}
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38174 / 21109 / 4307
Регистрация: 12.02.2012
Сообщений: 34,711
Записей в блоге: 14
08.04.2012, 11:12
Это у тебя не строка, а СИМВОЛ. И где суммирование?
0
Диссидент
Эксперт C
 Аватар для Байт
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
08.04.2012, 12:15
Цитата Сообщение от Catstail Посмотреть сообщение
Это у тебя не строка, а СИМВОЛ. И где суммирование?
Я просто модифицировал часть кода уважаемого Mogost,
0
 Аватар для Mogost
7 / 6 / 6
Регистрация: 07.04.2012
Сообщений: 51
08.04.2012, 12:33
Цитата Сообщение от Байт Посмотреть сообщение
Я просто модифицировал часть кода уважаемого Mogost,
Офтоп.
Можешь пояснить подробнее
C++
1
return(z-'0');
0
1 / 1 / 0
Регистрация: 12.10.2011
Сообщений: 165
08.04.2012, 13:52  [ТС]
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
512 / 464 / 81
Регистрация: 07.04.2012
Сообщений: 869
Записей в блоге: 1
08.04.2012, 13:57
verena-12358, попробуй подключить
C++
1
#include <stdio.h>
Или есть ещё ошибки?
0
 Аватар для Kuzia domovenok
4268 / 3327 / 926
Регистрация: 25.03.2012
Сообщений: 12,531
Записей в блоге: 1
08.04.2012, 13:59
Русские шрифты в консоли
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
3 / 3 / 1
Регистрация: 29.04.2011
Сообщений: 34
08.04.2012, 14:01
Попробуй так:
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 / 4
Регистрация: 18.05.2010
Сообщений: 83
08.04.2012, 14:02
У меня на VC 2008 всё работает. Разве что русский шрифт подключить надо бы.
0
1 / 1 / 0
Регистрация: 12.10.2011
Сообщений: 165
08.04.2012, 15:12  [ТС]
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
 Аватар для 3BEPb_TyTa
18 / 18 / 4
Регистрация: 18.05.2010
Сообщений: 83
09.04.2012, 17:24
Цитата Сообщение от verena-12358 Посмотреть сообщение
digit = int(*(str+i)) - int('0');
вот вершина используется как указатель )
что именно нужно сделать с помощью указателей?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
09.04.2012, 17:24
Помогаю со студенческими работами здесь

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

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

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

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

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


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

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru