#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";
}
}
Для создания алгоритма (программы) необходимо знать:
полный набор исходных данных задачи (начальное состояние объекта);
цель создания алгоритма (конечное состояние объекта);
систему команд исполнителя (то есть набор команд, которые исполнитель понимает и может выполнить).
Полученный алгоритм (программа) должен обладать следующим набором свойств:
дискретность (алгоритм разбит на отдельные шаги - команды);
однозначность (каждая команда определяет единственно возможное действие исполнителя);
понятность (все команды алгоритма входят в систему команд исполнителя);
результативность (исполнитель должен решить задачу за конечное число шагов).
Большая часть алгоритмов обладает также свойством массовости (с одного и того же алгоритма можно решать множество однотипных задач).
Поделитесь своими знаниями, ответьте на вопрос:
Дан массив из n целых чисел и число х, замените все числа массива которые меньше х на 10 и выведите получившийся массив.
Console.Write("Введите количество строк: ");
int i_n = int.Parse(Console.ReadLine());
Console.Write("Введите количество столбцов: ");
int j_n = int.Parse(Console.ReadLine());
Console.Write("Введите число: ");
int x = int.Parse(Console.ReadLine());
Random rnd = new Random();
int[,] A = new int[i_n, j_n];
Console.WriteLine();
Console.WriteLine("Введенный массив A:");
Console.WriteLine();
for (int i = 0; i < i_n; i++)
{
for (int j = 0; j < j_n; j++)
{
A[i, j] = rnd.Next(0, 50);
Console.Write("{0,-3} ", A[i, j]);
}
Console.WriteLine();
}
Console.WriteLine();
Console.WriteLine("Новый массив A:");
Console.WriteLine();
for (int i = 0; i < i_n; i++)
{
for (int j = 0; j < j_n; j++)
{
if (A[i, j] < x) A[i, j] += 10;
Console.Write("{0,-3} ", A[i, j]);
}
Console.WriteLine();
}
Console.ReadLine();