Форум программистов, компьютерный форум, киберфорум
Наши страницы

Ошибка: "Expression must be modifiable lvalue" - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Преобразование строки в имя типа http://www.cyberforum.ru/cpp-beginners/thread993178.html
Дали задание - разработать контейнер. С этим проблем не было, но далее для тестирования понадобилось каким-то образом ввести тип данных, хранящихся в нём с клавиатуры. Даже не представляю как это...
C++ Как регулярно считывать последнюю строку в файле Добрый день. Имеется текстовый файл. Он постоянно обновляется и в его конец дописываются строки. Необходимо считывать новую строку непосредственно в string, как только она появляется в файле. Вот и... http://www.cyberforum.ru/cpp-beginners/thread993170.html
C++ Заменить все пробелы на запятые, а запятые на точки. Посчитать количество запятых во введенной строке
Во введенной строке заменить все пробелы на запятые, а запятые на точки. Посчитать количество запятых во введенной строке. Нужно написать программу. Заранее благодарен.
Построить алгоритм декодирования сообщений закодированных кодом простым повторением C++
Построить алгоритм декодирования сообщений закодированных кодом простым повторением. Можете объяснить что от меня хотят, или как его написать?
C++ Программа по классам. Вообще ничего не получается, хотя с виду все просто http://www.cyberforum.ru/cpp-beginners/thread993144.html
Создать класс «арифметическое выражение» с компонентными данными: 1-й аргумент, 2-й аргумент, знак арифметического выражения (перечислимого типа – ‘+’, ‘–‘, ’*’, ‘/’). Определить компонентные...
C++ Создать массив с рядка символов. Найти дисперсию элементов этого массива. Сформировать новый массив Создать массив с рядка символов. Найти дисперсию элементов этого массива. Сформировать новый массив, вставив среднее арифметическое в средину массива.Удалить заданое количество символов, начиная с... подробнее

Показать сообщение отдельно
Tima0406
0 / 0 / 0
Регистрация: 26.10.2013
Сообщений: 4

Ошибка: "Expression must be modifiable lvalue" - C++

30.10.2013, 22:57. Просмотров 744. Ответов 1
Метки (Все метки)

Всем привет. Есть одна проблемка. vs2010 выдает ошибку в строке 20 Error: Expression must be modifiable lvalue. Также в строке 51 Error: Expression must have pointer-to-object type. В чем проблема? Помогите, пожалуйста!
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
106
107
108
109
110
111
112
113
#include <iostream>
 
using namespace std;
 
class Bubble
{
public:
    int N;
    int M;
    int *arr;
    int *output;
    Bubble()
    {
        cout<< "Input number of keys: \n";
        cin>> N;
        cout<< "Input number of keys for binary search: \n";
        cin>> M;
        arr = new int[N];
        output = new int[N];
    }
    void input();
    void bubbleSort();
    int binary(int);
    void output();
};
 
void Bubble::input()
{
    cout<< "Input keys: \n";
    int k;
    for (int i = 0; i< N; i++)
    {
        cin>>arr[i];
    }
    cout<< "Initial array: \n";
    for (int i = 0; i< N; i++)
        cout<<arr[i] << "  ";
}
 
void Bubble::bubbleSort()
{
    int max=arr[0];
    
    for (int i=1;i<N;i++) {
        if (arr[i]>max) { 
            max=arr[i];
        }
    }
    
    for (int i=0;i<N;i++) {
        output[i]=0;
    }
    int *temp=new int[max+1];
    for (int i=0;i<max+1;i++) {
        temp[i]=0;
    }
    for (int i=0;i<N;i++){
        temp[arr[i]]=temp[arr[i]]+1;
    }
    for (int i=1;i<max+1;i++) {
        temp[i]=temp[i]+temp[i-1];
    }
    for (int  i=N-1;i>=0;i--) {
        output[temp[arr[i]]-1]=arr[i];
        temp[arr[i]]=temp[arr[i]]-1;
    }
 
}
 
int Bubble::binary(int x)
{
    int low, high, mid;
 
low = 0;
high = N - 1;
while(low <= high)
    {
mid = (low + high) / 2; 
if(x <arr[mid])              
high = mid - 1;
else if(x >arr[mid])
low = mid + 1;
else
return mid;
    }
return -1;
}
 
void Bubble::output()
{
    int k;
    cout<< "\n" << "Sorted array: \n";
    for (int i = 0; i< N; i++)
        cout<<output[i] << "  ";
    for (int j = 0; j < M; j++)
    {
        cout<< "\n" << "Input key for search: \n";
        cin>> k;
        if(binary(k) < 0)
            cout<< "There is no such key!\n";
        else
            cout<< "The index of the key is: " << binary(k) + 1 << "\n";
    }
}
 
int main()
{
    Bubble b;
    b.input();
    b.bubbleSort();
    b.output();
    
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru