 
                                                 
                                                Я так понимаю, что "номер максимального элемента" это на самом деле индекс.(иначе было бы написано "значение максимального элемента") Не забываем, что индексация массива ничинается с нуля.
#include <iostream>
using std::cout;
using std::endl;
#include <cstdlib>
using std::rand;
using std::srand;
#include <ctime>
using std::time;
int main()
{
    int a[15];
    int largestIndex = 0, counter = 0;
    srand(time(0));
    for(int i = 0; i < 15; i++)
    {
        a[i] = rand() % 21 - 10;
        if(a[i] < 0)
        {
            counter++;
        }
        if(a[largestIndex] < a[i])
        {
            largestIndex = i;
        }
        cout << a[i] << ' ';
    }
    cout << "\nThe index of the largest number = " << largestIndex
        << "\nThe number of negative elements = " << counter << endl;
   return 0;
}
P.S. В другом ответе решение неверное.
 
                                                 
                                                Program pr;
uses crt;
Var a, b, c,x1,x2,x3:integer;
Begin
Writeln('Введите a, b, c');
readln(a, b, c);
if (a<=b) and (b<=c) then
        Begin
              a:=a*a*a;
              b:=b*b*b;
              c:=c*c*c;
              Writeln(a);
              Writeln(b);
              Writeln(c);
        end;
if (a>b) and (b>c) then
Begin
a:=a*(-1);
b:=b*(-1);
c:=c*(-1);
Writeln(a);
Writeln(b);
Writeln(c);
end
else
if (a<b) and (a<c) then Begin b:=a; c:=a; Writeln(a); Writeln(b); Writeln(c); end;
if (b<a) and (b<c) then Begin a:=b; c:=b; Writeln(a); Writeln(b); Writeln(c); end;
if (c<a) and (c<b) then Begin a:=c; b:=c; Writeln(a); Writeln(b); Writeln(c); end;
readln;
end.
 
                                                 
                                                 
                                                 
                                                 
                                                