11-сынып оқушыларына арналған информатика олимпиада тапсырмалары
1. Берілген санның цифрларының қосындысы
Шарт:
Берілген санының барлық цифрларының қосындысын табыңыз.
Шешімі (Python):
def digit_sum(n):
return sum(int(digit) for digit in str(n))
n = int(input("Санды енгізіңіз: "))
print("Цифрлар қосындысы:", digit_sum(n))
---
2. Үшбұрыш ауданы (Герон формуласы)
Шарт:
Үшбұрыштың қабырғалары берілген. Үшбұрыштың ауданын Герон формуласымен табыңыз.
Шешімі (Python):
import math
def triangle_area(a, b, c):
s = (a + b + c) / 2
return math.sqrt(s * (s - a) * (s - b) * (s - c))
a, b, c = map(float, input("Үшбұрыш қабырғаларын енгізіңіз (a, b, c): ").split())
print("Үшбұрыш ауданы:", triangle_area(a, b, c))
---
3. Берілген аралықтағы жай сандардың қосындысы
Шарт:
Берілген аралығындағы барлық жай сандардың қосындысын табыңыз.
Шешімі (Python):
def is_prime(n):
if n < 2:
return False
for i in range(2, int(n**0.5) + 1):
if n % i == 0:
return False
return True
L, R = map(int, input("L және R мәндерін енгізіңіз: ").split())
prime_sum = sum(x for x in range(L, R + 1) if is_prime(x))
print("Жай сандар қосындысы:", prime_sum)
---
4. Циклдық ауысым
Шарт:
Берілген массив элементтерін оңға қарай қадамға жылжытыңыз.
Шешімі (Python):
def rotate_array(arr, k):
k %= len(arr)
return arr[-k:] + arr[:-k]
arr = list(map(int, input("Массив элементтерін енгізіңіз: ").split()))
k = int(input("
4. Берілген санның цифрларының қосындысы
Шарт:
Берілген санының барлық цифрларының қосындысын табыңыз.
Шешімі (Python):
def digit_sum(n):
return sum(int(digit) for digit in str(n))
n = int(input("Санды енгізіңіз: "))
print("Цифрлар қосындысы:", digit_sum(n))
---
5. Үшбұрыш ауданы (Герон формуласы)
Шарт:
Үшбұрыштың қабырғалары берілген. Үшбұрыштың ауданын Герон формуласымен табыңыз.
Шешімі (Python):
import math
def triangle_area(a, b, c):
s = (a + b + c) / 2
return math.sqrt(s * (s - a) * (s - b) * (s - c))
a, b, c = map(float, input("Үшбұрыш қабырғаларын енгізіңіз (a, b, c): ").split())
print("Үшбұрыш ауданы:", triangle_area(a, b, c))
---
6. Берілген аралықтағы жай сандардың қосындысы
Шарт:
Берілген аралығындағы барлық жай сандардың қосындысын табыңыз.
Шешімі (Python):
def is_prime(n):
if n < 2:
return False
for i in range(2, int(n**0.5) + 1):
if n % i == 0:
return False
return True
L, R = map(int, input("L және R мәндерін енгізіңіз: ").split())
prime_sum = sum(x for x in range(L, R + 1) if is_prime(x))
print("Жай сандар қосындысы:", prime_sum)
---
7 Циклдық ауысым
Шарт:
Берілген массив элементтерін оңға қарай қадамға жылжытыңыз.
Шешімі (Python):
def rotate_array(arr, k):
k %= len(arr)
return arr[-k:] + arr[:-k]
arr = list(map(int, input("Массив элементтерін енгізіңіз: ").split()))
k = int(input("Жылжыту қадам саны: "))
print("Жылжытылған массив:", rotate_array(arr, k))
---
8. Теңдікке арналған массив жұптарын табу
Шарт:
Берілген массивтен индекстерін табыңыз, мұндағы және .
Шешімі (Python):
def find_equal_pairs(arr):
pairs = []
seen = {}
for i, num in enumerate(arr):
if num in seen:
pairs.append((seen[num], i))
seen[num] = i
return pairs
arr = list(map(int, input("Массив элементтерін енгізіңіз: ").split()))
print("Жұптар:", find_equal_pairs(arr))
---
9. Ең жиі кездесетін сан
Шарт:
Берілген массивте ең жиі кездесетін санды табыңыз. Егер бірнешеу болса, ең кішісін қайтарыңыз.
Шешімі (Python):
from collections import Counter
def most_frequent(arr):
counter = Counter(arr)
max_freq = max(counter.values())
candidates = [key for key, value in counter.items() if value == max_freq]
return min(candidates)
arr = list(map(int, input("Массив элементтерін енгізіңіз: ").split()))
print("Ең жиі кездесетін сан:", most_frequent(arr))
---
10. Сандарды екілік жүйеге ауыстыру
Шарт:
Берілген санын екілік жүйеге ауыстырып, нәтижені шығарыңыз.
Шешімі (Python):
n = int(input("Санды енгізіңіз: "))
print("Екілік жүйедегі мәні:", bin(n)[2:])
---
11. Көпмүшенің мәнін есептеу
Шарт:
Берілген көпмүше: . мәні үшін көпмүшенің мәнін табыңыз.
Шешімі (Python):
def polynomial_value(coefficients, x):
result = 0
for power, coeff in enumerate(reversed(coefficients)):
result += coeff * (x ** power)
return result
coefficients = list(map(int, input("Коэффициенттерді енгізіңіз: ").split()))
x = int(input("x мәнін енгізіңіз: "))
print("Көпмүшенің мәні:", polynomial_value(coefficients, x))
---
12. Ең ұзын бірдей сандардың тізбегі
Шарт:
Массивтегі ең ұзын бірдей элементтер тізбегін табыңыз.
Шешімі (Python):
def longest_equal_sequence(arr):
max_count = count = 1
max_num = arr[0]
for i in range(1, len(arr)):
if arr[i] == arr[i - 1]:
count += 1
if count > max_count:
max_count = count
max_num = arr[i]
else:
count = 1
return max_num, max_count
arr = list(map(int, input("Массив элементтерін енгізіңіз: ").split()))
num, length = longest_equal_sequence(arr)
print(f"Ең ұзын тізбек саны: {num}, ұзындығы: {length}")
---
жүктеу мүмкіндігіне ие боласыз
Бұл материал сайт қолданушысы жариялаған. Материалдың ішінде жазылған барлық ақпаратқа жауапкершілікті жариялаған қолданушы жауап береді. Ұстаз тілегі тек ақпаратты таратуға қолдау көрсетеді. Егер материал сіздің авторлық құқығыңызды бұзған болса немесе басқа да себептермен сайттан өшіру керек деп ойласаңыз осында жазыңыз
11-сынып оқушыларына арналған информатика олимпиада дайындық тапсырмалары
11-сынып оқушыларына арналған информатика олимпиада дайындық тапсырмалары
11-сынып оқушыларына арналған информатика олимпиада тапсырмалары
1. Берілген санның цифрларының қосындысы
Шарт:
Берілген санының барлық цифрларының қосындысын табыңыз.
Шешімі (Python):
def digit_sum(n):
return sum(int(digit) for digit in str(n))
n = int(input("Санды енгізіңіз: "))
print("Цифрлар қосындысы:", digit_sum(n))
---
2. Үшбұрыш ауданы (Герон формуласы)
Шарт:
Үшбұрыштың қабырғалары берілген. Үшбұрыштың ауданын Герон формуласымен табыңыз.
Шешімі (Python):
import math
def triangle_area(a, b, c):
s = (a + b + c) / 2
return math.sqrt(s * (s - a) * (s - b) * (s - c))
a, b, c = map(float, input("Үшбұрыш қабырғаларын енгізіңіз (a, b, c): ").split())
print("Үшбұрыш ауданы:", triangle_area(a, b, c))
---
3. Берілген аралықтағы жай сандардың қосындысы
Шарт:
Берілген аралығындағы барлық жай сандардың қосындысын табыңыз.
Шешімі (Python):
def is_prime(n):
if n < 2:
return False
for i in range(2, int(n**0.5) + 1):
if n % i == 0:
return False
return True
L, R = map(int, input("L және R мәндерін енгізіңіз: ").split())
prime_sum = sum(x for x in range(L, R + 1) if is_prime(x))
print("Жай сандар қосындысы:", prime_sum)
---
4. Циклдық ауысым
Шарт:
Берілген массив элементтерін оңға қарай қадамға жылжытыңыз.
Шешімі (Python):
def rotate_array(arr, k):
k %= len(arr)
return arr[-k:] + arr[:-k]
arr = list(map(int, input("Массив элементтерін енгізіңіз: ").split()))
k = int(input("
4. Берілген санның цифрларының қосындысы
Шарт:
Берілген санының барлық цифрларының қосындысын табыңыз.
Шешімі (Python):
def digit_sum(n):
return sum(int(digit) for digit in str(n))
n = int(input("Санды енгізіңіз: "))
print("Цифрлар қосындысы:", digit_sum(n))
---
5. Үшбұрыш ауданы (Герон формуласы)
Шарт:
Үшбұрыштың қабырғалары берілген. Үшбұрыштың ауданын Герон формуласымен табыңыз.
Шешімі (Python):
import math
def triangle_area(a, b, c):
s = (a + b + c) / 2
return math.sqrt(s * (s - a) * (s - b) * (s - c))
a, b, c = map(float, input("Үшбұрыш қабырғаларын енгізіңіз (a, b, c): ").split())
print("Үшбұрыш ауданы:", triangle_area(a, b, c))
---
6. Берілген аралықтағы жай сандардың қосындысы
Шарт:
Берілген аралығындағы барлық жай сандардың қосындысын табыңыз.
Шешімі (Python):
def is_prime(n):
if n < 2:
return False
for i in range(2, int(n**0.5) + 1):
if n % i == 0:
return False
return True
L, R = map(int, input("L және R мәндерін енгізіңіз: ").split())
prime_sum = sum(x for x in range(L, R + 1) if is_prime(x))
print("Жай сандар қосындысы:", prime_sum)
---
7 Циклдық ауысым
Шарт:
Берілген массив элементтерін оңға қарай қадамға жылжытыңыз.
Шешімі (Python):
def rotate_array(arr, k):
k %= len(arr)
return arr[-k:] + arr[:-k]
arr = list(map(int, input("Массив элементтерін енгізіңіз: ").split()))
k = int(input("Жылжыту қадам саны: "))
print("Жылжытылған массив:", rotate_array(arr, k))
---
8. Теңдікке арналған массив жұптарын табу
Шарт:
Берілген массивтен индекстерін табыңыз, мұндағы және .
Шешімі (Python):
def find_equal_pairs(arr):
pairs = []
seen = {}
for i, num in enumerate(arr):
if num in seen:
pairs.append((seen[num], i))
seen[num] = i
return pairs
arr = list(map(int, input("Массив элементтерін енгізіңіз: ").split()))
print("Жұптар:", find_equal_pairs(arr))
---
9. Ең жиі кездесетін сан
Шарт:
Берілген массивте ең жиі кездесетін санды табыңыз. Егер бірнешеу болса, ең кішісін қайтарыңыз.
Шешімі (Python):
from collections import Counter
def most_frequent(arr):
counter = Counter(arr)
max_freq = max(counter.values())
candidates = [key for key, value in counter.items() if value == max_freq]
return min(candidates)
arr = list(map(int, input("Массив элементтерін енгізіңіз: ").split()))
print("Ең жиі кездесетін сан:", most_frequent(arr))
---
10. Сандарды екілік жүйеге ауыстыру
Шарт:
Берілген санын екілік жүйеге ауыстырып, нәтижені шығарыңыз.
Шешімі (Python):
n = int(input("Санды енгізіңіз: "))
print("Екілік жүйедегі мәні:", bin(n)[2:])
---
11. Көпмүшенің мәнін есептеу
Шарт:
Берілген көпмүше: . мәні үшін көпмүшенің мәнін табыңыз.
Шешімі (Python):
def polynomial_value(coefficients, x):
result = 0
for power, coeff in enumerate(reversed(coefficients)):
result += coeff * (x ** power)
return result
coefficients = list(map(int, input("Коэффициенттерді енгізіңіз: ").split()))
x = int(input("x мәнін енгізіңіз: "))
print("Көпмүшенің мәні:", polynomial_value(coefficients, x))
---
12. Ең ұзын бірдей сандардың тізбегі
Шарт:
Массивтегі ең ұзын бірдей элементтер тізбегін табыңыз.
Шешімі (Python):
def longest_equal_sequence(arr):
max_count = count = 1
max_num = arr[0]
for i in range(1, len(arr)):
if arr[i] == arr[i - 1]:
count += 1
if count > max_count:
max_count = count
max_num = arr[i]
else:
count = 1
return max_num, max_count
arr = list(map(int, input("Массив элементтерін енгізіңіз: ").split()))
num, length = longest_equal_sequence(arr)
print(f"Ең ұзын тізбек саны: {num}, ұзындығы: {length}")
---
шағым қалдыра аласыз













