using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
namespace CSLear
{
partial class Program
{
private static Random r = new Random();
static void Main(string[] args)
{
int[] Arr = GenIntArray(r.Next(40), -99, 99);
Arr.PrintLn();
IntArrDiff(Arr).PrintLn();
((Arr.Last()) / 2).PrintLn();
Console.ReadKey();
}
private static int[] GenIntArray(int size, in int minValue, in int maxValue)
{
int[] temp = new int[size];
for (int i = 0; i < size; i++)
{
temp[i] = r.Next(minValue, maxValue);
}
return temp;
}
private static int IntArrDiff(int[] arr)
{
int temp = arr[0];
for (int i = 1; i < arr.Length; i++)
{
temp -= arr[i];
}
return temp;
}
}
public static class Extensions
{
public static void PrintLn<T>(this T Value)
{
Console.WriteLine(Value);
}
public static void PrintLn<T>(this T[] ArrValue)
{
StringBuilder sb = new StringBuilder();
foreach (T Item in ArrValue)
{
sb.Append($"{Item} ");
}
sb.Append("\n");
Console.WriteLine(sb.ToString());
}
}
}
По поводу расширений .PrintLn() - Давно и отдельно писал их на случай, когда нужно много всего печатать в консоль. Сюда просто подошли случайно, по этому я добавил часть исходного кода класса Extensions, содержащую определение этих методов. Если есть какие то вопросы - задавайте.
В программе есть 3 переменные n=20, a=0 и t (участвует в цикле от 1 до 20).
Запускается цикл (for ..) и в нем будет выполнятся это действие:
if (F(n) >= G(t)) then
a:=a+1;
В функцию F передается постоянно только одна переменная (n = 20)
Можно сразу посчитать чему будет равно значение в этой функции:
F:= 2*(x-7)*(x-7)+7*x+7 = F:= 2*(20-7)*(20-7)+7*20+7 = 485
F(n) = 485 постоянно
Дальше запускаем цикл for (t = от 1 до 20) и каждое значение t передается в функцию G и там производятся вычисления.
Итак
Цикл 1t = 1
G(t) = G(1) = 3*x*x - 107 = 3*1*1 - 107 = -104
Проверка (if):
(F(n) = 485) >= (G(t) = -104)
так как 485 > -104, то к a прибавляется единица, так как a = 0, то a = 1 (a = a + 1 = 0 + 1 = 1)
a = 1
Цикл 2t = 2
G(t) = G(1) = 3*x*x - 107 = 3*2*2 - 107 = -95
Проверка (if):
(F(n) = 485) >= (G(t) = --95)
так как 485 > -95, то к a прибавляется единица, так как a = 0, то a = 1 (a = a + 1 = 0 + 1 = 1)
a = 2
И так проделывать пока t не станет равной 20 (в каждом следующем цикле к t прибавлять 1 и в функции G высчитывать по формуле и сравнивать с функцией F)
В итоге a = 14
ответ: a = 14
$array = array("значение1","значение2");
Обращаться можно так
$array[0] - выдаст значение 1\