Для этого нужно в цикле пробежаться по элементам mass[i] и элементам mass[30 - i], тоесть чтобы не запоминать суму элементов достаточно её сравнить с сумой каких либо других пар (в нашом случае начало масива мы сравниваем с концом). Далее создадим переменную, по каторой мы будем определять индекс элемента сума которого из соседним элементом являлась самой большой. Просто для проверки запускается 2 цикла в которых будет индекс инкрементироваться, Не важно в конце или в начале этот элемент. В цикле где есть этот элемент делаем проверку, найшли ли мы нужный элемент, если да, то записуем значение индекса в переменную, далее записуем проверку, на равенство индекса и переменной, что не даст нам изменить значение нужного индекса до тех пор, пока мы не найдем нужный, а индекс декрементируем, он все равно будет не изменен, по скольку в начале цыкла мы его увеличиваем на 1. Примерно все! C++ . . . int main { int mass[30]; int i,counter, j; for(i = 0,i<30;i++) {cout<<"Your mass: "<<mass[i] = rand%100<<endl; // делаем заполнение масива случайными числами от 0 до 100 } //делаем собственно проверку
for(i=0;i<30;i++) { for(j=0;j<30;j++) { if (mass[i]+mass[i+1]<mass[30-j]+mass[30-j-1]){ counter=j; j--; } else {counter = i; i--; } } cout<<"Your max element : "<<mass[counter]; } getch(); return 0;
Число АВС может принимать значение от 123 до 987 Исходя из этого пишем программу var Ast,Bst,Cst,s:string; i,A,AB,ABC,BCB:integer; f:boolean; {Признак того, что решение найдено} begin for i:=123 to 987 do begin if f=false then begin s:=IntToStr(i); Ast:=s[1]; Bst:=s[2]; Cst:=s[3]; A:=StrToInt(Ast); AB:=StrToInt(Ast+Bst); ABC:=StrToInt(Ast+Bst+Cst); BCB:=StrToInt(Bst+Cst+Bst); if A+AB+ABC=BCB then f:=true; if (s[1]=s[2]) or (s[1]=s[3]) or (s[2]=s[3]) then f:=false; {цифры не должны повторяться} end end; if f=true then writeln(A,'+',AB,'+',ABC,'=',BCB) else writeln('Решения нет') end.
Замените метод Main в классе
public static void Main(string[] args)
{
//считываем х с клавиатуры(консоли)
double x = Convert.ToInt32(Console.ReadLine());
//подсчитываем у
double y = Math.Pow(x, 2) + 0.54 * (Math.Sin(2 * x + 2) / 5 * x);
//выводим у
Console.WriteLine(y);
}