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

правильно ли я выполнил задание? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Работа со звуком http://www.cyberforum.ru/cpp-beginners/thread640709.html
Здравствуйте, вот занимаюсь работай со звуком, вообще задача стоит в том что б сделать оцифровку звука, записать данные в буфер и вывести полученые числа (случайные, таковыми они должны быть, двоичные) в консоль, пока без необходимости нормировки, сделать чистый вывод! Подскажите, каким образом это сделать? Я так понимаю что нужно в функции processData указать вывод, или лучше сделать вывод в...
C++ Вызов функций Можно ли программно вызвать все функции записанные в файле? http://www.cyberforum.ru/cpp-beginners/thread640695.html
Удаление символа C++
как удалить последний символ в файле ???
в чём может быть ошибка? C++
char brackets; while( (strlen(brackets)-1) != '~' ) { cin.getline(brackets, 500); cout << brackets << endl; if((strlen(brackets)-1) == '~')
C++ Переопределение, множественная инициализация http://www.cyberforum.ru/cpp-beginners/thread640666.html
Что означает эта ошибка ??? 1>------ Построение начато: проект: FUN_TO__, Конфигурация: Debug Win32 ------ 1>Компиляция... 1>FUN_TO__.cpp 1>c:\users\егор\desktop\fun_to__\fun_to__\fun+\dir\variables.h(6) : error C2086: unsigned int X: переопределение 1> c:\users\егор\desktop\fun_to__\fun_to__\fun+\dir\controlpanel.h(7): см. объявление 'X'...
C++ Выбор среды Eclipse Пришлось озаботиться вопросам на переход к бесплатной IDE для C++. Выбор пал на Eclipse. Настроил Eclipse IDE for C/C++ Developers. Вопрос в другом. Тут: http://wiki.eclipse.org/Eclipse/Installation. Я покачал мануалы Эклипс и посерфил, и так и не могу четко понять структуру следующее: 1. Они дополняют/заменяют/взаимоисключают друг друга? 2. Есть списки там по зарекомендовавшимся себя по... подробнее

Показать сообщение отдельно
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
22.08.2012, 09:44     правильно ли я выполнил задание?
Я бы сделал как-нибудь так...
Особо не тестировал.

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
#include <iostream>
#include <string>
#include <deque>
#include <algorithm>
 
int main()
{
   const std::string l_brackets = "([<{";
   const std::string r_brackets = ")]>}";
   const std::string test_s = "(<[{}[{}([])]]([<>])>)";
   
   std::deque<char> brackets;
   auto find = [](const std::string& s, char c) { return std::find(s.begin(), s.end(), c); };
   auto pos = test_s.begin();
   for (; pos != test_s.end(); ++pos)
   {
      if (find(l_brackets, *pos) != l_brackets.end())
      {
         brackets.push_back(*pos);
      }
      else
      {
         auto r_pos = find(r_brackets, *pos);
         if (r_pos != r_brackets.end())
         {
            auto c_pos = std::find(brackets.begin(), brackets.end(), l_brackets[r_pos - r_brackets.begin()]);
            if (c_pos == brackets.end())
            {
               break;
            }
            brackets.pop_back();
         }
      }
   }
   std::cout << "Expression is right: " << std::boolalpha << (pos == test_s.end() && brackets.empty()) << std::endl;
}
http://liveworkspace.org/code/ef69a6...7abb5e17f681b9
 
Текущее время: 20:51. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru