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

ready-only - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Гистограмма в в с++ http://www.cyberforum.ru/cpp-beginners/thread452353.html
Ребят, есть программа: #include <iostream> #include <vector> #include <string> #include <sstream> #include <conio> //////////////////////////////////////////////////////// using namespace std; //////////////////////////////////////////////////////// int main()
C++ Функция печати массива структуры. Здравствуйте, уважаемые обитатели сия форума. Прошу помощи. Есть структура: struct Student{ char Name; char Surname; int age; int Numbook; }; http://www.cyberforum.ru/cpp-beginners/thread452349.html
C++ Защита от ввода неправильных значений
Помогите переделать "защиту от дурака" с потокового ввода на защиту, которая будет работать со scanf`ом. // Радиус.cpp: определяет точку входа для консольного приложения. // #include "stdafx.h" #include "Радиус.h" #include <iostream> #include <cmath> #include <stdio.h>
Баланс скобок C++
Доброе утро, мне было задано написать программу о том, соответствует ли каждой открывающей скобке, каждая закрывающая, среди символов строки могут встречаться и другие символы... вот он код. Программа не работает при входных данных ывп() ()вапрвапоаопр()( ()()()()()()()( в чем проблема? помогите исправить, спасибо большое #include "cstring" #include "fstream" int main(){ std::ifstream...
C++ Изучение С/С++. Олимпиадное программирование http://www.cyberforum.ru/cpp-beginners/thread452346.html
Здравствуйте. Сейчас учусь на первом курсе, изучаю С, потом перейду на С++. В будущем планирую участвовать в олимпиадах по программированию. Какие бы вы могли дать советы по этому поводу (как следует заниматься, какую литературу использовать и т.д.)? Если сами участвовали в олимпиадах, поделитесь опытом. Заранее спасибо.
C++ Имеется N мужчин и N женщин. Имеются также данные о предпочтениях каждого мужчины к каждой женщине. Имеется N мужчин и N женщин. Имеются также данные о предпочтениях каждого мужчины к каждой женщине. Аналогичные данные имеются и для женщин. Требуется составить такой набор пар, чтобы общество, получившееся из таких семей, было наиболее счастливо . (Исходные данные задать самостоятельно). подробнее

Показать сообщение отдельно
Wbgury
 Аватар для Wbgury
88 / 85 / 2
Регистрация: 16.05.2010
Сообщений: 272
25.02.2012, 10:49     ready-only
Компилирую код в CodeBlocks вот такие ошибки:

||=== until, Debug ===|
K:\until\main.cpp||In function 'void mode(const int*, int*, int)':|
K:\until\main.cpp|69|error: assignment of read-only location '*(freq + ((unsigned int)(rating * 4u)))'|
K:\until\main.cpp|72|error: increment of read-only location '*(freq + ((unsigned int)(((unsigned int)(*(answer + ((unsigned int)(((unsigned int)j) * 4u))))) * 4u)))'|
||=== Build finished: 2 errors, 0 warnings ===|

Вот сам код:

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
114
115
116
117
118
119
120
121
122
123
124
#include <iostream>
#include <iomanip>
 
using namespace std;
 
void mean(const int[], int);
void median(int[], int);
void mode(const int[], int[], int);
void bubbleSort(int [], int);
void printArray(const int[], int);
 
int main()
{
    const int responseSize = 99;
    int frequency[10] = {0},
         response[responseSize] = {6, 7, 8, 9, 8, 7, 8, 9, 8, 9,
                                   7, 8, 9, 5, 9, 8, 7, 8, 7, 8,
                                   6, 7, 8, 9, 3, 9, 8, 7, 8, 7,
                                   7, 8, 9, 8, 9, 8, 9, 7, 8, 9,
                                   6, 7, 8, 7, 8, 7, 9, 8, 9, 2,
                                   7, 8, 9, 8, 9, 8, 9, 7, 5, 3,
                                   5, 6, 7, 2, 5, 3, 9, 4, 6, 3,
                                   7, 8, 9, 6, 8, 7, 8, 9, 7, 8,
                                   7, 4, 4, 2, 5, 3, 8, 7, 5, 6,
                                   4, 5, 6, 1, 6, 5, 7, 8, 7};
    mean(response, responseSize);
    median(response, responseSize);
    mode(frequency, response, responseSize);
    return 0;
}
 
void mean(const int answer[ ], int arraySize)
{
    int total = 0;
    cout << "*********" << endl << "Srednee" << endl
         << "*********" << endl;
 
    for (int j = 0; j < arraySize; j++)
        total += answer[j];
 
    cout << "Srednee znachenie dlya dannogo rascheta:" << setiosflags(ios::fixed | ios::showpoint)
         << setprecision(4) << (float) total / arraySize << endl << endl;
}
 
void median(int answer[ ], int size)
{
    cout << "*********" << endl << "Mediana" << endl
         << "*********" << endl
         << "Ne sortirovanni massiv:";
 
    printArray(answer, size);
    bubbleSort(answer, size);
    cout << endl << endl << "Sortirovanni massiv:";
    printArray(answer, size);
 
    cout << endl << endl << "Mediana - eto element " << size / 2
         << " is massiva " << endl << size << " sortirovannih elementov. " << endl
         << "Dlya dannogo rascheta mediana: "
         << answer[size / 2] << endl << endl;
}
 
void mode(const int freq[ ], int answer[ ], int size)
{
    int largest = 0, modeValue = 0;
    cout << "*********" << endl << "Moda" << endl
         << "*********" << endl;
 
    for (int rating = 1; rating <= 9; rating++)
        freq[rating] = 0; //cpp|69|error: assignment of read-only location '*(freq + ((unsigned int)(rating * 4u)))'|
 
    for (int j = 0; j < size; j++)
        ++freq[answer[j]];  // cpp|72|error: increment of read-only location '*(freq + ((unsigned int)(((unsigned int)(*
 
    cout << "Otvet" << setw(11) << "Castota"
         << setw(19) << "Gistogramma" << endl << endl << setw(54)
         << "1  1   2   2" << endl << setw(54)
         << "5  0   5   0   5" << endl << endl;
 
    for (int rating = 1; rating <= 9; rating++) {
        cout << setw(8) << rating << setw(11)
        << freq[rating] << "               ";
 
        if (freq[rating] > largest) {
            largest = freq[rating];
            modeValue = rating;
        }
 
        for (int h = 1; h <= freq[rating]; h++)
            cout << "*";
 
        cout << endl;
    }
 
    cout << "Moda - eto naibolee chasto vstechaushiesy znachenie." << endl
         << "Dlya dannogo rascheta moda ravna " << modeValue
         << ", vstrechaetsya " << largest << " raz."
         << endl;
}
 
void bubbleSort(int a[ ], int size)
{
    int hold;
 
    for (int pass = 1; pass < size; pass++)
 
        for (int j = 0; j < size - 1; j++)
 
            if (a[j] > a[j + 1]) {
                hold = a[j];
                a[j] = a[j + 1];
                a[j + 1] =  hold;
            }
}
 
void printArray(const int a[ ], int size)
{
    for (int j = 0; j < size; j++) {
 
        if (j % 20 == 0)
            cout << endl;
 
        cout << setw(2) << a[j];
    }
}
Добавлено через 2 минуты
мучаюсь уже часа 2, никак не пойму в чём ошибка. Для переменной rating уже изменял тип в unsigned int и массиву freq[], тоже пытался. Ничего не получается((((. Обьясните пожалуйста в чём проблема
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 13:02. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru