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

Проверить правильность расстановки скобок - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Удалить все непарные строки двумерного массива http://www.cyberforum.ru/cpp-beginners/thread1121317.html
Написать в одной программе: 1. Удалить все непарные строки двумерного массива. 2. Добавить строку после той строки, которая содержит наибольший элемент. Пожалуйста помогите с написанием программы. Буду очень благодарен, за любую оказанную помощь. :)
C++ Описать структуру с именем "Price" Собственно,заполнять вроде заполняет,да и выводит тоже...вот только с сортировкой не пойму что не так... Как только не пробовал,и так как тут,и отдельно поля менять (например,tovarswap=price.tovar) ничего не вышло... Печально,помогите пожалуйста с кодом! Заодно,был бы очень благодарен,если укажете на как можно код сделать лучше,что использовать лучше... Даже не знаю как сказать может операторы... http://www.cyberforum.ru/cpp-beginners/thread1121307.html
Создать файл в которым буден записано k случайных перестановок чисел C++
Прошу помощи в написании нескольких несложных программ: 1 создать файл в которым буден записано k случайных перестановок чисел {1,2,3,4,5,6,7,8,9} 2 программа которая создает файл имеющий все перестановки чисел {1,2,3,4,5} и их количество 3 программа которая генерирует все 3 частичные вариации чисел {1,2,3,4,5} как создать файл то я знаю а вот с основной частью имею проблему
Пузырьковая сортировка, разобрать код C++
#include <stdio.h> #include <stdlib.h> #include <conio.h> #include <time.h> #include <iostream> void main() { setlocale (0,"Russian"); int const n=10,k=30; int a;
C++ Составить программу реализующую функцию калькулятора производящего арифметические действия http://www.cyberforum.ru/cpp-beginners/thread1121284.html
Пожалуйста, помогите составить программу реализующую функцию калькулятора производящего арифметические действия ( +; -; *; / ) и функции перевода вещественных чисел из одной произвольной системы счисления в другую. Язык программирования - любой. Мне очень нужна эта программа с скриншотами но уменя пока не совсем все получается.
C++ Построить гиперболическую спираль Здравствуйте. Задание следующее - построить гиперболическую спираль (r = a × j1/2 + d) в полярной системе координат. Дело в том, что я вообще не имею представления о том, как строить графики в С++. Пытался поискать что-то в интернете, но ничего стоящего не нашел :( Если вы не знаете, как выполнить задание, то подскажите хотя бы, как вообще графики в С++ строить:) Ну, и если обладаете сей... подробнее

Показать сообщение отдельно
IGPIGP
Комп_Оратор)
 Аватар для IGPIGP
6156 / 2885 / 281
Регистрация: 04.12.2011
Сообщений: 7,680
Записей в блоге: 3
12.04.2014, 03:35     Проверить правильность расстановки скобок
Цитата Сообщение от bldY Посмотреть сообщение
закрывающая скобка того же вида), то вывести число 0. В противном случае вывести или номер позиции, в которой расположена первая ошибочная скобка, или, если закрывающих скобок не хватает, число −1.
bldY, представьте что первая ошибочная скобка стоит вначале:
")123+345"
Функция вернёт 0?
Постановка задачи мне не нравится.
Вот такой вариант показывает неоднозначность:
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
#include <iostream>
#include <string>
using namespace std;
bool verify_parenses(string source_str, char parence_left, char parence_right, int& err_pos){
int cnt=0;
err_pos=0;
int sz = (int)source_str.size();
for(int i = 0; i < sz; ++i){
if( source_str[i] == parence_left )cnt++;
if( source_str[i] == parence_right )cnt--;
if(cnt < 0){
cout<<"\nBad parenses verification by placement \")(\"! \nin bool verify_parenses() \nat source_str:\n"<<source_str<<endl<<endl;
err_pos=i;
return false;
}
    }
if(!cnt)return true; 
cout<<"\nBad parenses verification balans! \nin bool verify_parenses() \nat source_str:\n"<<source_str<<endl<<endl;
err_pos=-1;
return false;
}
 
int main(){
int err_pos;
string str1="((1+2)*3+1)/3"; 
if (verify_parenses(str1, '(', ')', err_pos))cout<<"allright";
cout<<"\nerr_pos= "<<err_pos<<endl;
 
string str2=")(1+2)*3+1/3"; 
if (verify_parenses(str2, '(', ')', err_pos))cout<<"allright";
cout<<"\nerr_pos= "<<err_pos<<endl;
 
string str3="((1+2)*3+1/3"; 
if (verify_parenses(str3, '(', ')', err_pos))cout<<"allright";
cout<<"\nerr_pos= "<<err_pos<<endl;
 
system("pause"); 
    return 0; 
}
Хотя может я и не понял условия.
 
Текущее время: 00:00. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru