Условную тернарную операцию в цикле можно заменить на:
if(m%2)
sum=sum-m;
else
sum=sum+m;
К качестве переменной суммы всего выражения возьмем sum предварительно инициализировав ее нулем.
m у нас в качестве значения определенного элемента в выражении, и начальное значение пусть будет абсолютным значением первого элемента, то есть 1.
n - количество элементов в сумме.
Теперь откроем цикл от i=1 до n включительно. Проверка первого элемента: если нечетное, то вычитает его из sum; в противном случае прибавляет в sum. В конце каждой итерации мы будем получать абсолютное значение следующего элемента по формуле m=m+i (в коде этот процесс описан в параметрах цикла, перед i++), затем с увеличением i, уже в новой итерации m будет проходить проверку.
Begin
writeln('¶¶¶¶¶¶¶¶¶¶1');
writeln('¶¶¶¶¶¶¶¶¶¶¶¶1');
writeln('¶¶_¶¶¶¶¶¶¶¶¶¶¶¶¶');
writeln('¶¶¶_¶¶¶¶¶¶¶¶¶¶¶¶');
writeln('¶¶__¶¶¶__¶¶¶¶_¶¶¶¶¶¶¶¶');
writeln('¶¶_¶¶¶¶_¶¶¶¶¶¶¶¶¶_¶¶¶¶¶1');
writeln('¶_¶¶¶¶_¶¶¶¶¶¶¶¶¶¶¶_¶¶¶¶¶1');
writeln('¶_¶¶¶¶_¶¶¶¶¶¶¶¶¶¶¶_¶¶¶¶¶1');
writeln('¶¶¶¶¶_¶¶¶¶¶¶¶¶¶¶¶¶_¶¶¶¶¶1');
writeln('¶¶¶¶¶_¶¶¶¶¶¶¶__¶¶¶¶¶_¶¶¶¶¶');
writeln('¶¶¶¶¶_¶¶¶¶¶¶¶¶¶_¶¶¶¶¶1');
writeln('¶¶¶¶¶¶¶_¶¶¶¶¶¶¶¶¶¶¶¶¶');
writeln('_¶¶1¶¶¶¶_¶¶¶¶¶¶¶¶¶¶1');
writeln('_¶¶¶¶¶¶¶¶_¶¶¶¶¶¶¶¶1');
writeln('__¶¶_¶¶¶¶¶¶_¶¶¶¶');
writeln('__¶¶¶__¶¶¶¶¶¶_¶¶¶');
writeln('__¶¶¶___¶__¶¶¶¶¶_¶¶¶¶');
writeln('___¶¶¶¶¶_¶_¶¶¶¶¶¶_¶¶¶¶');
writeln('___¶¶_¶¶¶¶¶1¶¶¶¶¶¶¶¶¶¶1');
writeln('__¶__¶¶¶¶¶¶¶¶1¶¶¶¶¶¶¶¶¶¶¶1');
writeln('_¶¶_¶¶¶¶_¶¶¶¶¶¶¶1¶¶¶¶¶_¶¶¶¶¶');
writeln('_¶¶_0__0_¶¶¶¶¶¶¶¶¶¶¶¶1__¶¶¶¶__¶¶¶1');
writeln('_¶¶_¶¶¶¶_¶¶¶¶¶¶¶¶¶¶¶¶¶¶1__¶¶¶¶_¶¶¶¶1');
writeln('_¶¶¶¶¶¶¶¶¶¶_¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶_¶¶¶¶_¶¶¶1');
writeln('__¶¶¶¶¶¶¶¶_¶¶¶¶¶¶¶¶¶¶_¶¶¶¶¶_¶¶¶¶¶_¶¶¶1');
writeln('___¶¶¶¶¶¶_¶¶¶¶¶¶¶¶¶¶¶_¶¶¶¶¶¶__¶¶¶¶_¶¶¶¶1');
writeln('¶¶¶_¶¶¶¶¶¶¶¶¶¶_¶¶¶¶¶__¶¶¶¶¶_¶¶¶1');
writeln('¶¶¶¶¶¶___¶¶¶¶¶¶_¶¶¶¶¶¶__¶¶¶¶_¶¶¶1');
writeln('¶_¶¶¶¶¶¶¶¶¶_¶¶¶¶¶_¶¶¶¶¶¶__¶¶¶¶_¶¶¶1');
writeln('___1¶¶¶_¶¶¶¶¶¶¶¶¶¶¶¶¶_¶¶¶¶¶¶¶__¶¶¶¶_¶¶¶1');
writeln('__1¶¶¶¶¶_¶¶¶¶¶¶¶¶¶¶¶¶_¶¶¶¶¶¶¶__¶¶¶¶_¶¶¶1');
writeln('__1¶¶¶¶¶¶¶¶¶¶¶¶_¶¶¶¶¶¶¶¶__¶¶¶¶_¶¶¶1');
writeln('__1¶¶¶¶¶_¶¶¶¶_¶¶¶¶__¶¶¶¶¶¶¶¶¶¶_¶¶¶_¶¶¶1');
writeln('___1¶¶¶_¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶_¶¶_¶¶_¶¶¶¶1');
writeln('¶_¶¶¶¶¶_¶¶¶¶¶¶¶_¶¶¶¶¶¶¶_¶_¶¶_¶¶¶1');
writeln('¶¶¶¶¶_¶¶¶¶¶¶¶¶_¶¶¶¶¶¶_¶_¶¶_¶¶1');
writeln('¶¶¶¶¶_¶¶¶¶¶¶¶¶¶¶¶¶_¶¶_¶¶¶¶1');
writeln('¶¶¶¶_¶¶¶¶¶¶¶¶¶¶¶¶_¶¶1');
writeln('___¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶___¶¶¶___¶¶¶¶¶');
writeln('__¶¶¶¶¶¶¶¶¶¶¶¶¶¶_¶¶¶¶¶¶¶¶');
writeln('_¶¶¶¶¶¶¶¶¶¶¶¶¶');
writeln('_¶___¶¶¶¶_¶¶¶¶');
writeln('¶___¶¶¶¶_¶¶¶¶¶¶¶');
writeln('¶¶¶¶_¶¶¶¶¶1¶¶');
writeln('¶¶¶¶_¶¶¶¶¶¶¶¶¶_¶¶');
writeln('¶¶¶¶_¶¶¶¶¶¶¶¶¶¶_¶¶');
writeln('¶¶¶¶¶_¶¶¶¶¶¶¶¶¶_¶¶');
writeln('¶¶¶¶¶_¶¶¶¶¶¶¶¶¶¶_¶¶');
writeln('¶¶¶¶_¶¶¶¶¶¶¶¶¶_¶¶');
writeln('¶¶¶¶_¶¶¶¶¶¶¶¶¶_¶');
writeln('¶¶¶¶¶¶¶¶¶¶_¶');
writeln('¶¶¶1¶¶¶¶¶');
writeln('¶¶1¶¶');
writeln('¶¶');
writeln('¶¶');
end.
Подробнее - на -
#include <iostream>
using namespace std;
int main()
{
int m=1, n, sum=0;
cin >> n;
for(int i=1; i<=n; m+=i, i++)
sum = (m%2) ? sum-m : sum+m;
cout << sum << endl;
return 0;
}
Условную тернарную операцию в цикле можно заменить на:
if(m%2)
sum=sum-m;
else
sum=sum+m;
К качестве переменной суммы всего выражения возьмем sum предварительно инициализировав ее нулем.
m у нас в качестве значения определенного элемента в выражении, и начальное значение пусть будет абсолютным значением первого элемента, то есть 1.
n - количество элементов в сумме.
Теперь откроем цикл от i=1 до n включительно. Проверка первого элемента: если нечетное, то вычитает его из sum; в противном случае прибавляет в sum. В конце каждой итерации мы будем получать абсолютное значение следующего элемента по формуле m=m+i (в коде этот процесс описан в параметрах цикла, перед i++), затем с увеличением i, уже в новой итерации m будет проходить проверку.