Решение с использованием указателей:
#include <iostream>
#include <ctime>
#define N 15
int main()
{
int A[N];
int i, tmp, cnt;
int *min = A,*max = A, *j;
setlocale(LC_ALL, "Russian");
// Автозаполнение
srand(time(0));
for (i = 0; i < N; i++)
A[i] = rand() % 201 - 100;
std::cout << "Исходный массив:" << std::endl;
std::cout << *(A + i) << " ";
// Находим минимальный и максимальный элементы массива, запоминаем их адреса
if (*(A + i) > *max) max = A + i;
if (*(A + i) < *min) min = A + i;
}
// Мин. и макс. элементы могут находиться в разных местах относительно друг друга
if (min < max)
cnt = ((max) - (min)) / 2;
for (j = min + 1, i = 0; i < cnt; j++, i++)
tmp = *j;
*j = *(min + 1 + (max - 1 - j));
*(min + 1 + (max - 1 - j)) = tmp;
else
cnt = ((min) - (max)) / 2;
for (j = max + 1, i = 0; i < cnt; j++, i++)
*j = *(max + 1 + (min - 1 - j));
*(max + 1 + (min - 1 - j)) = tmp;
std::cout << "\nРезультат:" << std::endl;
return 0;
1)
using namespace std;
int n,cht;
cht = 0;
float a;
cin >> n;
float mas[10000];
for (int i = 0; i < n; i++) {
cin >> a;
if (a > 0) { cht++; }
cout << cht;
2)
int n, cht;
cht = 1;
int a;
int mas[10000];
if (a % 2 == 1) { cht=cht * a; }
Объяснение: Будет не понятно, задавай вопросы, удачи.
Решение с использованием указателей:
#include <iostream>
#include <ctime>
#define N 15
int main()
{
int A[N];
int i, tmp, cnt;
int *min = A,*max = A, *j;
setlocale(LC_ALL, "Russian");
// Автозаполнение
srand(time(0));
for (i = 0; i < N; i++)
A[i] = rand() % 201 - 100;
std::cout << "Исходный массив:" << std::endl;
for (i = 0; i < N; i++)
std::cout << *(A + i) << " ";
// Находим минимальный и максимальный элементы массива, запоминаем их адреса
for (i = 0; i < N; i++)
{
if (*(A + i) > *max) max = A + i;
if (*(A + i) < *min) min = A + i;
}
// Мин. и макс. элементы могут находиться в разных местах относительно друг друга
if (min < max)
{
cnt = ((max) - (min)) / 2;
for (j = min + 1, i = 0; i < cnt; j++, i++)
{
tmp = *j;
*j = *(min + 1 + (max - 1 - j));
*(min + 1 + (max - 1 - j)) = tmp;
}
}
else
{
cnt = ((min) - (max)) / 2;
for (j = max + 1, i = 0; i < cnt; j++, i++)
{
tmp = *j;
*j = *(max + 1 + (min - 1 - j));
*(max + 1 + (min - 1 - j)) = tmp;
}
}
std::cout << "\nРезультат:" << std::endl;
for (i = 0; i < N; i++)
std::cout << *(A + i) << " ";
return 0;
}
1)
#include <iostream>
using namespace std;
int main()
{
int n,cht;
cht = 0;
float a;
cin >> n;
float mas[10000];
for (int i = 0; i < n; i++) {
cin >> a;
if (a > 0) { cht++; }
}
cout << cht;
}
2)
#include <iostream>
using namespace std;
int main()
{
int n, cht;
cht = 1;
int a;
cin >> n;
int mas[10000];
for (int i = 0; i < n; i++) {
cin >> a;
if (a % 2 == 1) { cht=cht * a; }
}
cout << cht;
}
Объяснение: Будет не понятно, задавай вопросы, удачи.