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

преобразования символов в числа - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ пользовательские функции, которые вычисляют соответственно минимум и максимум http://www.cyberforum.ru/cpp-beginners/thread266094.html
пользовательские функции, которые вычисляют соответственно минимум и максимум . Вычислите значение выражения:
C++ Переделать шаблон - функций Условие: Подсчитать среднее арифметическое элементов, расположенных выше главной диагонали. Программу я сделал, но препод просит другого. Нужно сделать программу в общем виде, т.е вводить... http://www.cyberforum.ru/cpp-beginners/thread266091.html
C++ Ввод русских букв в консольно программе
Я добавил в программу #include <locale.h> setlocale(LC_ALL,"russian"); Русский язык заработал. Но только при выводе текста. А когда вводишь текст в программу то она не понимает. Например...
В двумерном массиве найти в каждой строке максимальный элемент, затем среди этих чисел выбрать минимальный C++
1.в двумерном массиве найти в каждой строке максимальный элемент, затем среди этих чисел выбрать минимальный. 2.характеристикой столбца целочисленной матрицы назовем сумму модулей его отрицательных...
C++ Используя разные условные операторы напишите два варианта программы обработки результатов экзаменов в группе из 20 студентов http://www.cyberforum.ru/cpp-beginners/thread266075.html
Используя разные условные операторы напишите два варианта программы обработки результатов экзаменов в группе из 20 студентов. Оценки вводятся последовательно в одну переменную. Программа должна...
C++ Напечатать таблицу тренировок и определить суммарный путь, который пробежит спортсмен за 7 дней. Начав тренировки,спортсмен в первый день пробежал 10км. Каждый следующий день он увеличивал дневную норму на 10% от нормы предыдущего дня. Напечатать таблицу тренировок и определить суммарный путь,... подробнее

Показать сообщение отдельно
xAtom
915 / 740 / 60
Регистрация: 09.12.2010
Сообщений: 1,346
Записей в блоге: 1
29.03.2011, 17:34
Попробуй этот вариант.

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
#include <stdio.h>
 
// вот функция пердай ей строку типа 235+777+234+7...N вернёт сумму в операнде int
int  get_sum_str(const char*  hStr) {
    int sum      = 0;
    char  num[12];
    char* fill    = num;
    memset(num, '\0', sizeof(num));
    do {
         if( *hStr >= '0' && *hStr <= '9' ) {  
     *fill = *hStr;
     ++fill;
         } else {
     sum += atoi(num);
     memset(num, '\0', sizeof(num));
     fill = num;
        }
   } while( *hStr++ != '\0' );
   return  sum;
}
 
 
void main() {
 
   // вот проверка работы данной функции
   printf("%d\n", get_sum_str("1+1+1+1+1")  );
   printf("%d\n", get_sum_str("100+100+100+100+100")  );
   printf("%d\n", get_sum_str("200+300+1500+8000")  );
 
getchar();
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru