0 / 0 / 0
Регистрация: 11.06.2019
Сообщений: 5
1

Ошибка в коде, как исправить?

15.06.2019, 11:41. Показов 1835. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Когда запускаю код выдаёт вот такую ошибку
[Error] 'noexcept' does not name a 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
#include <iostream>
#include <vector>
#include <algorithm>
 
static const double eps = 1e-15;
 
class rectangle
{
    double a{}, b{};
public:
    rectangle() = default;
    rectangle(double side_one, double side_two) :a(side_one), b(side_two) {};
 
    double side_one() ;const noexcept { return a; }
    double side_two() ;const noexcept { return b; }
    double& side_one() ;noexcept { return a; }
    double& side_two() n;oexcept { return b; }
 
    double diag() const noexcept { return std::sqrt(a * a + b * b); }
    double perimetr() const noexcept { return 2 * (a + b); }
    double square() const noexcept { return a * b; }
 
    bool is_square() const noexcept { return std::abs(a - b) < eps; }
};
 
int main()
{
    std::cout << "N = ";
    std::size_t N{};
    std::cin >> N;
 
    std::vector<rectangle> vr;
    double avg_square{};
    for (size_t i{}; i < N && std::cin; ++i)
    {
        rectangle rect;
        std::cout << "rect[" << i << "] a, b: ";
        std::cin >> rect.side_one() >> rect.side_two();
        avg_square += rect.square();
        vr.emplace_back(rect);
    }
    avg_square /= vr.size();
 
    std::cout << "count of rects with square more then average " << std::count_if(vr.begin(), vr.end(), [avg_square](const rectangle& rect)
    {
        return rect.square() > avg_square;
    }) << std::endl;
}
Вот строка с проблемой:
C++
1
    double side_one() ;const noexcept { return a; }
А вот собственно задание для которого нужно написать код:
Создать класс прямоугольник, члены класса которого длины стороны a и b. Описать в классе констукторы, дестуктор, методы вычисления и вывода сведений о фигуре - длины сторон, диагоналей, периметр и площадь. Предусмотреть в классе проверку, является ли прямоугольник квадратом. Написать программу, демонстрирующую работу с классом: дано N прямоугольников, найти количество прямоугольников, у которых площадь больше средней площади прямоугольников
Миниатюры
Ошибка в коде, как исправить?  
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.06.2019, 11:41
Ответы с готовыми решениями:

Непонятная ошибка в нормальном (надеюсь) коде, как исправить?
#include &quot;stdafx.h&quot; #include &lt;string.h&gt; void TaskPaste(FILE * f, FILE * k, char K, char S) {...

Ошибка в коде как исправить?
Подскажите где я допустил ошибку в данном коде add_action( 'register' , 'register_replacement' );...

Ошибка в коде, как исправить ( не пойму)
Ругается на private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) ...

Admin panel не правильно работает из-за ошибки в models.py Разобрался где в коде ошибка но как исправить её?
from django.db import models # Create your models here. from django.urls import reverse #...

6
Модератор
Эксперт С++
13502 / 10754 / 6409
Регистрация: 18.12.2011
Сообщений: 28,699
15.06.2019, 11:54 2
Цитата Сообщение от A-LLto Посмотреть сообщение
C++
1
2
3
4
double side_one() ;const noexcept { return a; } 
double side_two() ;const noexcept { return b; } 
double& side_one() ;noexcept { return a; } 
double& side_two() n;oexcept { return b; }
Откуда там взялись точки с запятой?
C++
1
2
3
4
    double side_one() const noexcept { return a; }
    double side_two() const noexcept { return b; }
    double& side_one() noexcept { return a; }
    double& side_two() noexcept{ return b; }
0
0 / 0 / 0
Регистрация: 11.06.2019
Сообщений: 5
15.06.2019, 11:57  [ТС] 3
Теперь вот такая ошибка
[Error] expected ';' at end of member declaration
Строка та же самая
0
Модератор
Эксперт С++
13502 / 10754 / 6409
Регистрация: 18.12.2011
Сообщений: 28,699
15.06.2019, 13:35 4
Не может быть: Вы во всех 4-х строках убрали ; ?
Если "Да", то, похоже, у Вас не поддерживается нужный стандарт С++.
0
0 / 0 / 0
Регистрация: 11.06.2019
Сообщений: 5
16.06.2019, 10:18  [ТС] 5
А можно как-нибудь изменить код чтобы он работал в Dev C++?
0
Модератор
Эксперт С++
13502 / 10754 / 6409
Регистрация: 18.12.2011
Сообщений: 28,699
16.06.2019, 10:57 6
Лучший ответ Сообщение было отмечено A-LLto как решение

Решение

Вот так должно работать
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
#include <iostream>
#include <vector>
#include <algorithm>
 
static const double eps = 1e-15;
 
class rectangle
{
    double a, b;
public:
    rectangle() :a(0), b(0) {}
    rectangle(double side_one, double side_two) :a(side_one), b(side_two) {};
 
    double side_one() { return a; }
    double side_two(){ return b; }
 
    double diag()  { return std::sqrt(a * a + b * b); }
    double perimetr()  { return 2 * (a + b); }
    double square() { return a * b; }
 
    bool is_square() { return std::abs(a - b) < eps; }
};
 
double avg_square = 0;
bool ff(rectangle rect)
{
    return rect.square() > avg_square;
}
int main()
{
    std::cout << "N = ";
    std::size_t N;
    std::cin >> N;
 
    std::vector<rectangle> vr;
    for (size_t i=0; i < N ; ++i)
    {
        std::cout << "rect[" << i << "] a, b: ";
        double a, b;
        std::cin >> a >> b;
        if (!std::cin)
            break;
        rectangle rect(a,b);
        avg_square += rect.square();
        vr.push_back(rect);
    }
    avg_square /= vr.size();
    N = std::count_if(vr.begin(), vr.end(), ff);
 
    std::cout << "count of rects with square more then average " << N << std::endl;
    return 0;
}
1
0 / 0 / 0
Регистрация: 11.06.2019
Сообщений: 5
16.06.2019, 14:07  [ТС] 7
Спасибо большое
Только появилась вот такая ошибка 'sqrt' is not a member of 'std'.Написала #include <cmath> и всё заработало
0
16.06.2019, 14:07
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.06.2019, 14:07
Помогаю со студенческими работами здесь

Ошибка в коде Pascal ABC, "ожидается оператор", как исправить?
Помогите! Не могу завершить прогу на Pascal ABC (да-да, тот самый). Делаю что-то вроде...

Ошибка в коде. Помогите исправить.
Здравствуйте. Компилятору не нравитса моё проравнивание. Что не так? cout &lt;&lt; &quot; Find...

Как исправить исправить ошибку в коде
Здравствуйте,помогите пожалуйста исправить ошибку в коде.using System; using System.Threading; ...

Ошибка в программном коде. Что исправить?
Добрый вечер! Дана схема: По этой схеме выписать ключи и связи между между сущностями. Вот что у...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

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