x, int& c, int& max, int& max1)
{
for (int i = 0; i < n; ++i)
{
auto a = *A;
if (a > max)
{
max = a;
x = i + 1;
}
a = *A;
if (a < max && a > max1)
{
max1 = a;
c = i + 1;
}
A++;
}
return 0;
}
int main() {
setlocale(LC_ALL, "Russian");
// Task 1
int n;
int c = 0; // Номера
int x = 0; // Номера
int max = 0;
int max1 = 0;
cout << "Введите количество участников" << endl;
cin >> n;
int *A = new int[n];
if (n > 2) {
cout << "Введите количество балов каждого участника" << endl;
for (int i = 0; i < n; ++i) {
cin >> *(A++);
}
} else {
cout << " Количество участников недостаточно, введите число больше 2." << endl;
}
auto b = sizeof(A);
auto m = sizeof(int);
A -= n;
cout << "Вывод вашего массива из " << n << " участников " << endl;
for (int i = 0; i < n; ++i) {
cout << *(A++) << " ";
}
cout << " " << endl;
A -= n;
func1(A, n, x, c, max, max1);
cout << " Максимальный бал участника под номером " << x << " Является = " << max << endl;
cout << " Максимальный бал участника под номером " << c << " Является = " << max1 << endl;
}
Почему у меня не выводится последний сиаут?
выводится
Должен выводиться...
Жонглирование голыми указателями знатное, но вроде ошибок не вижу. Так что должно выводиться.
Если что, в данном случае *(A++) эквивалентно A[i], только не нужно будет потом делать A -= n.
Обсуждают сегодня