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

Рекурсивная функция[] - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Дан файл,содержащий информацию о поступлении платежей по квартплате в текущий год http://www.cyberforum.ru/cpp-beginners/thread212164.html
Дан файл,содержащий информацию о поступлении платежей по квартплате в текущий год.Структура записи файла: -номер лицевого счета -фамилия -номер квартиры -номер месяца -сумма платежа Написать программу выдающую: -список номеров квартир с фамилиями жильцов ,от которых поступили платежи за указанный месяц. -суммарное значение поступивших с начала года платежей по заданному номеру лицевого...
C++ Двумерные массивы на С. Народ не могу составить программу на Turbo C . Нужно В одномерном массиве, состоящем из п вещественных элементов, вычислить: 1) номер минимального по модулю элемента массива; 2) сумму модулей элементов массива, расположенных после первого отрицательного элемента. Сжать массив, удалив из него все элементы, величина которых находится в интервале . Освободившиеся в конце массива элементы... http://www.cyberforum.ru/cpp-beginners/thread212162.html
Вычисление периметра многоугольника C++
Составить программу вычисления периметра многоугольника, в которой использовать подпрограмму вычисления координат точки пересечения двух прямых, заданных своими уравнениями, и подпрограмму вычисления расстояния между двумя точками, заданными своими координатами.
C++ Разложение в ряд, выручайте, Уважаемые)
#include <stdio.h> #include <math.h> int main () { double a,b,x ,z=1,count, sum=0, iter,n=1,toch; printf("vvedi x\n"); scanf("%lf", &x); printf("vvedi schag\n"); scanf("%lf", &a); printf("vvedi x konechnoe\n"); scanf("%lf", &b);
C++ Никак не могу разобраться с ошибкой. http://www.cyberforum.ru/cpp-beginners/thread212139.html
Задание: Имеются числа х1,х2,...,хn.Расставить их в таблице размером (nхn) так,чтобы в каждой строке и в каждом столбце каждое число встречалось по одному разу. Таблицу занести в файл. #include "stdafx.h" #include "set" #include "time.h" #include "iostream" using namespace std;
C++ Используя указатель, как параметр цикла, распечатать массив с конца, пропуская элементы, кратные 3 Создать целочисленный массив из 10 элементов. Используя указатель в качестве параметра цикла: распечатать массив с конца, пропуская элементы, кратные 3 подробнее

Показать сообщение отдельно
Mr.X
Эксперт С++
3049 / 1694 / 265
Регистрация: 03.05.2010
Сообщений: 3,867
16.12.2010, 01:20
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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
//////////////////////////////////////////////////////////////////////////////////////
//проверить, соответствует ли введенная последовательность символов понятию скобки:
//<скобки> ::= <круглые> | <квадратные>
//<круглые> ::= (<квадратные><квадратные>) | +
//<квадратные> ::= [<круглые><круглые>] | -
//////////////////////////////////////////////////////////////////////////////////////
#include <cctype>
#include <iostream>
#include <string>
//////////////////////////////////////////////////////////////////////////////////////
typedef std::string  T_str;
//////////////////////////////////////////////////////////////////////////////////////
//Объявления функций:
bool  parse_parentheses(T_str&  s);
//////////////////////////////////////////////////////////////////////////////////////
bool  parse_symb(T_str&  s, const char  c)
{
    bool  res_bool =    !s.empty() 
                     && s[0] == c;
    if(res_bool)
    {
        s.erase(0, 1);        
    }
    return res_bool;
}
//////////////////////////////////////////////////////////////////////////////////////
bool  parse_minus(T_str&  s)
{
    return parse_symb(s, '-');
}
//////////////////////////////////////////////////////////////////////////////////////
bool  parse_plus(T_str&  s)
{
    return parse_symb(s, '+');
}
//////////////////////////////////////////////////////////////////////////////////////
bool  parse_open_square_bracket(T_str&  s)
{
    return parse_symb(s, '[');
}
//////////////////////////////////////////////////////////////////////////////////////
bool  parse_close_square_bracket(T_str&  s)
{
    return parse_symb(s, ']');
}
//////////////////////////////////////////////////////////////////////////////////////
bool  parse_open_parenthesis(T_str&  s)
{
    return parse_symb(s, '(');
}
//////////////////////////////////////////////////////////////////////////////////////
bool  parse_close_parenthesis(T_str&  s)
{
    return parse_symb(s, ')');
}
//////////////////////////////////////////////////////////////////////////////////////
bool  parse_square_brackets(T_str&  s)
{
    return    parse_minus(s)
           ||    parse_open_square_bracket(s)
              && parse_parentheses(s)
              && parse_parentheses(s)
              && parse_close_square_bracket(s);
}
//////////////////////////////////////////////////////////////////////////////////////
bool  parse_parentheses(T_str&  s)
{
    return    parse_plus(s)
           ||    parse_open_parenthesis(s)
              && parse_square_brackets(s)
              && parse_square_brackets(s)
              && parse_close_parenthesis(s);
}
//////////////////////////////////////////////////////////////////////////////////////
bool  parse_brackets(T_str&  s)
{
    return    parse_parentheses(s)
           || parse_square_brackets(s);           
}
//////////////////////////////////////////////////////////////////////////////////////
bool  is_brackets(T_str  s)
{
    return     parse_brackets(s)
            && s.empty();          
}
//////////////////////////////////////////////////////////////////////////////////////
int main()
{
    std::locale::global(std::locale(""));
    std::cout << "Введите строку для проверки, не является ли она скобками."
              << std::endl;
 
    T_str  s;
    for(;;)
    {
        std::cout << std::endl
                  << "-> ";
        getline(std::cin, s);        
        if(s.empty()) break;
        std::cout << "Строка "
                  << (is_brackets(s) ? "" : "НЕ ")
                  << "является скобками."
                  << std::endl;    
    }
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru