Предмет: Информатика,
автор: a245
помогите найти ошибку в программе на с++
задача и моя программа прикреплены. вроде всё правильно, но при вводе как в примере, у меня выходит "yes" вместо "no"
Приложения:
restIess:
в плюсах нельзя так массив объявлять
Ответы
Автор ответа:
1
В С++ насколько я помню, сначала нужно инициализировать переменную, а потом уже создавать динамический массив. То есть первые 2 строчки будут выглядеть:
int n, i;
cin >> n;
int* a = new int[n];
И также советую в одном цикле от 0 до n (как на скриншоте) проинициализировать массив числами, а уже после него, во втором цикле от 0 до n-1 (не включая n-1), проверять соседние числа.
using namespace std;
int main()
{
int n;
cin >> n;
int* a = new int[n];
for (int i = 0; i < n; i++) {
cin >> a[i];
}
for (int i = 0; i < n - 1; i++) {
if (a[i] * a[i + 1] >= 0) {
cout << "YES";
return 0;
}
}
cout << "NO";
}
Похожие вопросы
Предмет: Русский язык,
автор: 2760518Rustam
Предмет: Қазақ тiлi,
автор: матинвокзалкурастыру
Предмет: Немецкий язык,
автор: andrei08101983
Предмет: Информатика,
автор: sakr68
Предмет: Математика,
автор: alpysova1