
Напишите программу, которая в последовательности натуральных чисел определяет среднее
арифметическое цифр такого числа, которое оканчивается на 2 и все составляющие его цифры чётные. Программа получает на вход количество чисел в последовательности, а затем сами числа. Количество чисел не превышает 2000. Введённые числа не превышают 500. Программа должна выводить среднее арифметическое цифр каждого числа, удовлетворяющего заданным условиям. Реализовать нужно с помощью массива

Ответы на вопрос

#include <iostream>
#include <cmath>
#include <algorithm>
#pragma GCC optimize("Ofast")
#define ll long long
#define ld long double
using namespace std;
bool check_last(ll num){
if(num % 10 == 2)
return true;
else
return false;
}
bool check_parity(ll num){
while(num > 0){
if(num % 10 % 2 == 1)
return false;
num /= 10;
}
return true;
}
ld func(ll num){
ll sum = 0,am = 0;
while(num > 0){
sum += num % 10;
num /= 10;
am++;
}
return sum/am;
}
signed main() {
ll n;
cin >> n;
ll a[n];
for(ll i = 0; i < n; i++)
cin >> a[i];
for(auto i: a){
if(check_last(i) && check_parity(i))
cout << "Среднее арифметическое числа " << i << " равно: " << func(i) << "\n";
}
}



Приведу пример реализации программы на Python с использованием массива для данной задачи:
pythondef is_even_digit(number):
while number > 0:
digit = number % 10
if digit % 2 != 0:
return False
number //= 10
return True
def main():
n = int(input("Введите количество чисел: "))
numbers = []
for _ in range(n):
num = int(input("Введите число: "))
if num % 10 == 2 and is_even_digit(num):
numbers.append(num)
if len(numbers) == 0:
print("Нет подходящих чисел")
else:
total_sum = 0
count = 0
for num in numbers:
total_sum += num
count += 1
avg = total_sum / count
print(f"Среднее арифметическое цифр числа {num}: {avg:.2f}")
if __name__ == "__main__":
main()
Этот код сначала запрашивает количество чисел в последовательности, затем вводит сами числа и проверяет, удовлетворяют ли они условиям (оканчиваются на 2 и состоят из четных цифр). Если числа удовлетворяют условиям, они добавляются в массив. После завершения ввода чисел, программа вычисляет среднее арифметическое для каждого подходящего числа и выводит результат.


Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili