В
Все
М
Математика
А
Английский язык
Х
Химия
Э
Экономика
П
Право
И
Информатика
У
Українська мова
Қ
Қазақ тiлi
О
ОБЖ
Н
Немецкий язык
Б
Беларуская мова
У
Українська література
М
Музыка
П
Психология
А
Алгебра
Л
Литература
Б
Биология
М
МХК
О
Окружающий мир
О
Обществознание
И
История
Г
Геометрия
Ф
Французский язык
Ф
Физика
Д
Другие предметы
Р
Русский язык
Г
География

Сұрақтарға жауап берейін 1. Видеоны қалай өңдеуге болады?
2. Видео әсерлер дегеніміз не?
3. Видеоны қалай сақтауға болады?​

Показать ответ
Ответ:
Jiio
Jiio
13.11.2021 17:39

/*Код соответствует тексту задания из файла. Последовательность вводится в строку через знаки пробела, нажатие клавиши Enter заканчивает ввод последовательности. Программа НЕ проверяет корректность введенных данных*/

#include <iostream>

bool is_prime(const int n);

int main(int argc, char* argv[])

{

   int numb, n_of_pr_numb = 0;

   long int sum = 0;

   do

    {

       std::cin >> numb;

       if(is_prime(numb))

       {

           sum += numb;

           n_of_pr_numb++;

       }

   } while (std::cin.peek() != '\n');

   std::cout << "The arithmetic mean: " << (n_of_pr_numb == 0 ? 0 : sum * 1. / n_of_pr_numb);

}

bool is_prime(const int n)

{

   if (n <= 1)

   {

       return false;

   }

   for (int i = 2; i <= pow(n, 1/2); i++)

   {

       if (n % i == 0)

       {

           return false;  

       }

   }

   return true;

}

Основные ошибки/недочеты Вашей реализации:

В функции pr строка for ( a = 2 ; a<=n ; a++) неверна, т.к. на последнем шаге число всегда будут сравнивать с самим собой, правильно for ( a = 2 ; a<n ; a++). Ну и нет смысла проверять до a=n-1, достаточно проверить до √n(об этом есть целая теорема).По условию никакого вывода слов "Простое/Не простое" не требуетсяСтрока cout << "n = "; лишняя, т.к. даже если на ввод будет подано несколько чисел, на экран "n = " будет выведено лишь в начале. Лучше уточнить для пользователя формат ввода.Смысл функции arif неясен, она выводит на консоль какие-то непонятные пользователю данные, затем возвращает s/i[ВНИМАНИЕ! Так как s и i целочисленные, то s/i не является средним арифметическим, это будет лишь целая часть от него. Правильнее s * 1./i или static_cast<double>(s)/i], а затем выводит это значение. Зачем разрывать cout на две функции - неясноВвод данных не должен находиться в функции проверки числа на простоту(да и смысл разбиения программы на функции пропадает)
0,0(0 оценок)
Ответ:
Zeff
Zeff
28.07.2020 02:46
Не знаю длинный это рассказ или нет но попробую.
ну допустим мы создали прототип, но прототип будет отражать только часть функций объекта которая нам нужна. например глобус. по сути это модель земли но мы пренебрегаем размерами и мелкими объектами для того что бы показать что она имеет форму эллипса, и получается что модель нужна нам для отображения тех или иных функций объекта для решения наших задач. почему множество ? потому что иногда бывает так что нужно рассмотреть объект с разных сторон ( не в прямом смысле).
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота