Другие языки программирования и технологии
C#. Элементы одномерного массива размером 7, которые больше среднего значения элементов массива, заменить на 0.
Помогите пожалуйста написать программу на c#. Заранее спасибо!
Сам только учусь, поэтому так подробно расписал.
Постарался сделать максимально универсальным и подробным.
Количество элементов задаётся в консоли. Пункт 3 заполнения случайными числами можно заменить на ввод с консоли, подобно пункту 1.
Еще не научился оставлять в комментах, поэтому код может быть будет неправильно отображаться
using System;
namespace Massiv
{
class Program
{
static void Main(string[] args)
{
// 1. Количество элементов массива
Console.WriteLine("Ваедите количество элементов:");
int count = Convert.ToInt32(Console.ReadLine());
// 2. Создание массива
int[] massiv = new int[count];
// 3. Заполнение массива генератором случайных чисел
// 3.1 Создание объекта, для генерации случайных чисел
Random rnd = new Random();
// 3.2 Заполнение массива случайными числами и его показ на консоль
Console.WriteLine("Данные массива:");
for (int i = 0; i < massiv.Length; i++)
{
massiv[i] = rnd.Next(0, 100);
Console.WriteLine($"massiv[{i}] = {massiv[i]}");
}
// 4. Подсчет среднего арифметического значения массива
double srednee=0, summ=0;
// 4.1 Подсчет суммы массива
for (int i = 0; i < massiv.Length; i++)
{
summ += massiv[i];
}
// 4.2 Подсчет среднго, округление до сотых и его показ
srednee = Math.Round(summ / massiv.Length, 2);
Console.WriteLine($"Среднее значение массива = {srednee}");
// 5. Нахождение элементов > среднего, их обнуление и показ массива
Console.WriteLine("Обработанный массив");
for (int i = 0; i < massiv.Length; i++)
{
if (massiv[i] > srednee) { Console.WriteLine($"massiv[{i}] = 0 - обнулен, так как {massiv[i]}>{srednee} "); massiv[i] = 0; }
else Console.WriteLine($"massiv[{i}] = {massiv[i]}");
}
}
}
}
Постарался сделать максимально универсальным и подробным.
Количество элементов задаётся в консоли. Пункт 3 заполнения случайными числами можно заменить на ввод с консоли, подобно пункту 1.
Еще не научился оставлять в комментах, поэтому код может быть будет неправильно отображаться
using System;
namespace Massiv
{
class Program
{
static void Main(string[] args)
{
// 1. Количество элементов массива
Console.WriteLine("Ваедите количество элементов:");
int count = Convert.ToInt32(Console.ReadLine());
// 2. Создание массива
int[] massiv = new int[count];
// 3. Заполнение массива генератором случайных чисел
// 3.1 Создание объекта, для генерации случайных чисел
Random rnd = new Random();
// 3.2 Заполнение массива случайными числами и его показ на консоль
Console.WriteLine("Данные массива:");
for (int i = 0; i < massiv.Length; i++)
{
massiv[i] = rnd.Next(0, 100);
Console.WriteLine($"massiv[{i}] = {massiv[i]}");
}
// 4. Подсчет среднего арифметического значения массива
double srednee=0, summ=0;
// 4.1 Подсчет суммы массива
for (int i = 0; i < massiv.Length; i++)
{
summ += massiv[i];
}
// 4.2 Подсчет среднго, округление до сотых и его показ
srednee = Math.Round(summ / massiv.Length, 2);
Console.WriteLine($"Среднее значение массива = {srednee}");
// 5. Нахождение элементов > среднего, их обнуление и показ массива
Console.WriteLine("Обработанный массив");
for (int i = 0; i < massiv.Length; i++)
{
if (massiv[i] > srednee) { Console.WriteLine($"massiv[{i}] = 0 - обнулен, так как {massiv[i]}>{srednee} "); massiv[i] = 0; }
else Console.WriteLine($"massiv[{i}] = {massiv[i]}");
}
}
}
}
u̴s̴i̴n̴g̴ ̴S̴y̴s̴t̴e̴m̴;̴
n̴a̴m̴e̴s̴p̴a̴c̴e̴ ̴t̴e̴s̴t̴c̴o̴n̴s̴o̴l̴e̴
{̴
c̴l̴a̴s̴s̴ ̴P̴r̴o̴g̴r̴a̴m̴
{̴
p̴u̴b̴l̴i̴c̴ ̴s̴t̴a̴t̴i̴c̴ ̴v̴o̴i̴d̴ ̴M̴a̴i̴n̴(̴s̴t̴r̴i̴n̴g̴[̴]̴ ̴a̴r̴g̴s̴)̴
{̴
R̴a̴n̴d̴o̴m̴ ̴r̴a̴n̴d̴ ̴=̴ ̴n̴e̴w̴ ̴R̴a̴n̴d̴o̴m̴(̴)̴;̴
i̴n̴t̴ ̴s̴ ̴=̴ ̴0̴;̴
c̴o̴n̴s̴t̴ ̴i̴n̴t̴ ̴n̴ ̴=̴ ̴7̴;̴
i̴n̴t̴ ̴[̴]̴ ̴a̴ ̴=̴ ̴n̴e̴w̴ ̴i̴n̴t̴[̴n̴]̴;̴
f̴o̴r̴(̴i̴n̴t̴ ̴i̴ ̴=̴ ̴0̴;̴ ̴i̴ ̴<̴ ̴n̴;̴ ̴+̴+̴i̴)̴{̴
a̴[̴i̴]̴ ̴=̴ ̴r̴a̴n̴d̴.̴N̴e̴x̴t̴(̴-̴5̴0̴,̴ ̴5̴0̴)̴;̴
C̴o̴n̴s̴o̴l̴e̴.̴W̴r̴i̴t̴e̴(̴"̴{̴0̴,̴4̴}̴"̴,̴ ̴a̴[̴i̴]̴)̴;̴
s̴ ̴+̴=̴ ̴a̴[̴i̴]̴;̴
}̴
C̴o̴n̴s̴o̴l̴e̴.̴W̴r̴i̴t̴e̴L̴i̴n̴e̴(̴"̴\̴n̴С̴р̴е̴д̴н̴е̴е̴ ̴а̴р̴и̴ф̴м̴е̴т̴и̴ч̴е̴с̴к̴о̴е̴:̴ ̴"̴ ̴+̴ ̴s̴ ̴/̴ ̴n̴)̴;̴
f̴o̴r̴(̴i̴n̴t̴ ̴i̴ ̴=̴ ̴0̴;̴ ̴i̴ ̴<̴ ̴n̴;̴ ̴+̴+̴i̴)̴{̴
i̴f̴ ̴(̴a̴[̴i̴]̴ ̴<̴ ̴s̴ ̴/̴ ̴n̴)̴
a̴[̴i̴]̴ ̴=̴ ̴0̴;̴
C̴o̴n̴s̴o̴l̴e̴.̴W̴r̴i̴t̴e̴(̴"̴{̴0̴,̴4̴}̴"̴,̴ ̴a̴[̴i̴]̴)̴;̴
}̴
C̴o̴n̴s̴o̴l̴e̴.̴R̴e̴a̴d̴K̴e̴y̴(̴t̴r̴u̴e̴)̴;̴
}̴
}̴
}̴
n̴a̴m̴e̴s̴p̴a̴c̴e̴ ̴t̴e̴s̴t̴c̴o̴n̴s̴o̴l̴e̴
{̴
c̴l̴a̴s̴s̴ ̴P̴r̴o̴g̴r̴a̴m̴
{̴
p̴u̴b̴l̴i̴c̴ ̴s̴t̴a̴t̴i̴c̴ ̴v̴o̴i̴d̴ ̴M̴a̴i̴n̴(̴s̴t̴r̴i̴n̴g̴[̴]̴ ̴a̴r̴g̴s̴)̴
{̴
R̴a̴n̴d̴o̴m̴ ̴r̴a̴n̴d̴ ̴=̴ ̴n̴e̴w̴ ̴R̴a̴n̴d̴o̴m̴(̴)̴;̴
i̴n̴t̴ ̴s̴ ̴=̴ ̴0̴;̴
c̴o̴n̴s̴t̴ ̴i̴n̴t̴ ̴n̴ ̴=̴ ̴7̴;̴
i̴n̴t̴ ̴[̴]̴ ̴a̴ ̴=̴ ̴n̴e̴w̴ ̴i̴n̴t̴[̴n̴]̴;̴
f̴o̴r̴(̴i̴n̴t̴ ̴i̴ ̴=̴ ̴0̴;̴ ̴i̴ ̴<̴ ̴n̴;̴ ̴+̴+̴i̴)̴{̴
a̴[̴i̴]̴ ̴=̴ ̴r̴a̴n̴d̴.̴N̴e̴x̴t̴(̴-̴5̴0̴,̴ ̴5̴0̴)̴;̴
C̴o̴n̴s̴o̴l̴e̴.̴W̴r̴i̴t̴e̴(̴"̴{̴0̴,̴4̴}̴"̴,̴ ̴a̴[̴i̴]̴)̴;̴
s̴ ̴+̴=̴ ̴a̴[̴i̴]̴;̴
}̴
C̴o̴n̴s̴o̴l̴e̴.̴W̴r̴i̴t̴e̴L̴i̴n̴e̴(̴"̴\̴n̴С̴р̴е̴д̴н̴е̴е̴ ̴а̴р̴и̴ф̴м̴е̴т̴и̴ч̴е̴с̴к̴о̴е̴:̴ ̴"̴ ̴+̴ ̴s̴ ̴/̴ ̴n̴)̴;̴
f̴o̴r̴(̴i̴n̴t̴ ̴i̴ ̴=̴ ̴0̴;̴ ̴i̴ ̴<̴ ̴n̴;̴ ̴+̴+̴i̴)̴{̴
i̴f̴ ̴(̴a̴[̴i̴]̴ ̴<̴ ̴s̴ ̴/̴ ̴n̴)̴
a̴[̴i̴]̴ ̴=̴ ̴0̴;̴
C̴o̴n̴s̴o̴l̴e̴.̴W̴r̴i̴t̴e̴(̴"̴{̴0̴,̴4̴}̴"̴,̴ ̴a̴[̴i̴]̴)̴;̴
}̴
C̴o̴n̴s̴o̴l̴e̴.̴R̴e̴a̴d̴K̴e̴y̴(̴t̴r̴u̴e̴)̴;̴
}̴
}̴
}̴
Василий Колесник
Где это так сделать можно?
double avg = a.Avg();
a = (from x in a select x>avg?0:x).ToArray();
a = (from x in a select x>avg?0:x).ToArray();
Pavel Aleksandrovich
Мощно )
Только там Average(), а не Avg()
Только там Average(), а не Avg()
Похожие вопросы
- Дан массив размера 10. Переставить в обратном порядке элементы массива, расположенные между его минимальным и максима
- Помогите с С++. Надо найти произведение элементов одномерного массива между первым и последним 0.
- Помогите пожалуйста написать программу на c++. Упорядочить элементы одномерного массива по убыванию.
- помогите пожалуйста..паскаль..составить программу вычисления суммы неповторяющихся элементов одномерного массива
- Дан прямоугольный целочисленный массив размером N*N. Определить является ли данный массив магическим квадратом, т.е. сум
- Microsoft Visual C++ 6.0 В одномерном массиве, состоящем из n вещественных элементов, вычислить...
- обработка двумерных массивов (заменить по условию элементы на 0)
- В одномерном массиве, состоящем из n вещественных элементов, вычис- лить: 39 1) сумму положительных элементов массив
- 1.Заполнить массив случайными числами. Вывести элементы массива на экран. Заменить все его минимальные элементы нулями.
- Написать программу работы с одномерным массивом из 15 вещественных элементов для решения задач:
Ещё возник такой вопрос, реально ли сделать так, чтобы элементы массива подбирались упорядоченно, к примеру, если первый 15, то следующие 16-17-18-19-20-21 ?
В пункте 3.2 нужно написать massiv[i] = i; вместо заполнения случайными числами. Тогда номер элемента и значение элемента будут совпадать.
Другое дело, если Вы хотите отсортировать имеющийся массив