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

Несколько действий со строками объединить в одну функцию - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Не происходит считывание из файла http://www.cyberforum.ru/cpp-beginners/thread1153501.html
Зачастил я. Привет, еще раз всем.. Будьте добры, что не так? Считываю из файла таким образом: void Load(list<Info> &L) { list <Info>::iterator it; char sn = ""; int n = 0; it = L.begin();
C++ Посчитать корни уравнения по методу дихотомии Помогите найти ошибку Нужно посчитать корни по методу дихотомии. Когда в функции pow(x,4) - (13)*pow(x,2)+6; есть +6, не считает, когда нету, считает И только один коень. Заранее спасибо. Если можно, объясните поп подробнее, а то Хочется все понять. #include <iostream> #include <stdio.h> http://www.cyberforum.ru/cpp-beginners/thread1153466.html
C++ Напишите программу, которая вычислит площадь геометрической фигуры по ее входным параметрам с клавиатуры
Столкнулся с такой проблемой. Язык начал учить 2 дня назад, а уже лабораторную сдавать и не могу написать работающую программу. Цель в том (ЭТО ВСЕ ОДНО ЗАДАНИЕ, А НЕ НЕСКОЛЬКО) Все это происходит в Borland C++ Builder 6: 1.1. Напишите программу, которая вычислит площадь геометрической фигуры по ее входным параметрам с клавиатуры. А именно площадь поверхности цилиндра по его радиусу и высоте. Я...
Определить номер первой по порядку строки, содержащей наименьшее число нулей C++
Помогите, пожалуйста! Почему мне выдает строку, в которой наибольшее число нулей? Для квадратной целочисленной матрицы, заполненной случайными числами, порядка n определить номер первой по порядку строки, содержащей наименьшее число нулей. #include"stdafx.h" #include"iostream" #include"ctime" using namespace std; int main()
C++ Создание консольного теста: выводит задание и 4 варианта ответа http://www.cyberforum.ru/cpp-beginners/thread1153430.html
Дано задание сделать консольный тест на C++, который выводит вопрос и 4 варианта ответа. Вопрос и ответы программа берет из файла. Не очень понятен процесс проверки ответов. Не могли бы мне помочь?
C++ Виртуальные функции в классах - нужен пример Добрый день. Хочу сразу извиниться за столь простые вопросы (виртуальные функции считаются азами ООП). Однако я никак не могу вникнуть в виртаульные функции: и читал Страуструпа, и искал в интернете - понятнее не стало. Был бы очень благодарен, если кто-нибудь напишет понятным языком что такое виртаульные функции и с чем их едят на моем примере. Есть класс рациональных чисел: #ifndef... подробнее

Показать сообщение отдельно
Nikitich369
0 / 0 / 0
Регистрация: 27.05.2013
Сообщений: 12
21.04.2014, 19:59     Несколько действий со строками объединить в одну функцию
Помогите пожалуйста. Я провожу со строками несколько действий как мне сделать так, что бы эти действия объединить в одну функцию. Я пытался сделать но столкнулся с тем, что мне необходимо будет возвращать несколько значений, чего как мы знаем делать нельзя.
C++ (Qt)
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main ()
{
    setlocale (0,"");
    string str,comment,str_uncommented,mark,str_unmarked,op2,str_unop2,op1,task;
    size_t dot_comma,two_dots,comma,white;
// Вот эти действия мне нужно объединить
// Находим комментарий
    if (str.find(";")!=string::npos)
    {
        dot_comma=str.find(';');
        for (int i=(dot_comma+1);i<str.length();i++)
            comment+=str[i];
        for (int i=0;i<dot_comma;i++)
            str_uncommented+=str[i];
    }
    else
    {
        for (int i=0;i<str.length();i++)
            str_uncommented+=str[i];
    }
    // Ищем метку
    if (str_uncommented.find(":")!=string::npos)
    {
        two_dots=str_uncommented.find(':');
        for (int i=0;i<two_dots;i++)
            mark+=str_uncommented[i];
        for (int i=(two_dots+1);i<str_uncommented.length();i++)
            str_unmarked+=str_uncommented[i];
    }
    else
    {
            for (int i=0;i<str_uncommented.length();i++)
            str_unmarked+=str_uncommented[i];
    }
    // Ищем второй операнд
    if (str_unmarked.find(",")!=string::npos)
    {
        comma=str_unmarked.find(',');
        for (int i=(comma+1);i<str_unmarked.length();i++)
            op2+=str_unmarked[i];
        for (int i=0;i<comma;i++)
            str_unop2+=str_unmarked[i];
    }
    else
    {
        for (int i=0;i<str_unmarked.length();i++)
            str_unop2+=str_unmarked[i];
        
    }
    //Первый операнд и задача
    if (str_unop2.find(' ')!=string::npos)
    {
        white=str_unop2.find(' ');
        for (int i=white;i<str_unop2.length();i++)
            op1+=str_unop2[i];
        for (int i=0;i<white;i++)
            task+=str_unop2[i];
    }
    else
    {
        for (int i=0;i<str_unop2.length();i++)
            task+=str_unop2[i];
    }
return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 22:08. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru