profile
Размещено 3 года назад по предмету Информатика от Аккаунт удален

С++ ООП Очень срочно, прошу

вот мой код который считает арифметической прогрессию, но нужно чтобы первое значение было дробовое а разница всегда положительной. Я сделала проверку через if, но она в Майне, а должна быть в конструкторе publice . Как это реализовать?​

  1. Ответ на вопрос
    Ответ на вопрос дан restIess

    Проверяем в конструкторе значения на данные признаки, если мы получаем ошибку инициализации, то даем переменным нулевые значения, дабы избежать ошибок в других функция. (грубо говоря, чтобы вся программа не легла из-за конструктора, благодаря выводу текстового сообщения мы будем знать где конкретно ошибка)

    #include <iostream>

    #include <cmath>

    class Progression {

    private:

    float first;

    int second;

    public:

    Progression(float a0, int d) {

     if (a0 == round(a0)) {

      std::cout << "Инициализация первого члена прогрессии с помощью конструктора не удалась, первый элемент не должен быть целыми числом!n";

      this->first = 0;

     }

     else {

      this->first = a0;

      std::cout << "Инициализация первого члена прогрессии прошла успешно!n";

     }

     if (d < 0) {

      std::cout << "Инициализация разности прогрессии с помощью конструктора не удалась, разность должна быть положительной!n";

      this->second = 0;

     }

     else {

      this->second = d;

      std::cout << "Иницализация разности прошла успешно!n";

     }

    }

    float operator()(int j){

     return this->first + this->second * (j - 1);

    }

    };

    signed main() {

    setlocale(LC_ALL, "Rus");

    float a;

    int b;

    std::cout << "Введите значение a0 и d: ";

    std::cin >> a >> b;

    Progression p1(a, b);

    std::cout << p1(2);

    return 0;

    }

    1. Ответ на вопрос
      Ответ на вопрос дан Аккаунт удален
      ооо, была б очень вам благодарна
    2. Ответ на вопрос
      Ответ на вопрос дан restIess
      Даже можно иначе, на компе, где ты код пишешь ж есть выход в интернет?
    3. Ответ на вопрос
      Ответ на вопрос дан Аккаунт удален
      есть
    4. Ответ на вопрос
      Ответ на вопрос дан restIess
      Файл прикрепил
    5. Ответ на вопрос
      Ответ на вопрос дан Mihals
      Прошу, помогите пожалуйста https://znanija.com/task/45806723
Не тот ответ на вопрос, который вам нужен?
Найди верный ответ
Самые новые вопросы
tegysigalpa2012
Русский язык - 6 лет назад

Помогите решить тест по русскому языку тест по русскому языку «местоимение. разряды местоимений» для 6 класса 1. укажите личное местоимение: 1) некто 2) вас 3) ни с кем 4) собой 2. укажите относительное местоимение: 1) кто-либо 2) некоторый 3) кто 4) нам 3. укажите вопросительное местоимение: 1) кем-нибудь 2) кем 3) себе 4) никакой 4. укажите определительное местоимение: 1) наш 2) который 3) некий 4) каждый 5. укажите возвратное местоимение: 1) свой 2) чей 3) сам 4) себя 6. найдите указательное местоимение: 1) твой 2) какой 3) тот 4) их 7. найдите притяжательное местоимение: 1) самый 2) моего 3) иной 4) ничей 8. укажите неопределённое местоимение: 1) весь 2) какой-нибудь 3) любой 4) этот 9. укажите вопросительное местоимение: 1) сколько 2) кое-что 3) она 4) нами 10. в каком варианте ответа выделенное слово является притяжательным местоимением? 1) увидел их 2) её нет дома 3) её тетрадь 4) их не спросили

Информация

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.