Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Задание массивов, вывод их на печать и вычисление вспомогательных выражений https://www.cyberforum.ru/ cpp-beginners/ thread1139213.html
Здравствуйте помогите пожалуйста написать программу. Заданы 3 массива случайных вещественных чисел, определённой размерности A, B, C Необходимо вычислить значение М при помощи вычисления...
C++ Работа с многострочным текстом(введенным из консоли)
Имеется условие: С клавиатуры вводится многострочный текст. Оставить в тексте только первые вхождения каждой буквы, остальные – удалить. Вывести слова полученного текста, которые начинаются и...
C++ С++ для совсем чайников https://www.cyberforum.ru/ cpp-beginners/ thread1139187.html
1. Лодка перемещается сначала по течению реки, а затем против течения. Вычислить путь пройденной лодкой, если её скорость в стоячей воде v км/ ч скорость течения vr км/ч, время движения по течению t1...
C++ Строку в вектор https://www.cyberforum.ru/ cpp-beginners/ thread1139179.html
vector<string> result; vector<string>::iterator it; string str; cin>>str; result.push_back(str); for (it = result.begin(); it!=result.end(); ++it) { cout<<*it<<endl;
C++ Составить программу-генератор простых чисел, в основу положить формулу 2*(x)^2 + 29 при 0 ≥ х ≥ 28
Составить программу-генератор простых чисел, в основу положить формулу 2*(x)^2 + 29 при 0 ≥ х ≥ 28. Нужно ввести число до которого сгенерирует все простые числа положив в основу данную формулу. Я...
C++ Вычисление значений (С++) https://www.cyberforum.ru/ cpp-beginners/ thread1139149.html
Помогите с вычислениями значений. Перепишите задание внутри сообщения
C++ Перегрузка copy() https://www.cyberforum.ru/ cpp-beginners/ thread1139131.html
Здравствуйте, уважаемые. Пробую создать копию библиотечной функции copy(): template<class Iter1, class Iter2> Iter2 temp_copy(Iter1 first, Iter1 last, Iter2 dest) { if (first = last) return dest;...
Замена самого длинного и самого короткого слова в строках C++
День добрый. Индексы для замены я получил, 1-ую строку меняет, а с другими проблема. Компилятор жалуется и выскакивает окно и пишет: необработанное исключение по адресу 0x00EA2FD1..... Проблема,...
C++ Линейный однонаправленный список Всем доброго времени суток. Небольшая проблема с использованием однонаправленного списка. Вместо первого элемента почему-то выводится мусор. Помогите исправить. #include <iostream> #include... https://www.cyberforum.ru/ cpp-beginners/ thread1139118.html C++ Super Mario на C++ и OpenGL Всем привет. Решил написать марио на opengl. Пока это все без текстур. Проблема в том, что уже который день не получается написать корректную функцию столкновения персонажа с блоками. Может кто писал... https://www.cyberforum.ru/ cpp-beginners/ thread1139112.html
ООП как можно ограничить доступ к методу производного классу C++
Покажите пожалуйста небольшой пример как это можно реализовать
C++ Узнать тип объекта передаваемого по ссылке https://www.cyberforum.ru/ cpp-beginners/ thread1139109.html
Есть класс А, класс В наследник, в классе С в методе будет приходить объект по ссылке на базовый класс, как узнать к какому классу он принадлежит А или В ? class A { public: A(); ~A(); ...
2 / 2 / 1
Регистрация: 04.03.2014
Сообщений: 65
0

Ошибка в коде? - C++ - Ответ 6000482

04.04.2014, 22:06. Показов 662. Ответов 1
Метки (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток. Учусь по книге Дейтелов "Как программировать на С++"...Перепечатал оттуда пример в компилятор, но он не компилируется. Код:

Заголовок GradeBook.h
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <string>
using std::string;
 
class GradeBook {
public:
    const static int students = 10;
    GradeBook(string, const int[]);
    void setCourseName(string);
    string getCourseName();
    void displayMessage();
    void processGrades();
    int getMinimum();
    int getMaximum();
    double getAverage();
    void outputBarChart();
    void outputGrades();
private:
    string courseName;
    int grades[students];
}
Определения функций GradeBook.cpp
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
#include <iostream>
#include <iomanip>
using namespace std;
 
#include "GradeBook.h"
 
GradeBook::GradeBook(string name, const int gradesArray[]) {
    setCourseName(name);
    for(int grade = 0; grade < students; grade++)
        grades[grade] = gradesArray[grade];
}
void GradeBook::setCourseName(string name) {
    courseName = name;
}
string GradeBook::getCourseName() {
    return courseName;
}
void GradeBook::displayMessage() {
    cout << "Welcome to the grade book for\n" << getCourseName() << "!" << endl;
}
void GradeBook::processGrades() {
    outputGrades();
    cout << "\nClass average is " << setprecision(2) << fixed << getAverage() << endl;
    cout << "Lowest grade is " << getMinimum()
        << "\nHighest grade is " << getMaximum() << endl;
    outputBarChart();
}
int GradeBook::getMinimum() {
    int lowGrade = 100;
    for(int grade = 0; grade < students; grade++) {
        if(grades[grade] < lowGrade)
            lowGrade = grades[grade];
    }
    return lowGrade;
}
int GradeBook::getMaximum() {
    int highGrade = 0;
    for(int grade = 0; grade < students; grade++) {
        if(grades[grade] > highGrade)
            highGrade = grades[grade];
    }
    return highGrade;
}
double GradeBook::getAverage() {
    int total = 0;
    for(int grade = 0; grade < students; grade++)
        total += grades[grade];
    return static_cast<double>(total) / students;
}
void GradeBook::outputBarChart() {
    cout << "\nGrade distributoin: " << endl;
    const int frequencySize = 11;
    int frequency[frequencySize] = {0};
    for(int grade = 0; grade < students; grade++)
        frequency[grades[grade] / 10]++;
    for(int count = 0; count < frequencySize; count++) {
        if(count == 0)
            cout << " 0-9: ";
        else if(count == 10)
            cout << " 100: ";
        else
            cout << count * 10 << "-" << (count * 10) + 9 << ": ";
        for(int stars = 0; stars < frequency[count]; stars++) 
            cout << "*";
        cout << endl;
    }
}
void GradeBook::outputGrades() {
    cout << "\nThe grades are:\n\n";
    for(int student = 0; student < students; student++)
        cout << "Student " << setw(2) << student + 1 << ": "
        << setw(3) << grades[student] << endl;
}
Сама программа testGrade.cpp
C++
1
2
3
4
5
6
7
8
9
#include "GradeBook.h"
 
int main() {
    int gradesArray[GradeBook::students] = {87, 68, 94, 100, 83, 78, 85, 91, 76, 87};
    GradeBook myGradeBook("CS101 Introduction to C++ Programming", gradesArray);
    myGradeBook.displayMessage();
    myGradeBook.processGrades();
    return 0;
}

Компилятор пишет это:

1>e:\in_game\my_models_projects\mvs_projects\testproject\tst\testgrade.cpp(3): error C2628: недопустимый "GradeBook" с последующим "int" (возможно, отсутствует ";")
1>e:\in_game\my_models_projects\mvs_projects\testproject\tst\testgrade.cpp(3): error C3874: возвращаемый тип "main" должен быть "int", а не "GradeBook"
1>e:\in_game\my_models_projects\mvs_projects\testproject\tst\testgrade.cpp(8): error C2664: GradeBook::GradeBook(const GradeBook &): невозможно преобразовать параметр 1 из "int" в "const GradeBook &"
1> Причина: невозможно преобразовать "int" в "const GradeBook"
1> Ни один конструктор не смог принять исходный тип, либо разрешение перегрузки конструктора неоднозначно
1> GradeBook.cpp
1>e:\in_game\my_models_projects\mvs_projects\testproject\tst\gradebook.cpp(7): error C2533: GradeBook::{ctor}: конструкторы не разрешены для возвращаемого типа
1> Создание кода...
1>
1>СБОЙ построения.

Что тут не так, вроде все проверил, ошибок не нашел.

Вернуться к обсуждению:
Ошибка в коде? C++
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.04.2014, 22:06
Готовые ответы и решения:

Ошибка в коде взаимодействия клиента и сервера на основе протокола TCP/IP (ошибка в коде)
Задание: Осуществить взаимодействие клиента и сервера на основе протокола TCP/IP. Реализовать...

Ошибка с графикой в приложении Windows form (ошибка не в коде!)
Всем доброго времени суток! Написал программу в windows form. Несколько раз скомпилировал и все...

Ошибка в коде CS0649. Не понятно почему выдает данную ошибку.Также ошибка в форме со словом ref
Код Класса using System; using System.Collections.Generic; using System.Linq; using...

Ошибки в коде Qt - ошибка: undefined reference to `qMain(int, char**)'; ошибка: error: ld returned 1 exit status
Здравствуйте, есть проект в нем 2 ошибки, не очень понимаю как их можно решить. Помогите, буду...

1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
04.04.2014, 22:06
Помогаю со студенческими работами здесь

Ошибка в коде (Ошибка сегментирования (core dumped)
Добрый день. Подскажите пожалуйста, где ошибка в коде? char ch; string s; ...

Ошибка в коде и ошибка HTTP 400
Здарова всем, у меня тут проблема случилась, я только начинаю программировать. Выдает ошибку HTTP...

Ошибка в коде , ошибка 200
Всем привет, помогите пожалуйста, я новичек в Паскале, вот программа, суть её переводить любое...

В чём ошибка.В коде там где коментарий там ошибка поучается.
#include &lt;iostream&gt; #include &lt;Windows.h&gt; using namespace std; class CMyString{ char *pStr;...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru