Во входной строке записаны целые числа через запятую, найти их сумму - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Не понимаю как работать с строками... У меня есть задача... Во входной строке записаны целые числа через запятую. Найдите их сумму. ВХОДНЫЕ ДАННЫЕ Программа получает на вход строку, содержащую цифры, знаки +/- и запятые. Необходимо разбить эту строку по запятым на числа и вычислить их сумму. Длина строки не превосходит 1000 символов. Строка содержит хотя бы одно число, начинается и заканчивается не с запятой, никакие две запятые не идут подряд. Между двумя соседними запятыми записано корректное целое число, не превосходящее по модулю 106106, которое может начинаться со знака "+" или "-".

Ввод: 12,-5,+8

Вывод: 15

Получилось только так... но это неправильно (условие задачи совсем другое)
Листинг программы
  1. #include <iostream>
  2. #include <string>
  3. using namespace std;
  4. int main(){
  5. string str;
  6. int sum = 0;
  7. cin >> str;
  8. cout << endl;
  9. for(int i = 0; i < str.length(); i++){
  10. if (str[i] == ',')
  11. {
  12. i++;
  13. }
  14. sum += (int)str[i] - 48;
  15. }
  16. cout << sum << endl;
  17. return 0;
  18. }

Решение задачи: «Во входной строке записаны целые числа через запятую, найти их сумму»

textual
Листинг программы
  1. #include<stdio.h>
  2. int main(void)
  3. {
  4.     int x,sum=0;
  5.     do
  6.     {
  7.         scanf("%d",&x);
  8.         sum+=x;
  9.     }while(getchar()!='\n');
  10.     printf("%d\n",sum);
  11.     return 0;
  12. }

Объяснение кода листинга программы

  1. Подключение стандартной библиотеки ввода-вывода
  2. Объявление переменных: x (целое число для хранения значения числа с плавающей точкой), sum (целое число для хранения суммы чисел), и sum_temp (временная переменная для промежуточных вычислений)
  3. Ввод чисел с клавиатуры и сохранение их в массив
  4. Вычисление суммы чисел в массиве
  5. Вывод суммы на экран
  6. Вернуть 0 для завершения программы

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 3.5 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы