В Python уже есть функция для возведения в степень по модулю: pow(b, c, module). Вряд ли встроенными средствами языка вы напишите более быструю функцию.
Такая ошибка появляется если командная строка не находит команду или исполняемый файл. То есть командная строка даже не подозревает о существовании, в данном случае, некого virtualenv.
Надо добавить путь к папке с virtualenv (т.е. у тебя C:\python32\Scripts) в системную переменную path.
Как это сделать, смотри, например, здесь (это просто первая ссылка в гугле): https://java.com/ru/download/help/path.xml
for i in range(len(a)-1, 0, -1):
swapped = False
for j in range(i):
if a[j] > a[j + 1]:
a[j], a[j + 1] = a[j + 1], a[j]
swapped = True
if not swapped:
break
upd: исправил циклы. После первого прохода мы знаем, что последний элемент списка максимальный (наш "пузырек" всплыл), после второго, что предпоследний - максимальный из оставшихся и т.д.
В этом выражении одиночный символ % — это показатель начала спецификатора. Двойной %% — это просто знак процента %. Строка обрабатывается лишь один раз. То есть обработчик строки превращает %%s в %s и переходит дальше по строке.