Материалдар / 11-сынып оқушыларына олимпиадаға дайындық тапсырмалары
МИНИСТРЛІКПЕН КЕЛІСІЛГЕН КУРСҚА ҚАТЫСЫП, АТТЕСТАЦИЯҒА ЖАРАМДЫ СЕРТИФИКАТ АЛЫҢЫЗ!
Сертификат Аттестацияға 100% жарамды
ТОЛЫҚ АҚПАРАТ АЛУ

11-сынып оқушыларына олимпиадаға дайындық тапсырмалары

Материал туралы қысқаша түсінік
11-сынып оқушыларына олимпиадаға дайындық тапсырмалары
Авторы:
Автор материалды ақылы түрде жариялады. Сатылымнан түскен қаражат авторға автоматты түрде аударылады. Толығырақ
20 Қараша 2024
100
0 рет жүктелген
700 ₸
Бүгін алсаңыз
+35 бонус
беріледі
Бұл не?
Бүгін алсаңыз +35 бонус беріледі Бұл не?
Тегін турнир Мұғалімдер мен Тәрбиешілерге
Дипломдар мен сертификаттарды алып үлгеріңіз!
Бұл бетте материалдың қысқаша нұсқасы ұсынылған. Материалдың толық нұсқасын жүктеп алып, көруге болады
logo

Материалдың толық нұсқасын
жүктеп алып көруге болады

11-сынып оқушыларына олимпиадаға дайындық тапсырмалары


1. Екі санның ең үлкен ортақ бөлгішін (ЕҮОБ) табу


Шарт:

Берілген және сандарының ең үлкен ортақ бөлгішін табыңыз. Алгоритмді Евклид әдісі арқылы жүзеге асырыңыз.


Шешімі (Python):


def gcd(a, b):

while b:

a, b = b, a % b

return a


a, b = map(int, input("a және b сандарын енгізіңіз: ").split())

print("ЕҮОБ:", gcd(a, b))



---


2. Палиндром сандарды санау


Шарт:

Берілген аралықтағы () барлық палиндром сандарды анықтап, олардың санын шығарыңыз.


Шешімі (Python):


def is_palindrome(n):

return str(n) == str(n)[::-1]


L, R = map(int, input("L және R мәндерін енгізіңіз: ").split())

count = sum(1 for x in range(L, R + 1) if is_palindrome(x))

print("Палиндром сандар саны:", count)



---


3. Квадраттық теңдеу шешімі


Шарт:

Берілген квадраттық теңдеу: . Коэффициенттері арқылы теңдеудің шешімдерін табыңыз.


Шешімі (Python):


import math


a, b, c = map(float, input("a, b, c коэффициенттерін енгізіңіз: ").split())


discriminant = b**2 - 4 * a * c

if discriminant > 0:

x1 = (-b + math.sqrt(discriminant)) / (2 * a)

x2 = (-b - math.sqrt(discriminant)) / (2 * a)

print("Екі шешім:", x1, x2)

elif discriminant == 0:

x = -b / (2 * a)

print("Бір шешім:", x)

else:

print("Шешімі жоқ")



---


4. Ең ұзын өспелі ішкі тізбекті табу


Шарт:

Берілген массивтен ең ұзын өспелі ішкі тізбекті табыңыз.


Шешімі (Python):


def longest_increasing_subsequence(arr):

n = len(arr)

dp = [1] * n

for i in range(1, n):

for j in range(i):

if arr[i] > arr[j]:

dp[i] = max(dp[i], dp[j] + 1)

return max(dp)


arr = list(map(int, input("Массив элементтерін енгізіңіз: ").split()))

print("Ең ұзын өспелі тізбек ұзындығы:", longest_increasing_subsequence(arr))



---


5. Сандарды қарапайым сұрыптау (сандарды өсу ретімен)


Шарт:

Берілген тізімдегі сандарды өсу ретімен сұрыптаңыз (Bubble Sort қолданыңыз).


Шешімі (Python):


def bubble_sort(arr):

n = len(arr)

for i in range(n):

for j in range(0, n - i - 1):

if arr[j] > arr[j + 1]:

arr[j], arr[j + 1] = arr[j + 1], arr[j]

return arr


arr = list(map(int, input("Массив элементтерін енгізіңіз: ").split()))

sorted_arr = bubble_sort(arr)

print("Сұрыпталған массив:", sorted_arr)








6. Динамикалық бағдарламалау: Рюкзак мәселесі (Knapsack Problem)


Шарт:

Берілген заттардың салмағы () және құндылығы (), рюкзактың максималды салмағы () арқылы рюкзакқа сыйғызуға болатын максималды құндылықты табыңыз.


Шешімі (Python):


def knapsack(W, weights, values, n):

dp = [[0] * (W + 1) for _ in range(n + 1)]

for i in range(1, n + 1):

for w in range(W + 1):

if weights[i - 1] <= w:

dp[i][w] = max(dp[i - 1][w], dp[i - 1][w - weights[i - 1]] + values[i - 1])

else:

dp[i][w] = dp[i - 1][w]

return dp[n][W]


n = int(input("Заттар саны: "))

weights = list(map(int, input("Заттардың салмағы: ").split()))

values = list(map(int, input("Заттардың құндылығы: ").split()))

W = int(input("Рюкзактың максималды салмағы: "))

print("Максималды құндылық:", knapsack(W, weights, values, n))



---


7. Санның цифрларын көбейту


Шарт:

Берілген санның цифрларын көбейтіп, нәтижесін табыңыз.


Шешімі (Python):


def multiply_digits(n):

result = 1

while n > 0:

result *= n % 10

n //= 10

return result


n = int(input("Санды енгізіңіз: "))

print("Цифрлар көбейтіндісі:", multiply_digits(n))



Ресми байқаулар тізімі
Республикалық байқауларға қатысып жарамды дипломдар алып санатыңызды көтеріңіз!