Курыстық ЖҰмыс пәні: Алгоритм деректер құрылымы және бағдарламалау Орындаған: Амандық Агжан Мамандығы: ис-05-057-20-02 Тақырыбы: Цикьлдік алгоритмдеу Тәжірибе жетекшісі: Мустафаева Нагима Таировна



Дата18.04.2022
өлшемі374,33 Kb.
#139832
Байланысты:
Kурыстық жұмыс




С.Сейфуллин атындағы Қазақ агротехникалық университетінің
Ақпараттық жүйелар кафедрасы

КУРЫСТЫҚ ЖҰМЫС


Пәні:Алгоритм деректер құрылымы және бағдарламалау


Орындаған:Амандық Агжан
Мамандығы:ИС-05-057-20-02
Тақырыбы:Цикьлдік алгоритмдеу
Тәжірибе жетекшісі:Мустафаева Нагима Таировна



Нұр-Сұлтан 2022 жыл
Кіріспе:
Циклдік алгоритм кейбір әрекеттердің қайталануын жүзеге асырады. Басқаша айтқанда, циклдік алгоритмдер циклдерді қамтиды. Цикл – әр жолы жаңа параметр мәндерімен қайталанып орындалатын әрекеттер тізбегі. Цикл денесі - қайталанатын мәлімдеме.,
Көптеген алгоритмдерде белгілі бір әрекеттер бірнеше рет орындалады. Математикада, есеп шығару барысында айнымалы мәні өзгеруіне байланысты бір теңдеудің көмегімен бірнеше рет есептеледі. Алгоритмнің белгілі бір бөлігі бірнеше қайталанатын болса, ондай процессті цикл деп атайды. сті қамтымайды, санауыш біреу болуы шарт емес – циклден шығу шарты циклде өзгертілген бірнеше айнымалыларға байланысты болуы мүмкін немесе сыртқы жағдайлармен анықталуы мүмкін (мысалы, белгілі бір санның басталуы). уақыт), соңғы жағдайда есептегіш мүлдем қажет болмауы мүмкін. Кез келген циклдің орындалуы цикл айнымалыларының бастапқы инициализациясын, шығу шартын тексеруді, цикл денесін орындауды және әрбір итерацияда цикл айнымалысын жаңартуды қамтиды. Сонымен қатар, бағдарламалау тілдерінің көпшілігі циклді ерте аяқтау құралын қамтамасыз етеді, яғни шығу шартының ақиқаттығына қарамастан циклден шығу.
Циклдік қысқарту – есепті бірнеше рет бөлу арқылы үлкен сызықтық жүйелерді шешудің сандық әдісі. Әрбір қадам матрицаның жұп немесе тақ жолдары мен бағандарын жояды және ұқсас пішінде қалады. Жою қадамы салыстырмалы түрде қымбат, бірақ мәселені бөлу параллельді есептеуге мүмкіндік береді.
Алдын ала шарт циклдері циклдің орындалуы қандай да бір логикалық шартпен байланысты болғанда қолданылады. Алғы шарты бар цикл операторы екі бөліктен тұрады: циклдің орындалу шарты және цикл денесі. while операторы орындалғанда, while операторында анықталған логикалық шарт ақиқат болғанша операторлардың белгілі бір тобы орындалады. Егер шарт бірден жалған болса, онда мәлімдеме ешқашан орындалмайды. Алғы шарты бар циклдар Алғы шарты бар циклды пайдаланған кезде мынаны есте сақтаңыз: • циклдің орындалу шартының мәні цикл басталғанға дейін анықталуы керек; • егер шарт мәні ақиқат болса, онда цикл денесі орындалады, одан кейін шартты тексеру қайталанады. Егер шарт жалған болса, онда цикл шығады; • цикл денесіне енгізілген операторлардың кем дегенде біреуі циклдің орындалу шартының мәніне әсер етуі керек, әйтпесе цикл шексіз рет қайталанады.

1.Көбейту сынағы күрделігі қолданушының көбейту кестесі туралы білімінің тексеретін бағдарлама жазыңыз.Бағдарламада N сұрақ қояды,тест соңында дұрыс жауаптардың пайызы белгіленеді.>>9 x3=27 >>2 x 5 = 10, Нәтиже 100% >>> 5 x 5 = 25 >>> 3 x 7 = 21 >>> 2 x 2 = 34 Нәтиже 66%.
Код:
def user_input(message: str) -> int:
while True:
try:
x = int(input(message))
return x
except ValueError:
print('Error')
fail = 0
right = 0
n=int(input("Санын енгізіңіз:"))
z=n
while n>0:
n-=1
first = user_input('Бірінші нөмерді енгізіңіз: ')
second = user_input('екінші нөмерді енгізіңіз: ')
answer = user_input('Сіздің жауабыңыз: ')
if answer == first * second:
right += 1
else:
continue
print((right*100)/z)



right=0


n=int(input())
Z=n


n>0 ?






n-=1
first=user_input()
second=user_input()
answer=use_input()

Иә
Жоқ



Print((right*100)/z)




End

Жоқ

Answer==first
*second ?



Right +=1
иә


Def user_input(message str) -> int





True ?





try
Иә


Жоқ


except

x=int(input(message))
return x




End

ValueError?





Exception
Жоқ Иә

Print(‘Error’)





end try

2.Шарт бойынша барлық сандарды табыңыз - 2 Күрделі N натурал санын енгізіңіз және N-ден аспайтын және олардың әрбір цифрына бөлінетін барлық натурал сандарды басып шығарыңыз. >>> 15 1 2 3 4 5 6 7 8 9 11 12 15


Код:
N=int(input("Нөмерді енгізіңіз :"))
for i in range(1,N+1):
d = list(map(int, str(i)))
di = list(map(lambda x: x != 0 and i % x == 0, d))
if False not in di:
print(i)




N=int(input()




For i in range(1,N+1








End

d=list(map(int,str(i))
di=list(map(lambda X:X!=0 and I % x==0,d))

Жоқ



False not in di ?




print(i)
Иә

3.Автоморфтық сан Күрделілік Натурал сан оның квадратының соңғы цифрларына тең болса, ол автоморфты деп аталады. Мысалы, 252 = 625. N натурал санын қабылдайтын және N-ден үлкен емес барлық автоморфтық сандарды көрсететін программаны жазыңыз. >>> 10000 17709 >>> 20 32



n=int(input())






For I in range(n)




i*I % (10 **
len(str(i)))== I ?

Жоқ


End



Иә


print(i)

4.Максималды мәнге тең элементтер саны Күрделілік Тізбек натурал сандардан тұрады және 0 санымен аяқталады. Осы тізбектің қанша элементі оның ең үлкен элементіне тең екенін анықтаңыз. >>> 1 7 9 9 0 2 >>> 1 2 3 4 5 3 0 0


Код:
l=[]
while True:
a=int(input())
l.append(a)
if a==0:
break
z=max(l)
cnt=0
for i in range(len(l)):
if l[i]==z:
cnt+=1
if cnt==1:
print(0)
else:

print(cnt




I=0





True ?






Иә

a=int(input())
I.append(a)

Жоқ




a==0 ?
Жоқ



Z=max(I)
cnt=0
Иә




For I in range(len(I))


End


Жоқ

Cnt==1 ?

I[i]==z ?




Иә

Cnt +=1
Иә Жоқ

Print(cnt)

Print(0)





Еnd

Қортынды: Жалпы қортындылай келсек циклдік алгоритмдеу дегенміз көптеген алгоритмдерде белгілі бір әрекеттер бірнеше рет орындалады.Алгоритмнің белгілі бір әрекеттер бірнеше рет қайталанатын болса ,ондай процессті цикл деп атайды ,ал жалпы тілде айта кетсек қайталанатын бөлігі бар алгоритмдер циклдік алгоритм деп атаймыз.


Блок-схема.Блок схема компьютерге программалар жасау практикасында кеңіне қолданылатын алгоритмдерді жазудың графикалық тәсілі ,басқаша айтқанда алгоритмнің логикалық құрылымы графикалық тәсілі ,басқаша айтқанда ,алгоритмнің логикалық құрылымын график түрінде бейнелейтін тіл десек болады .Есепті шешу алгоритімнің блок схемасын құрған кезде есепті шығару процесі кезеңдерге бөлінеді .Әрбір кезең есептелетін операцияның сипатына байланысты белгілі конфигурациясы бар бір геометриялық фигурамен(блокпен) белгіленеді.Мысалы,жұмыр (сопақ),параллелограмм ,тіктөртбұрыш ,ромб т.с.с.
Блок деп аталатын мұндай фигуралардың ішінде кезеңдердің мазмұны жазылады.Есептелу процесінің бағыты блоктарды қосатын стрелкалармен көрсетіледі .Осы аталғандардың бәрі блок схема тілінің алфавитін құрайды және олардың мағынасы алдын ала келісім бойынша беріледі.

Пайдаланған әдебиеттер тізімі:


1.Лутц М. Изучаем Python, 4-е издание. – Пер. с англ. – СПб.: Символ-Плюс, 2011. – 1280 с.
2.Златопольский Д.М. Основы программирования на языке Python. – М.: ДМК Пресс, 2017. – 284 с.
3.Лутц М. Программирование на Python, том I, 4-е издание. – Пер. с англ. – СПб.: Символ-Плюс, 2011. – 992 с.
4.Лутц М. Программирование на Python, том II, 4-е издание. – Пер. с англ. – СПб.: Символ-Плюс, 2011. – 992 с.
5.Гэддис Т. Начинаем программировать на Python. – 4-е изд.: Пер. с англ. – СПб.: БХВ-Петербург, 2019. – 768 с.
6.Лучано Рамальо Python. К вершинам мастерства. – М.: ДМК Пресс, 2016. – 768 с.
7.Свейгарт, Эл. Автоматизация рутиных задач с помощью Python: практическое руководство для начинающих. Пер. с англ. — М.: Вильямc, 2016. – 592 с.
8.Рейтц К., Шлюссер Т. Автостопом по Python. – СПб.: Питер, 2017. – 336 с.: ил. – (Серия «Бестселлеры O’Reilly»).
9.Любанович Билл Простой Python. Современный стиль программирования. – СПб.: Питер, 2016. – 480 с.: – (Серия «Бестсепперы O’Reilly»).
10.Федоров, Д. Ю. Программирование на языке высокого уровня Python : учебное пособие для прикладного бакалавриата / Д. Ю. Федоров. – 2-е изд., перераб. и доп. – Москва : Издательство Юрайт, 2019. – 161 с. – (Бакалавр. Прикладной курс). – ISBN 978-5-534-10971-9. – Текст: электронный // ЭБС Юрайт [сайт]. – URL: https://urait.ru/bcode/437489 (дата обращения: 13.02.2020).
11.Шелудько, В. М. Основы программирования на языке высокого уровня Python: учебное пособие / В. М. Шелудько. – Ростов-на-Дону, Таганрог: Издательство Южного федерального университета, 2017. – 146 c. – ISBN 978-5-9275-2649-9. – Текст: электронный // Электронно-библиотечная система IPR BOOKS: [сайт]. – URL: http://www.iprbookshop.ru/87461.html (дата обращения: 13.02.2020). – Режим доступа: для авторизир. пользователей
12.Шелудько, В. М. Язык программирования высокого уровня Python. Функции, структуры данных, дополнительные модули: учебное пособие / В. М. Шелудько. – Ростов-на-Дону, Таганрог: Издательство Южного федерального университета, 2017. – 107 c. – ISBN 978-5-9275-2648-2. – Текст: электронный // Электронно-библиотечная система IPR BOOKS: [сайт]. – URL: http://www.iprbookshop.ru/87530.html (дата обращения: 13.02.2020). – Режим доступа: для авторизир. пользователей
13.Доусон М. Программируем на Python. – СПб.: Питер, 2014. – 416 с.
14.Прохоренок Н.А. Python 3 и PyQt. Разработка приложений. – СПб.: БХВ-Петербург, 2012. – 704 с.
15.Пилгрим Марк. Погружение в Python 3 (Dive into Python 3 на русском)
16.Прохоренок Н.А. Самое необходимое. — СПб.: БХВ-Петербург, 2011. — 416 с.

Достарыңызбен бөлісу:




©www.engime.org 2024
әкімшілігінің қараңыз

    Басты бет