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

Задача по строкам и пунктуации на C++ - C++

Восстановить пароль Регистрация
 
Sergei066800
1 / 1 / 0
Регистрация: 30.09.2012
Сообщений: 8
16.05.2013, 02:08     Задача по строкам и пунктуации на C++ #1
Я только изучаю C++, учусь по видеоурокам и учебникам, но почему то по строкам очень мало написано... Срочно нужна ваша помощь, на завтра, точнее уже на сегодня нужно сделать программу на C++.

Вот условие:

В произвольном тексте из 10 предложений расположить в алфавитном порядке слова в каждом предложении. Использовать файлы нельзя...

Или эту задачу:

В произвольном тексте из 10 предложений определить, какой из знаков препинания встречается чаще всего и заменить его символом "*". Также нельзя использовать файлы...

Решить любую на выбор, какая вам легче. Очень нужно, сегодня уже будет сдача лаб... Надеюсь на вас. Заранее спасибо!

Добавлено через 14 минут
Никто не сможет помочь?

Добавлено через 19 секунд
Никто не сможет помочь?

Добавлено через 8 секунд
Никто не сможет помочь?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.05.2013, 02:08     Задача по строкам и пунктуации на C++
Посмотрите здесь:

Задача по строкам в С C++
C++ Задача по строкам
Задача по строкам!!! C++
C++ Задача по строкам
C++ Задача по строкам!String
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
stima
430 / 285 / 16
Регистрация: 22.03.2011
Сообщений: 928
Завершенные тесты: 1
16.05.2013, 02:54     Задача по строкам и пунктуации на C++ #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
44
45
46
47
48
#include <map>
#include <string>
#include <iostream>
 
std::map<char, int> parse(const std::string& str)
{
    std::map<char, int> ret;
 
    for (int i = 0; i < str.size(); ++i)
    {
        char c = str[i];
 
        if      (c == '.') ret[c]++;
        else if (c == '!') ret[c]++;
        else if (c == '?') ret[c]++;
        /*etc*/
    }
 
    return ret;
}
 
int main()
{
    std::cout << "Enter ten sentences. Each sentence delimited by enter." << std::endl << std::endl;
 
    for (int i = 0; i < 10; ++i)
    {
        std::cout << "Enter one: ";
        std::string line;
        std::getline(std::cin, line);
        std::cout << std::endl;
 
        std::map<char, int> punctuations = parse(line);
        if (punctuations.empty())
            continue;
 
        std::map<char, int>::const_iterator cit = ++punctuations.begin();
        
        int c = punctuations.begin()->first,  max = punctuations.begin()->second;
        for ( ; cit != punctuations.end(); ++cit)
            if (cit->second > max) 
                c = cit->first;
 
        std::cout << "Punctuation: " << char(c) << " count: " << max << std::endl;
    }
 
    return 0;
}
Sergei066800
1 / 1 / 0
Регистрация: 30.09.2012
Сообщений: 8
16.05.2013, 17:06  [ТС]     Задача по строкам и пунктуации на C++ #3
stima, замены нет?

Добавлено через 36 минут
Помогите пожалуйста!

Добавлено через 13 часов 29 минут
Помогите
stima
430 / 285 / 16
Регистрация: 22.03.2011
Сообщений: 928
Завершенные тесты: 1
16.05.2013, 17:49     Задача по строкам и пунктуации на C++ #4
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
44
45
46
47
48
49
50
51
52
53
54
55
#include <vector>
#include <string>
#include <sstream>
#include <iostream>
#include <algorithm>
 
std::vector<std::string> split(const std::string& str)
  {
  std::stringstream ss(str);
  std::vector<std::string> splitted;
  
  for (std::string temp; ss >> temp; splitted.push_back(temp));
 
  return splitted;
  }
 
int main()
  {
  std::cout << "Enter ten sentences. Each sentence delimited by enter." << std::endl << std::endl;
 
  for (int i = 0; i < 10; ++i)
    {
    std::cout << "Enter one: ";
    std::string line;
    std::getline(std::cin, line);
    std::cout << std::endl;
 
    std::vector<std::string> words = split(line);
    if (words.empty())
      continue;
 
    std::sort(words.begin(), words.end(),
      [](const std::string& rhs, const std::string& lhs) -> bool
      {
      size_t count = std::max(rhs.size(), lhs.size());
      
      for (size_t i = 0; i < count; ++i)
        {
        char r = ::tolower(rhs[i]);
        char l = ::tolower(lhs[i]);
 
        /*should we check alpha only?*/
        if (r != l) return r < l;
        }
      
      return false;
      });
 
    std::cout << "Sorted: " << std::endl;
    for (auto it = words.begin(); it != words.end(); ++it)
      std::cout << *it << std::endl;
    }
 
  return 0;
  }
Sergei066800
1 / 1 / 0
Регистрация: 30.09.2012
Сообщений: 8
16.05.2013, 18:56  [ТС]     Задача по строкам и пунктуации на C++ #5
stima, у меня выдает множество ошибок...Работаю на dev-c++ 4.9.9.2
Yandex
Объявления
16.05.2013, 18:56     Задача по строкам и пунктуации на C++
Ответ Создать тему
Опции темы

Текущее время: 22:33. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru