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();
}
}
}
Популярно: Информатика
-
8928070422804.12.2020 20:55
-
Юліяcoolgirl22.09.2021 12:56
-
katerina200219v21.06.2023 09:23
-
coast31g200530.10.2021 00:50
-
romka101424.12.2020 13:52
-
сусанна2722.05.2021 08:01
-
Vedma133824.08.2021 02:46
-
Ученик000520502.03.2020 05:27
-
yekaterinak97727.11.2020 02:00
-
nika34424533514.04.2021 05:31