Мы продолжаем публикацию цикла «руководств пользователя», посвященных теоретическому и практическому рассмотрению различных компонентов современного ПК, начало которому положил материал «Современные десктопные процессоры архитектуры x86: общие принципы работы (x86 CPU FAQ 1.0)». В настоящем руководстве мы рассмотрим основные современные виды оперативной памяти, применяемой в десктопных системах (оперативную память, применяемую в серверах и ноутбуках, оставим за его рамками). Под ними будем подразумевать память класса SDRAM — SDR (Single Data Rate — память с одинарной скоростью передачи данных), DDR (Double Data Rate — память с удвоенной скоростью передачи данных) и DDR2 (память DDR второго поколения). Возможно, SDRAM «как таковая» (в ее первоначальном варианте SDR SDRAM) на сегодня уже не является столь актуальным видом памяти, тем не менее, все три перечисленных вида принадлежат одному и тому же классу и базируются примерно на одних и тех же принципах функционирования, которые мы и рассмотрим прямо сейчас.Содержание
list = [1,1,0,7,0,9,0,0,5,17]
list_new = []
print("Ваша последовательность чисел: " + str(list))
chk = False
for i in range(len(list)-1):
if chk == False:
if list[i] == 0 and list[i+1] == 0:
list_new.append(list[i])
list_new.append(list[i+1])
chk=True
else:
list_new.append(list[i])
if chk == False:
list_new.append(list[-1])
print("Новая последовательность: " + str(list_new))
print("Сумма чисел в новой последовательности: " + str(sum(list_new)))
То же, но для рандомного листа из 100 элементов (и с циклом While посимпатичнее получается):
from random import randint
n = 100
list = [randint(0,9) for x in range(n)]
list_new = []
print("Ваша последовательность чисел: " + str(list))
chk = False
i = 0
while i <= len(list)-1 and chk == False:
if list[i] == 0 and list[i+1] == 0:
list_new.append(list[i])
list_new.append(list[i+1])
chk=True
else:
list_new.append(list[i])
i += 1
if chk == False:
list_new.append(list[-1])
print("В исходной последовательности нет чисел после двух друг за другом идущих нулей.")
print("Сумма чисел в исходной последовательности: " + str(sum(list_new)))
else:
print("Новая последовательность: " + str(list_new))
print("Сумма чисел в новой последовательности: " + str(sum(list_new)))