сразу говорю, это неполное решение и за него дают не 100 а лишь да мало, но лучше чем ничего, на крайний случай если так и не найдешь толковое решение
from queue import PriorityQueue
d = {k: x for k, x in enumerate(map(int, input().split())) if x != 0}
q = PriorityQueue()
for x, k in d.items():
q.put((-k, x))
res = []
p_k, p_x = q.get()
res.append(p_x)
while q.qsize() != 0:
k, x = q.get()
res.append(x)
if p_k < -1:
q.put((p_k + 1, p_x))
p_k, p_x = (k, x)
print(*res[::-1], sep='')
Видеоурок
Текстовый урок
Тесты
Во к уроку
На предыдущих уроках мы подробно рассмотрели внутреннее устройство компьютера – его комплектующие и основные внутренние части. Однако для того, чтобы рассматривать современный компьютер как полноценное средство обработки информации (то есть устройство, выполняющее конкретные прикладные задачи), необходимо учесть также и его программное обеспечение, то есть все приложения и службы, установленные на данный компьютер. На сегодняшнем уроке вы познакомитесь с различными видами программного обеспечения, узнаете, для чего нужна та или иная программа и научитесь их устанавливать.
Введение
Что же такое программное обеспечение компьютера? Рассмотрим этот термин подробнее.
Программное обеспечение (ПО) – это все компьютерные программы, процедуры и соответствующая документация и данные, относящиеся к функционированию данной компьютерной системы.
Всё программное обеспечение можно разделить на следующие типы
Виды программного обеспечения
1. Системное программное обеспечение. Это такие программы, которые входят в состав операционной системы и являются составной ее частью. Обычно они обеспечивают управление компонентами компьютерной системы, такими как процессор, оперативная память, устройства ввода-вывода а также сетевое оборудование. Типичным примером для системной программы является драйвер. Драйвер– это компьютерная программа, при которой другие программы получают доступ к аппаратному обеспечению некоторого устройства (например, к принтеру, сканеру, видеокарте и т. д.). Драйверы являются неотъемлемой составляющей операционной системы – совокупность программ, организующих согласованную работу всех модулей компьютера.
2. Обслуживающие программы.К ним относятся те программы, которые выполняют вс обслуживающие либо сервисные функции, например архиваторы, антивирусы и программы для обслуживания жесткого диска компьютера. Программы такого типа также называют утилитами (от англ. utilize – «использовать»).
3. Прикладные программы –это обширный класс программ, предназначенный для решения отдельных определенных пользователем задач, связанных с обработкой данных в определенной области деятельности. К ним можно отнести, например, текстовые, графические, аудио, видео-редакторы, средства управления базами данных, обучающие, тестовые, игровые программы и т. д.
Большинство программ на сегодняшний день создаются с привязкой к конкретной операционной системе (например, Windows, Linux, Android, MacOS) и т. д. Этот факт необходимо обязательно учитывать при выборе той или иной программы.
Перед запуском программы ее нужно правильным образом инсталлировать, то есть установить на данный компьютер. Существуют специальные программы-инсталляторы, например Rpm для ОС Linux или Windows Installer для Windows. Очень часто программы-инсталляторы входят в состав операционной системы по умолчанию. Инсталлировать программу – означает установить (распаковать) все ее значимые файлы в соответствующие директории операционной системы. Для того чтобы программа инсталлировалась верно, она должна содержать так называемый дистрибутив. Дистрибутив программы (от англ. distribute – распределять) – это совокупность компонентов, необходимых для ее установки (инсталляции). Дистрибутив операционной системы обычно содержит в себе программы для начальной инициализации системы.
x: real := 1;
begin
while (x <= 2) do
begin
writeln(x:4, ' | ', sin(x));
x := x + 0.2;
end;
end.
Вывод:
1 | 0.841470984807897
1.2 | 0.932039085967226
1.4 | 0.98544972998846
1.6 | 0.999573603041505
1.8 | 0.973847630878195
2 | 0.909297426825682