Задачка 3. Расстановка символов Легенда гласит, что Карл Фридрих Гаусс, учась

Задача 3. Расстановка знаков Легенда говорит, что Карл Фридрих Гаусс, учась в школе, сумел быстро посчитать сумму всех целых чисел от 1 до 100, заметив, что 1 + 100 = 2 + 99 = = 50 + 51 = 101. Потому сумма всех целых чисел от 1 до 100 одинакова 101 50 = 5050. Сейчас решите задачку посложнее: как расставить перед каждым из чисел от 1 до N знаки + или так, чтобы сумма получившихся чисел была равна 0? Например, для N = 3 сумма 1 2 +3 будет равна 0. Решите эту задачку для четырёх значений N: N = 8, N = 15, N = 40, N = 99. Ответ на эту задачку необходимо записать в виде 4 строк. Любая строчка обязана содержать только знаки + и . В первой строке обязано быть 8 символов, во второй строке 15, в третьей 40, в четвертой 99. Последовательность символов в каждой строке подходит последовательности символов, которые необходимо расставить перед числами 1, 2, , N так, чтобы сумма была одинакова 0. Например, для N = 3 ответ необходимо записать в виде ++ либо +. Если вы не можете решить задачу для какого-то значения N, то поставьте в этой строке один символ +. Решение будет принято на проверку, если оно содержит четыре строчки, каждая из которых состоит из символов + или . Количество символов в строчках и корректность ответа сходу после сдачи не проверяется.

Задать свой вопрос
1 ответ

javascript:

function Вычислить(число)  

var массив = [], м1 = [], м2 = [], с1 = 0, с2 = 0;  

for (let сч = 1; сч lt;= число; сч++) массив.push(сч);  

for (let сч = число - 1; сч gt;= 0; сч--)  

 if (с1 gt; с2) м2.push(массив[сч]); с2 += массив[сч];  

 else м1.push(массив[сч]); с1 += массив[сч];  

if (с1 != с2) return false;  

else  

 var рез = "";  

 for (let сч = 1; сч lt;= число; сч++)  

  if (м1.indexOf(сч) != -1) рез += "+"; else рез += "-";  

 return рез;  

document.write(Вычислить(8) + "lt;br /gt;");

document.write(Вычислить(15) + "lt;br /gt;");

document.write(Вычислить(40) + "lt;br /gt;");

document.write(Вычислить(99) + "lt;br /gt;");


+--++--+

--++--++--++--+

+--++--++--++--++--++--++--++--++--++--+

--++--++--++--++--++--++--++--++--++--++--++--++--++--++--++--++--++--++--++--++--++--++--++--++--+

, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт