М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
нина568
нина568
22.04.2020 21:33 •  Информатика

Робот движется по плоскости с нанесенной на нее прямоугольной системой координат. ось x направлена слева направо. ось y направлена снизу вверх. робот умеет исполнять следующие команды:

вперед – переместиться вперед на n значений.

поверни – повернуть на 90 градусов по часовой стрелке, не изменяя координат.

увеличь – увеличить значение n на единицу.

повтори k{…} повтори к раз набор команд, заключенных в скобках в указанном порядке.

перед началом движения робот находился в точке с координатами (0,0). значение n было равно 1. направление движения – вверх. робот выполнил следующую программу:

повтори k{вперед поверни увеличь}

в результате он оказался в точке с координатами x=26 и y=25. определите значение k в этой программе. в ответе укажите целое число.

👇
Открыть все ответы
Ответ:
Hellwood12
Hellwood12
22.04.2020

#include "stdafx.h"

#include "conio.h"

#include "iostream"

using namespace std;

 

 

int main()

{

   setlocale( LC_ALL,"Russian");// включаем русскую раскладку

   cout << "Введите количество элементов массива" << endl;

   unsigned int lenthOfArray=0;//переменная длины массива

   cin >> lenthOfArray;//считываем длину массива

   //создаем Массив  

   int* Array = new int [lenthOfArray];

   int M=1;

   cout << "Вводите элементы массива:" << endl;

   for(int i=0;i<lenthOfArray;i++)

   {

       cin >> Array[i];//считываем массив

       current=up;

       

       if(i>1)

       if((Array[i]>=Array[i-1])&&(Array[i-1]<Array[i-2]))

       {

           M++;

       }

       else

       {

           if((Array[i]<=Array[i-1])&&(Array[i-1]>Array[i-2]))

               M++;

       }

   }

   

 

   cout << "Количество промежутков монотонности: " << M << endl;

   

   getch();

       delete [] Array;

 

   return 0;

}

Добавлено через 7 минут

C++Выделить код

1

current=up;

только это удали

Добавлено через 10 минут

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

#include "stdafx.h"

#include "conio.h"

#include "iostream"

using namespace std;

 

 

int main()

{

   setlocale( LC_ALL,"Russian");// включаем русскую раскладку

   cout << "Введите количество элементов массива" << endl;

   unsigned int lenthOfArray=0;//переменная длины массива

   cin >> lenthOfArray;//считываем длину массива

   //создаем Массив  

   int* Array = new int [lenthOfArray];

   int M=1;

   cout << "Вводите элементы массива:" << endl;

   for(int i=0;i<lenthOfArray;i++)

   {

       cin >> Array[i];//считываем массив

       

       

       if(i>1)

       if((Array[i]>Array[i-1])&&(Array[i-1]<Array[i-2]))

       {

           M++;

           

       }

       else

       {    

           if((Array[i]<Array[i-1])&&(Array[i-1]>Array[i-2]))

               M++;

           else

                       if((Array[i]==Array[i-1])&&(Array[i-1]!=Array[i-2]))

           M++;

       }

 

   }

   

 

   cout << "Количество промежутков монотонности: " << M << endl;

   

   getch();

       delete [] Array;

 

   return 0;

}

Объяснение:

4,6(54 оценок)
Ответ:
mathewkichunov
mathewkichunov
22.04.2020

Cумма равна 35.

Процедура печатает число, если в неё передается n, большее единицы, и при этом сначала срабатывают две процедуры, вложенные в неё.

Передаётся число 10. Оно больше 1. Начинается процедура от числа 7. Оно больше 1. Начинается процедура от числа 4. Оно больше 1. Начинается процедура от числа 1. Оно не больше 1.

Возвращаемся к числу 4. Начинается f(4 div 2), то есть процедура от числа 2. Оно больше 1. Начинается процедура от числа -1. Оно меньше 1. Начинается процедура от 2 div 2, т.е от 1. Число не больше 1. Обе процедуры для двойки выполнены. Печатается 2.

Обе процедуры для числа 4 тоже выполнены. Печатается 4.

Возвращаемся к числу 7. Выполняется вторая процедура для 7, то есть f(3). Обе её процедуры ничего не печатают. Тогда она сама печатает 3.

Обе процедуры для числа 7 выполнены. Печатается 7.

Теперь к самому первому числу 10. Начинается вторая его процедура, то есть от числа 5. Начинается первая процедура от 5, то есть f(2). Обе процедуры для числа 2 ничего не делают, печатается 2. Вторая процедура от 5 тоже 2. Аналогично печатается 2.

Обе процедуры числа 5 выполнены. Печатается 5.

Обе процедуры числа 10 выполнены. Печатается 10.

Ура! осталось посчитать сумму напечатанного.

2+4+3+7+2+2+5+10=35

4,4(48 оценок)
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ