0 / 0 / 0
Регистрация: 26.02.2020
Сообщений: 17
1

С++ Работа со строкой

26.03.2020, 01:10. Показов 326. Ответов 1

Author24 — интернет-сервис помощи студентам
Дана строка, в которой находятся слова и числа, отделенные друг от друга пробелами. Найти сумму чисел, записанных в строке.

Код работает. Как вывести обработку строки с помощью функции?

#include "iostream"
#include "string"
#include "fstream"

using namespace std;

int main()
{
setlocale(LC_ALL, "RUS");
char* stroka = new char[100];
char* number = new char[50];
cout << "Строка : ";
int sum = 0;
int p = 1;
int index = 0;
cin.getline(stroka, 100);
for (int i = 0; i < strlen(stroka); i++) {
if (stroka[i] != ',' && (i == 0 || stroka[i - 1] == ' ')) {
sum += atoi(stroka + index);
}
if (stroka[i] == ' ') index = i + 1;
}
cout << "Сумма чисел : " << sum << endl;
return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.03.2020, 01:10
Ответы с готовыми решениями:

Работа с файлами, чтение/работа со строкой
Доброго времени суток. Начал работать с C++ Builder 6. Есть текстовый файл .txt с различными...

Работа со строкой
Здравствуйте! Помогите с такой проблемой, нужно вырывать цифры перед запятой, что-то в этом роде:...

Работа со строкой
Помогите, что нибудь из этого сделать! 1.Напечатать первое слово, содержащее 2 подряд заданных...

Работа со строкой
Есть такой сайт, 220vk.com В нём есть текстовое поле, куда нужно вводить айди/домен пользователя....

1
599 / 237 / 69
Регистрация: 08.08.2015
Сообщений: 1,637
26.03.2020, 08:44 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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#include <iostream>
//#include "iostream"
#include <string>
/// не играйся с ковычками раз не понимаешь чем отличаются
//#include "fstream"
 
using namespace std;
 
int mySum(char *stroka){
    int sum = 0;
    int index = 0;
    for (size_t i = 0; i < strlen(stroka); i++) {
        if (stroka[i] != ',' && (i == 0 || stroka[i - 1] == ' ')) {
            sum += atoi(stroka + index);
        }
        if (stroka[i] == ' ') index = i + 1;
    }
    return sum;
}
 
int main()
{
    setlocale(LC_ALL, "RUS");
    char *stroka = new char[100]; /// Сори а на кой подключаете string,
    char *number = new char[50];  /// или препод Ленина видел? <- кстати не используете эту строку
    cout << "Строка : ";
    cin.getline(stroka, 100);
    /*
    int sum = 0;
    int p = 1;
    int index = 0;
 
 
    for (int i = 0; i < strlen(stroka); i++) {
        if (stroka[i] != ',' && (i == 0 || stroka[i - 1] == ' ')) {
            sum += atoi(stroka + index);
        }
        if (stroka[i] == ' ') index = i + 1;
    }
    */
    cout << "Сумма чисел : " << mySum(stroka) << endl;
    return EXIT_SUCCESS;
}
0
26.03.2020, 08:44
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.03.2020, 08:44
Помогаю со студенческими работами здесь

работа со строкой
есть цикл::help: for i:=length(soz) downto 1 do begin okon_y:=soz; ...

Работа со строкой
Основное задание: Есть рядок символов. Вывести длину самого длинного слова в рядке. Кто-то...

Работа со строкой
Здравствуйте, помогите пожалуйста. Имеется строка с адресом к примеру 352331 Россия, г....

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


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru