Помогите решить на Питоне задачки, пожалуйста, в вебе все решения неправильные!!!

Помогите решить на Питоне задачи, пожалуйста, в вебе все решения неправильные!!! Даю 34 балла.
1) Дано натуральное число N. Выведите слово YES, если число N является четкой ступенью двойки, либо слово NO в неприятном случае.

Операцией возведения в ступень воспользоваться нельзя!

2)Дано естественное число ngt;1. Выведите его наименьший делитель, хороший от 1.

Решение оформите в виде функции MinDivisor(n). Метод должен иметь сложность O(корень из n) .

Указание. Если у числа n нет делителя не превосходящего корень из n , то число n обычное и ответом будет само число n.
3) Последовательность Фибоначчи это последовательность типа Xn = Xn 1 + Xn 2 , n gt; 2, n - номер числа в последовательности.

Дано естественное число A. Обусловьте, каким по счету числом Фибоначчи оно является, то есть выведите такое число n, что
Xn=A.
Если А не является числом Фибоначчи, выведите число -1.
4) Последовательность состоит из натуральных чисел и заканчивается числом 0. Обусловьте значение второго по величине элемента в этой последовательности, то есть элемента, который будет наивеличайшим, если из последовательности удалить величайший элемент.

Входные данные
Вводится последовательность целых чисел, заканчивающаяся числом 0 (само число 0 в последовательность не входит, а служит как признак ее окончания).

Выходные данные
Выведите ответ на задачу.

Задать свой вопрос
1 ответ
1.
N=int(input())
s=2
flag=False
for i in range(N):
      if N=s:
           flag=True
           break
      else:
           s*=2
if flag:
    print('Yes')
else:
    print('No')

2.
n=int(input())
def MinDivisor(n):
     nod=-1
     for i in range(n-1):
          if n%i=0:
              return i
              break

if MinDivision(n)==-1:
    print(n,' число является обычным.')
else:
    print(MinDivision(n))

3.
A=int(input())
x=x1=1
s=0
while x1lt;A+2:
   b=x
   x=x1
   x1+=b
   s+=1
if x1==A:
    print(s)
else:
    print(-1)

4. 
a=[]
while 1:
   s=int(input())
   if s==0:
       break
   a.append(s)
a.sort()
print(a[-2])



Ганущак Леонид
Огромное спасибо!!! Теснее 3 денек сижу, 9 теснее решила, остались только эти)))
Степа Плоом
Не за что)
, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт