madeintower
24.03.2020 02:58

ПИТОООН! Напишите комментарии к коду:
n = int(input())
print('The next number for the number ' + str(n) + ' is ' + str(n + 1) + '.')
print('The previous number for the number ' + str(n) + ' is ' + str(n - 1) + '.')

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
freemvount
18.01.2023 06:43

Задачка мне очень понравилась, прилагаю решение на C#, консольное приложение

Объяснение:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

namespace Археологи_строители

{ class Program

   {

       static void Main(string[] args)

       {

           //Объявляем и задаем переменные "M" и "N", а так же переменную для результата

           int M,N=new int();

           int MyResult = 0;

           Console.WriteLine("Ведите Текущее количество ступенек и Сколько их должно быть:");

           M = int.Parse(Console.ReadLine());

           N = int.Parse(Console.ReadLine());

           // Создаем массив для хранения данных о ступенях. M-Количество ступенек, Цифра - для колонок длины и высоты

           int[,] mass = new int[M,2];

           // Запись значений в массив

           for (int x = 0; x < M; x++){

               for (int y = 0; y < 2; y++){

                   if (y==0){  //Чисто для юзерфрендли отображения

                       Console.Write($"Введите значение Длины для ступеньки №{x + 1}= ");} else{

                       Console.Write($"Введите значение Высоты для ступеньки №{x + 1}= ");}

                   mass[x, y] = Convert.ToInt32(Console.ReadLine());}

                   Console.WriteLine();}

           /* Как оказалось, самый простой определить какую же ступеньку надо "поднимать"-

            * это вычислить площадь гипотетически "заполняемого" пространства над ступенькой и взять

            * наименьшее значение.

            *  

            * Итак, допустим если у нас 5 ступенек, то нам нам необходимо записать 4 значения

            * (в рамках лестницы) площади заполняемых ступенек.

            *  

            * Перемножаем Длину ступеньки N на высоту ступеньки N+1, M-1 раз и сохраняем в массив

            */

           int M2 = M; //Дублируем изначальное число ступенек для контроля цикла

           for (int z = 0; z <M2-N; z++)

           {

               int[] acreage = new int[M - 1];

               for (int x = 0; x < M - 1; x++)

               {

                   for (int y = 0; y < 2; y++)

                   {

                       acreage[x] = mass[x, 0] * mass[x + 1, 1];

                   }

               }

               /*

                * И так у нас есть все значения гипотетически заполняемой ступеньки.

                * Ищем минимальное значение площади  

                */

               int minAcreage = acreage[0];

               for (int i = 0; i < M - 1; i++)

               {

                   if (minAcreage > acreage[i])

                   {

                       minAcreage = acreage[i];

                   }

               }

               MyResult = MyResult+minAcreage; //Плюсуем данное значение в переменную результата

               // У нас есть минимальная площадь. Найдем номер данной ступеньки

               int IndexAcreage = Array.IndexOf(acreage, minAcreage);

               //"Достроим нужную нам ступеньку и запишем обновленные данные во временный массив"

               int[,] tempMass = new int[M - 1, 2]; //Он на размер меньше, т.к. и "полных" ступенек у нас стало меньше

               for (int x = 0; x < M - 1; x++)

               {

                   for (int y = 0; y < 2; y++)

                   {

                       //Ступеньки до IndexAcreage мы просто переписываем во временный массив

                       if (x < IndexAcreage)

                       {

                           tempMass[x, y] = mass[x, y];

                       }

                       //2 ступеньки от IndexAcreage мы превращаем в одну (застраивая их блоками)

                       else if (x == IndexAcreage)

                       {

                           tempMass[x, y] = mass[x, y] + mass[x + 1, y];

                       }

                       /* и после IndexAcreage мы та же копируем, но со сдвигом вправо, т.к. полноценных  

                        * ступенек стало меньше

                        */

                       else if (x > IndexAcreage)

                       {

                           tempMass[x, y] = mass[x + 1, y];

                       }

                   }

               }

               M = M - 1; //Поскольку ступенек теперь меньше, то и их фактическое число необходимо уменьшить

               for (int x = 0; x < M + 1; x++)

               {

                   for (int y = 0; y < 2; y++)

                   {

                       mass[x, y] = 0;

                   }

               }

               //переписываем данные в основной массив и запускаем следющую интерацию цикла

               for (int x = 0; x < M; x++)

               {

                   for (int y = 0; y < 2; y++)

                   {

                       mass[x, y] = tempMass[x, y];

                   }

               }

           }

           Console.WriteLine($"Минимально необходимое число блоков: {MyResult}");

           Console.ReadKey(true);

       }

   }

}

0,0(0 оценок)
Ответ:
chuvak1414
08.11.2022 12:30
Windows  – без обновления операционной системы, вы и не почувствуете всех обновлений. мы рекомендуем  установить windows 8, так как она выполнена по всем современным меркам.монитор  – это первое на что мы обращаем внимание, сидя за компьютером, и чем он будет больше и красивее, тем больше положительных эмоций вы получите от обновления пк. рекомендуем для этого прочесть статью: «как выбрать монитор для компьютера». в подключении монитора думаем, что вопросов не возникнет.клавиатуру и мышь  – какое же внешнее обновление компьютера без замены  мышкиили  клавиатуры? ! обязательно выберите себе новые манипуляторы! коробку системного блока  – даже если у вас нет денег (или желания) обновлять все комплектующие компьютера (например, и этими вы довольно), то просто обновите коробку системного блока на современную. в этом случае все вокруг подумают, что вы обновили своё пк полностью! если нет навыков сбора компьютера – доверьте это дело профессионалам, таким как на masterservis24.ru! акустика  – последним штрихом в создании нового образа компьютера будет новое звучание и новый вид колонок для компьютера, чтобы вы не только видели обновленный компьютер, но и слышали его. кстати колонки можно просто заменить  новыми и хорошими наушниками для компьютера. если вас устраивает внешний вид пк, а больше интересует скорость его работы, то вам нужно выполнить обновление следующих деталей: процессор  – главная деталь всего компьютера, так как именно от мощности этого устройства зависит быстрота работы всей системы. помните, что  выбирать процессор для компьютера нужно правильно  (о чём мы уже писали ранее).материнская плата  – её нужно менять по нескольким причинам: во-первых, каждый из процессоров подходит только к определенным моделям «материнки». во-вторых, вам на материнской плате может не хватать слотов для дополнительного озу или второй видеокарты. о том,  как выбрать материнскую плату  мы писали ранее. устанавливать её самостоятельно не советуем, лучше попросить о .оперативное запоминающее устройство (озу)  – его также следует обновлять, однако если не хватает денег, то лучше выбрать более мощный процессор, чем много озу, ведь память всегда можно добавить самостоятельно и даже не вызывая мастера.жесткий диск  – скорости в работе компьютера он вряд ли прибавит (если только это не ssd диск), зато у вас появиться масса свободного места для разных файлов. перед тем, как купить жесткий диск, рекомендуем прочесть статью  как его выбрать, а также  как правильно устанавливать жесткий диск.видеокарта  – обновлять её нужно только в том случае, если она вышла из строя (шумит, например) или вы хотите играть в новые компьютерные игры, которые требуют более нового «железа».блок питания  – о том,  как выбрать блок питания  мы писали совсем недавно, и его замена будет для вас больше вынужденной, так как новые комплектующие устройства всегда более требовательны к энергии. новый блок питания не даст сгореть компьютеру и обеспечит его стабильную работу.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота