C/C++

С++ Найти максимальный элемент массива. Не принимает задачу.

#include <iostream>
using namespace std;
int main() {
long long N,i,max;
cin >> N;
long long mas[N];
max=0;
if ((N <= 10000) || (N>0))
for (i=0; i<N; i++)
{
cin >> mas[i];
if (mas[i]>=max)
max=mas[i];
}
cout << max;
}
 #include  
using namespace std;
using box_t = long long;
int main() {
size_t n;
cin >> n;
auto box = new box_t[n];
for (size_t i = 0; i < n; ++i) cin >> box[i];
auto max = box[0];
for (size_t i = 1; i < n; ++i) if (box[i] > max) max = box[i];
cout
ДК
Дима Калимуллин
71 214
Лучший ответ
Чтобы найти максимум, не нужно создавать массив.
 int n;
long long max;
cin >> n >> max;
for (int i = 1; i < n; ++i) {
long long cur;
cin >> cur;
if (cur > max) { max = cur; }
}
cout
Павел Опрышко гениально!
у тебя косяк в условии. Надо не с нулём сравнивать, а с предидущим элементом. То есть i это номер элемента массива, который циклом перебирается, текущее значение элемента с номером i, какая-нибудь x переменная которой будет временно присваиваться значение элемента и для сравнения и перезаписи, если N>x.
Сергей Уваров
Сергей Уваров
30 038
Кто не принимает задачу?
Сразу предупрежу, что некоторые компиляторы, например, от фирмы Майкрософт, не смогут собрать из этого кода программу, потому что в СТАТИЧЕСКИХ массивах они требуют в качестве их размера использовать КОНСТАНТУ, которая задана вначале программы до выполнения каких-либо действий.
Но если нужно указывать размер вручную, то можно использовать ДИНАМИЧЕСКИЙ массив.

Расскажи, какая у тебя конкретно проблема.
Андрей Боровских решаю задачи и отправляю на сайт, где задачу прогоняют автоматически и говорят верна она или нет. Вот на одном из тестов указал ошибку. Может я где то накосячил. Сам тестил выдает верно все
Андрей Боровских размер массива вводится с клавиатуры