c# написать простую программу с использованием цикла foreach, которая в одномерном массиве со случайными элементами находит максимальный и минимальный элементы, затем считает произведение элементов массива между макс и минимум (без них) и выводит результат. Очень нужно, от
Ответы на вопрос:
С#
Произведение находится за вычетом максимального и минимального элементов. Если они встречаются несколько раз, то вычетаются по одному разу.
Код:
using System;using System.Collections.Generic;using System.Linq;namespace ThisAnswerIsNotMine { class Program { private static int Size => 7; private static void Main() { int seedMin = new Random().Next(1, 40); int seedMax = new Random().Next(seedMin + 5, seedMin + 40); var arr = Enumerable.Repeat(0, Size) .Select(_ => new Random().Next(seedMin, seedMax)) .ToArray(); int max = arr[0], min = arr[0]; foreach (var el in arr) { max = Math.Max(el, max); min = Math.Min(el, min); } int product = 1; bool maxIsCatched = false, minIsCatched = false; foreach (var el in arr) { if (!maxIsCatched && el == max) { maxIsCatched = true; continue; } if (!minIsCatched && el == min) { minIsCatched = true; continue; } product *= el; } PrintArr(arr); Console.WriteLine($"Max: {max}; Min: {min}; Product: {product}."); } private static void PrintArr<T>(IEnumerable<T> arr) { foreach (var el in arr) { Console.Write(el); Console.Write(" "); } Console.WriteLine(); } }}using System;
using System.Collections.Generic;
using System.Linq;
namespace ThisAnswerIsNotMine {
class Program {
private static int Size => 7;
private static void Main()
{
int seedMin = new Random().Next(1, 40);
int seedMax = new Random().Next(seedMin + 5, seedMin + 40);
var arr = Enumerable.Repeat(0, Size)
.Select(_ => new Random().Next(seedMin, seedMax))
.ToArray();
int max = arr[0], min = arr[0];
foreach (var el in arr)
{
max = Math.Max(el, max);
min = Math.Min(el, min);
}
int product = 1;
bool maxIsCatched = false, minIsCatched = false;
foreach (var el in arr)
{
if (!maxIsCatched && el == max)
{
maxIsCatched = true;
continue;
}
if (!minIsCatched && el == min)
{
minIsCatched = true;
continue;
}
product *= el;
}
PrintArr(arr);
Console.WriteLine($"Max: {max}; Min: {min}; Product: {product}.");
}
private static void PrintArr<T>(IEnumerable<T> arr)
{
foreach (var el in arr)
{
Console.Write(el);
Console.Write(" ");
}
Console.WriteLine();
}
}
}
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
MarinaFilimonova23.10.2021 01:50
-
dhhdhhd5508.04.2023 09:27
-
natalyaepishenk29.03.2022 11:58
-
lolka14327.02.2020 15:46
-
Явсёзнаю027.06.2020 03:43
-
злючка2609.07.2020 12:27
-
simsnothave27.04.2023 08:19
-
timurSeytzhan04.01.2023 12:30
-
korsukova61oye48j23.01.2022 09:12
-
diassultanov127.05.2023 21:32
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.