Предмет: Информатика, автор: sanyaromanov20p4awbh

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

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

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

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

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

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

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

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

Ответы

Автор ответа: differchanel
3
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 x1<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])




sanyaromanov20p4awbh: Огромное спасибо!!! Уже 3 день сижу, 9 уже решила, остались только эти)))
differchanel: Не за что)
Похожие вопросы
Предмет: Английский язык, автор: prakudinavika
Предмет: Математика, автор: 88898889
Предмет: Математика, автор: даниил246