Advertisement
Guest User

Untitled

a guest
Feb 16th, 2020
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.20 KB | None | 0 0
  1. a=0
  2. b=0
  3. c=0
  4. k=''
  5. n=0
  6. i=0
  7.  
  8. n=int(input('Введите количество элементов '))
  9. while (n<0) or (n>15):
  10.     n=int(input('Прошлое значение ошибочно, повторите ввод '))
  11. k=str(input('Введите ключ '))
  12.  
  13. fin=open('1.txt','rt')
  14. s=fin.readline()
  15. fin.close()
  16.  
  17. A=['']*n
  18. A=s.split(', ')
  19. b=n-1
  20.  
  21. fout=open('Res.txt','wt')
  22.    
  23. fout.write('Исходные элементы:\n')
  24. for i in range (n):
  25.     fout.write(A[i]+' ')
  26.    
  27. fout.write('\nКоличество элементов={0:2d}'.format(n))
  28. fout.write('\nКлюч= '+k)
  29.  
  30. fl=False
  31. if A[0]<=A[n-1]:
  32.     while a<=b and not(fl):
  33.         c=(a+b)//2
  34.         if k==A[c]:
  35.             fl=True
  36.         else:
  37.             if k<A[c]:
  38.                 b=c-1
  39.             else:
  40.                 a=c+1
  41. if A[0]>A[n-1]:
  42.     while a<=b and not(fl):
  43.         c=(a+b)//2
  44.         if k==A[c]:
  45.             fl=True
  46.         else:
  47.             if k>A[c]:
  48.                 b=c-1
  49.             else:
  50.                 a=c+1
  51. if  not(fl):
  52.     fout.write('\nЭлемент не найден')
  53. else:
  54.     fout.write('\nНомер найденного элемента={0:2d}'.format(c))
  55.    
  56. fout.close()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement