10-сынып информатика олимпиадасына дайындық

Тақырып бойынша 11 материал табылды

10-сынып информатика олимпиадасына дайындық

Материал туралы қысқаша түсінік
10-сынып оқушыларына арналған Python тапсырмалары және олардың шешу жолдары ұсынылған. Әрбір тапсырма логикалық ойлау мен бағдарламалау қабілетін жетілдіруге бағытталған.
Материалдың қысқаша нұсқасы



10-сынып информатика олимпиадасына дайындық:



10-сынып оқушыларына арналған Python тапсырмалары және олардың шешу жолдары ұсынылған. Әрбір тапсырма логикалық ойлау мен бағдарламалау қабілетін жетілдіруге бағытталған.



1. Бөлімнің бүтін санын табу



Сұрақ: Екі сан берілген. Оларды бөлу нәтижесінің тек бүтін бөлігін шығарыңыз.

Код:



a, b = map(int, input("Екі сан енгізіңіз (бос орын арқылы): ").split())

print("Бүтін бөлігі:", a // b)



Түсіндіру: // операторы санның тек бүтін бөлігін береді.





---



2. Берілген диапазондағы сандарды табу



Сұрақ: A-дан B-ге дейінгі барлық сандарды шығарыңыз.

Код:



a, b = map(int, input("Диапазон енгізіңіз (A B): ").split())

for i in range(a, b + 1):

print(i, end=" ")



Түсіндіру: range функциясы A-дан B-ге дейінгі сандарды құрайды.





---



3. Жиымдағы қайталанатын элементтерді табу



Сұрақ: Берілген жиымдағы қайталанатын элементтерді анықтаңыз.

Код:



nums = list(map(int, input("Сандар тізімін енгізіңіз (бос орын арқылы): ").split()))

duplicates = set([num for num in nums if nums.count(num) > 1])

print("Қайталанатын элементтер:", duplicates)



Түсіндіру: set қайталанатын мәндерді бір рет қана сақтайды.





---



4. Сандар тізіміндегі жұп және тақ элементтерді санау



Сұрақ: Жиымдағы жұп және тақ элементтердің санын анықтаңыз.

Код:



nums = list(map(int, input("Сандар тізімін енгізіңіз (бос орын арқылы): ").split()))

even_count = sum(1 for x in nums if x % 2 == 0)

odd_count = len(nums) - even_count

print(f"Жұп саны: {even_count}, Тақ саны: {odd_count}")



Түсіндіру: Тізімдегі әрбір санның жұп немесе тақ екенін тексереміз.





---



5. Үшбұрыштың ауданы



Сұрақ: Үшбұрыштың үш қабырғасының ұзындығы берілген. Оның ауданын Герон формуласымен есептеңіз.

Код:



import math

a, b, c = map(float, input("Үш қабырғаның ұзындығын енгізіңіз (a b c): ").split())

s = (a + b + c) / 2

area = math.sqrt(s * (s - a) * (s - b) * (s - c))

print("Үшбұрыш ауданы:", area)



Түсіндіру: Герон формуласы: , мұндағы .





---



6. Факториалдың соңындағы нөлдер саны



Сұрақ: N санының факториалындағы соңғы нөлдердің санын табыңыз.

Код:



def trailing_zeros(n):

count = 0

while n >= 5:

n //= 5

count += n

return count



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

print("Соңғы нөлдер саны:", trailing_zeros(n))



Түсіндіру: Нөлдер саны 5-ке бөлінетін сандардың санына байланысты.





---



7. Берілген мәтінді шифрлау (Цезарь шифры)



Сұрақ: Берілген мәтінді әріптерін оңға 3 орынға жылжытып шифрлаңыз.

Код:



text = input("Мәтін енгізіңіз: ")

shift = 3

cipher = ''.join(chr((ord(c) - 97 + shift) % 26 + 97) if c.isalpha() else c for c in text.lower())

print("Шифрланған мәтін:", cipher)



Түсіндіру: Әріптердің ASCII кодын пайдаланып орын ауыстыру.





---



8. Мәтіндегі барлық дауысты дыбыстарды санау



Сұрақ: Мәтіндегі дауысты дыбыстардың санын есептеңіз.

Код:



text = input("Мәтін енгізіңіз: ").lower()

vowels = "aeiouаәеіоөұүыі"

count = sum(1 for c in text if c in vowels)

print("Дауысты дыбыстар саны:", count)



Түсіндіру: Әрбір әріптің дауысты дыбыстарға жататынын тексереміз.





---



9. Пайызбен өсу



Сұрақ: Берілген санға 10% қосыңыз.

Код:



n = float(input("Сан енгізіңіз: "))

print("10%-ға өскен мәні:", n * 1.1)



Түсіндіру: Санға -ді көбейту арқылы 10% қосамыз.





---



10. Берілген санның квадраты



Сұрақ: Санның квадратын есептеңіз.

Код:



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

print("Квадрат:", n ** 2)



Түсіндіру: дәрежеге көтеру операторы.





---



11. Берілген мәтіндегі әріптерді реттеу



Сұрақ: Әріптерді алфавит бойынша реттеңіз.

Код:



text = input("Мәтін енгізіңіз: ")

sorted_text = ''.join(sorted(text))

print("Реттелген мәтін:", sorted_text)





---



12. Ең кіші санды табу



Сұрақ: Тізімдегі ең кіші санды анықтаңыз.

Код:



nums = list(map(int, input("Сандар тізімін енгізіңіз: ").split()))

print("Ең кіші сан:", min(nums))





---



13. Палиндром сандарын табу



Сұрақ: Берілген диапазондағы палиндром сандарын табыңыз.

Код:



a, b = map(int, input("Диапазон енгізіңіз: ").split())

for num in range(a, b + 1):

if str(num) == str(num)[::-1]:

print(num, end=" ")





---



14. Күрделі сандарды көбейту



Сұрақ: Күрделі сандардың көбейтіндісін табыңыз.

Код:



a = complex(input("1-күрделі сан енгізіңіз (мысалы: 1+2j): "))

b = complex(input("2-күрделі сан енгізіңіз: "))

print("Көбейтінді:", a * b)





---



15. Бірнеше файлдан дерек алу



Сұрақ: 3 файлдағы ортақ сөздерді анықтаңыз.

Код:



files = ["file1.txt", "file2.txt", "file3.txt"]

common_words = set(open(files[0]).read().split())

for file in files[1:]:

common_words.intersection_update(set(open(file).read().split()))

print("Ортақ сөздер:", common_words)

16. Берілген массивті өсу ретімен сұрыптау



Сұрақ: Сандар массивін өсу ретімен сұрыптаңыз.

Код:



nums = list(map(int, input("Сандар массивін енгізіңіз (бос орын арқылы): ").split()))

nums.sort()

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



Түсіндіру: sort әдісі массивті өсу ретімен сұрыптайды.





---



17. Берілген санның кері сандар қосындысы



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

Код:



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

harmonic_sum = sum(1 / i for i in range(1, n + 1))

print("Кері сандар қосындысы:", harmonic_sum)



Түсіндіру: Генератор көмегімен -ді қосамыз.





---



18. Тізімнен теріс сандарды жою



Сұрақ: Берілген тізімнен теріс сандарды жойыңыз.

Код:



nums = list(map(int, input("Сандар тізімін енгізіңіз (бос орын арқылы): ").split()))

positive_nums = [x for x in nums if x >= 0]

print("Тек оң сандар:", positive_nums)



Түсіндіру: if x >= 0 шарты арқылы тек оң сандарды таңдаймыз.





---



19. Үлкен матрицаның негізгі диагоналын шығару



Сұрақ: NxN өлшемдегі матрицаның негізгі диагоналын шығарыңыз.

Код:



n = int(input("Матрица өлшемін енгізіңіз: "))

matrix = []

for i in range(n):

row = list(map(int, input(f"{i+1}-қатарды енгізіңіз: ").split()))

matrix.append(row)



diagonal = [matrix[i][i] for i in range(n)]

print("Негізгі диагонал:", diagonal)



Түсіндіру: Матрицаның [i][i] индекстеріндегі элементтері негізгі диагонал болып табылады.





---



20. Тізімнің қайталанбайтын элементтерін табу



Сұрақ: Берілген тізімнен тек қайталанбайтын элементтерді шығарыңыз.

Код:



nums = list(map(int, input("Сандар тізімін енгізіңіз (бос орын арқылы): ").split()))

unique_nums = [x for x in nums if nums.count(x) == 1]

print("Қайталанбайтын элементтер:", unique_nums)



Түсіндіру: nums.count(x) == 1 шарты арқылы тек бір рет кездесетін сандарды таңдаймыз.





Жүктеу
bolisu
Бөлісу
ЖИ арқылы жасау
Файл форматы:
docx
17.11.2024
294
Жүктеу
ЖИ арқылы жасау
Жариялаған:
Бұл материалды қолданушы жариялаған. Ustaz Tilegi ақпаратты жеткізуші ғана болып табылады. Жарияланған материалдың мазмұны мен авторлық құқық толықтай автордың жауапкершілігінде. Егер материал авторлық құқықты бұзады немесе сайттан алынуы тиіс деп есептесеңіз,
шағым қалдыра аласыз
Қазақстандағы ең үлкен материалдар базасынан іздеу
Сіз үшін 400 000 ұстаздардың еңбегі мен тәжірибесін біріктіріп, ең үлкен материалдар базасын жасадық. Төменде керек материалды іздеп, жүктеп алып сабағыңызға қолдана аласыз
Материал жариялап, аттестацияға 100% жарамды сертификатты тегін алыңыз!
Ustaz tilegi журналы министірліктің тізіміне енген. Qr коды мен тіркеу номері беріледі. Материал жариялаған соң сертификат тегін бірден беріледі.
Оқу-ағарту министірлігінің ресми жауабы
Сайтқа 5 материал жариялап, тегін АЛҒЫС ХАТ алыңыз!
Қазақстан Республикасының білім беру жүйесін дамытуға қосқан жеке үлесі үшін және де Республика деңгейінде «Ustaz tilegi» Республикалық ғылыми – әдістемелік журналының желілік басылымына өз авторлық материалыңызбен бөлісіп, белсенді болғаныңыз үшін алғыс білдіреміз!
Сайтқа 25 материал жариялап, тегін ҚҰРМЕТ ГРОМАТАСЫН алыңыз!
Тәуелсіз Қазақстанның білім беру жүйесін дамытуға және білім беру сапасын арттыру мақсатында Республика деңгейінде «Ustaz tilegi» Республикалық ғылыми – әдістемелік журналының желілік басылымына өз авторлық жұмысын жариялағаны үшін марапатталасыз!
Министірлікпен келісілген курстар тізімі