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

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

Войти
Регистрация
Восстановить пароль
 
MiroffAlex
0 / 0 / 0
Регистрация: 15.08.2013
Сообщений: 7
#1

Символьный массив (просуммировать элементы массива и вывести их сумму) - C++

15.08.2013, 18:17. Просмотров 525. Ответов 7
Метки нет (Все метки)

Задача состоит в том чтоб просумировать елементы масива и вывести их сумму. Масив заполняется числами, он может заполнятся не полностю поетому использую функцыю gets(). Пример вход: 236 выход:11
Вот что получилось 155
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <cstdio>
 
using namespace std;
 
int main (){
    int sum = 0;
    char *x = new char [65];
    gets(x);
 
    for (int i = 0; i < 3; i++){
        sum += x[i];
    }
    printf ("%d\n", sum);
 
    system ("pause");
 
    return 0;
}
Помогите решить ету проблему.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.08.2013, 18:17
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Символьный массив (просуммировать элементы массива и вывести их сумму) (C++):

Массив. Просуммировать конкретные элементы - C++
1. Одномерный массив G целых трехзначных десятичных чисел содержит 64 элемента. Просуммировать элементы 1, 4, 9, 16, 25, 36, 49, 64 ...

Как просуммировать элементы массива? - C++
cut Пока сделал так: (НЕ знаю как просуммировать теперь). #include&lt;iostream&gt; using namespace std; int isNumber,r; char *p,str,t;...

Просуммировать элементы массива используя указатели - C++
III. Создайте 5 елементный статический массив переменных типа int и заполните его произвольными значениями. Затем создайте указатель,...

Сформировать и вывести на экран новый массив, который будет содержать вначале все элементы массива A(0), затем все элементы массива B(4) - C++
Здравствуйте! Помогите написать парочку программ... 3. Даны массивы A(0) и B(4). Сформировать и вывести на экран новый массив,...

Преобразовать строки в целые числа, просуммировать и вывести сумму 4 значений - C++
Напишите программу, которая вводит 4 строки, представляющие целые значения, преобразует строки в целые числа, суммирует и выводит сумму 4...

Просуммировать элементы массива со значениями больше трех - C++
Добрый вечер! Напишите, пожалуйста, код программы для нахождения суммы элементов больших 3 (Массив). Заранее спасибо!

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
alsav22
5419 / 4815 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
15.08.2013, 18:25 #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <cstdio>
 
using namespace std;
 
int main (){
    int sum = 0;
    char *x = new char [65];
    gets(x);
 
    for (int i = 0; i < 3; i++){
        sum += x[i] - 48;
    }
    printf ("%d\n", sum);
 
    system ("pause");
 
    return 0;
}
1
korep
52 / 45 / 9
Регистрация: 06.01.2013
Сообщений: 597
15.08.2013, 18:28 #3
Цитата Сообщение от MiroffAlex Посмотреть сообщение
sum += x[i];
ты этим строку в int суммируешь
C++
1
sum += (size_t(x[i])<10)?size_t(x[i]):0;
попробуй так
0
MiroffAlex
0 / 0 / 0
Регистрация: 15.08.2013
Сообщений: 7
15.08.2013, 18:35  [ТС] #4
Цитата Сообщение от alsav22 Посмотреть сообщение
C++
1
        sum += x[i] - 48;
А почему -48?
0
korep
52 / 45 / 9
Регистрация: 06.01.2013
Сообщений: 597
15.08.2013, 18:36 #5
ASCII?

Добавлено через 30 секунд
(155-11)/3 = 48
0
alsav22
5419 / 4815 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
15.08.2013, 18:39 #6
Цитата Сообщение от MiroffAlex Посмотреть сообщение
А почему -48?
Код цифр (символов) отличается от их числового значения на 48. Код '0' == 48, код '1' == 49 и т.д.
0
MiroffAlex
0 / 0 / 0
Регистрация: 15.08.2013
Сообщений: 7
15.08.2013, 18:41  [ТС] #7
Спасибо все сработало
0
castaway
Эксперт С++
4884 / 3020 / 370
Регистрация: 10.11.2010
Сообщений: 11,078
Записей в блоге: 10
Завершенные тесты: 1
15.08.2013, 18:55 #8
Цитата Сообщение от korep Посмотреть сообщение
C++
1
sum += (size_t(x[i])<10)?size_t(x[i]):0;
что это?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.08.2013, 18:55
Привет! Вот еще темы с ответами:

Просуммировать все элементы массива, которые находятся между первым и последним нулем - C++
У меня такая задача: мне надо просуммировать все элементы массива, которые находятся между первым нулем в массиве и последним нулем. Для...

Подсчитать элементы массива меньшие нуля и вывести сумму этих элементов - C++
1. Ввести с клавиатуры одномерный массив из 5 чисел , подсчитать элементы меньше нуля и вывести сумму этих элементов на экран монитора.

Записать положительные элементы массива X подряд в массив Y. Определить k – количество положительных элементов. Вычислит сумму элементов массива Y - C++
Записать положительные элементы массива X=(x1,x2,…, xn) подряд в массив Y=(y1,y2,…, yk). Определить k – количество положительных...

Заменить 0 элементы массива на 1 и вывести массив в обратном порядке - C++
Двумерный динамический массив, через пользовательскую функцию. Массив типа float. Заменить 0 элементы массива на 1 и вывести массив в...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
15.08.2013, 18:55
Ответ Создать тему
Опции темы

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