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

ОЧЕНЬ Задача написать алгоритм для Робота, чтобы он из левой обстановки перешёл в правую.
При этом размер стен неизвестен. Также расстояние между стенами также неизвестно. заранее

Показать ответ
Ответ:
kursovaalena8
kursovaalena8
29.05.2020 18:06

#include <iostream>

#include <ctime>

using namespace std;

double running_avg(double i);

void main()

{

setlocale(LC_ALL, "RU");//русский язык

clock_t t1, t2;

t1 = clock() / 1000;//начало отсчета(в секундах)

double num;

while (true)

{

 t2 = clock() / 1000;

 cout << "Введите значение (для выхода введите любой знак или дождитесь 60 секунд от запуска программы)\n";

 if (!(cin >> num) || (t2 - t1 > 60)) break;//конец отсчета  

 cout << "Среднее значение всех чисел равно: " << running_avg(num) << "\n\n\n";

}

}

double  running_avg(double i) {

static double sum = 0;//при каждом новом вызове функции значения sum и count сохраняются

static int count = 0;

sum = sum + i;

count++;

return sum / count;//среднее значение

}  

/*cpp-файл в закрепе*/

 

0,0(0 оценок)
Ответ:
mutsienietse14
mutsienietse14
29.05.2020 18:06

Примерно так

#include <iostream>

#include <chrono>

#include <ctime>    

int main()

{

   auto start = std::chrono::system_clock::now();

   auto end = std::chrono::system_clock::now();

   bool Cycle = true;

   double SredSum=0;

   std::time_t end_time;

   double Entered = 0, count = 0;

   setlocale(LC_ALL, "Russian");

   std::cout.precision(5);

   std::chrono::duration<double> elapsed_seconds = end - start;

   do {

       std::cin >> Entered;

       if (std::cin.fail()){

           Cycle = false;

           break;

       }

       end = std::chrono::system_clock::now();

       elapsed_seconds = end - start;

       

       SredSum = ((SredSum * count) + Entered) / (count + 1.0);

       count++;

       std::cout << "Среднее значение этих " << count << " чисел равно " << SredSum << std::endl;

       if (elapsed_seconds.count() > 60) { Cycle = false; }

   } while (Cycle);

}


Написать программу, запрашивующую у пользователя в бесконечном цикле число и выводящую среднее значе
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота