Поэтому предложенное вами задание неуместно, ибо считается в уме.
Непонятно так же, какое решение от Вас ждет преподаватель.
Я предполагаю, что учитель требует лобовое неоптимальное медленное решение, поскольку в противном случае задача теряет смысл. В самом деле, что писать блок схему вот этого:
##
(100*101*201/6).Print;
Итак, не будем долго тянуть и, поняв тупость задания, начнем что-то делать. Положим у нас будет цикл (лучше for). И мы будем к некоторой переменной sum добавлять счетчик в квадрате.
То есть код такой (новый и ныне единственно предпочтительный синтаксис, присутствующий в PascalABC.NET):
##
var sum:= 0;
for var i:= 1 to 100 do
sum+= i*i;
sum.Print;
Но от нас требуют блок схему (хотя тоже непонятно зачем).
(см. объяснение)
Объяснение:
Предисловие:
Вообще говоря, верно равенство:
Поэтому предложенное вами задание неуместно, ибо считается в уме.
Непонятно так же, какое решение от Вас ждет преподаватель.
Я предполагаю, что учитель требует лобовое неоптимальное медленное решение, поскольку в противном случае задача теряет смысл. В самом деле, что писать блок схему вот этого:
##
(100*101*201/6).Print;
Итак, не будем долго тянуть и, поняв тупость задания, начнем что-то делать. Положим у нас будет цикл (лучше for). И мы будем к некоторой переменной sum добавлять счетчик в квадрате.
То есть код такой (новый и ныне единственно предпочтительный синтаксис, присутствующий в PascalABC.NET):
##
var sum:= 0;
for var i:= 1 to 100 do
sum+= i*i;
sum.Print;
Но от нас требуют блок схему (хотя тоже непонятно зачем).
Но требую и требуют:
(см. прикрепленный файл)
Задание выполнено!
ответ: я не понимаю, почему оно не тестится норимально, но вроде работает
n = int(input())
nc = [int(i) for i in input().split()]
snc = sum(nc)
a = []
q = int(input())
c = 0
for j in range(q):
c += 1
print(c)
now = [int(i) for i in input().split(' ')]
if len(now) == 2:
ncnow = nc.copy()
for i in range(len(nc)):
nc[i] = ncnow[i-now[1]]
else:
item = nc[now[1]-1]
nc[now[1]-1] = now[2]
snc = snc - item + now[2]
a.append(snc)
for i in a:
print(i)