Задача 12.
#include <iostream>
using namespace std;
int main()
{
int A[10] = {0}, sizeA;
int *pA = A;
// Въвежда се размерността на масива
std::cout << "Input size A: ";
std::cin >> sizeA;
// Въвеждат се елементите на масива
std::cout << "Input array:" << std::endl;
int i=0;
while(i<sizeA) {
std::cout << "A[" << i << "]= ";
std::cin >> *pA++;
i++;
}
std::cout << std::endl;
// Насочва указателя към началото на масива (нулевия елемент)
pA = A;
int min, max;
min = max = *pA;
i=0;
while(i++<sizeA) {
if( min > *pA ) min = *pA;
if( max < *pA ) max = *pA;
pA++;
}
// Извежда намерените стойности
std::cout << "Max: " << max << std::endl;
std::cout << "Min: " << min << std::endl;
std::cout << "Max-Min: " << (max-min) << std::endl;
return 0;
}Задача 13.
#include <iostream>
using namespace std;
int main()
{
int B[20] = {0}, sizeB;
int *pB = B;
// Въвежда се размерността на масива
std::cout << "Input size B: ";
std::cin >> sizeB;
// Въвеждат се елементите на масива
std::cout << "Input array:" << std::endl;
int i=0;
while(i<sizeB) {
std::cout << "B[" << i << "]= ";
std::cin >> *pB++;
i++;
}
std::cout << std::endl;
// Насочва указателя към началото на масива (нулевия елемент)
pB = B;
double positiveNumbersSum = 0.0;
int negativeNumbersCnt = 0;
i=0;
while(i++<sizeB) {
if( *pB >= 0) positiveNumbersSum += *pB;
else negativeNumbersCnt++;
pB++;
}
// Извежда намерените стойности
std::cout << "Sum of positive numbers: " << positiveNumbersSum << std::endl;
std::cout << "Count of negative numbers: " << negativeNumbersCnt << std::endl;
return 0;
}Задача 14.
#include <iostream>
using namespace std;
int main()
{
int C[30] = {0}, sizeC;
int *pC = C;
// Въвежда се размерността на масива
std::cout << "Input size C: ";
std::cin >> sizeC;
// Въвеждат се елементите на масива
std::cout << "Input array:" << std::endl;
int i=0;
while(i<sizeC) {
std::cout << "C[" << i << "]= ";
std::cin >> *pC++;
i++;
}
std::cout << std::endl;
// Насочва указателя към началото на масива (нулевия елемент)
pC = C;
/* След края на следващия цикъл брояча i с равен на индекса
на елемента след 1-вия отрицателен, а указателя pC е насочен
към отрицателния елемент */
i=0;
while( i++<sizeC && *pC >= 0) pC++;
std::cout << "First negative number: " << *pC++ << std::endl;
double sum = 0.0;
while( i++<sizeC ) sum += *pC++;
std::cout << "Sum: " << sum << std::endl;
return 0;
}Задача 15.
#include <iostream>
using namespace std;
int main()
{
int D[40] = {0}, sizeD;
int *pD = D;
// Въвежда се размерността на масива
std::cout << "Input size D: ";
std::cin >> sizeD;
// Въвеждат се елементите на масива
std::cout << "Input array:" << std::endl;
int i=0;
while(i<sizeD) {
std::cout << "D[" << i << "]= ";
std::cin >> *pD++;
i++;
}
std::cout << std::endl;
// Насочва указателя към началото на масива (нулевия елемент)
pD = D;
double evenNumbersSum=0.0;
int evenNumbersCnt = 0;
i=0;
while( i++ < sizeD ) {
if( *pD%2 == 0 ) {
evenNumbersSum += *pD ;
evenNumbersCnt++;
}
pD++;
}
if(evenNumbersCnt) {
std::cout << "Average of even numbers: " << (evenNumbersSum/evenNumbersCnt) << std::endl;
}
else {
std::cout << "Not found even numbers!" << std::endl;
}
return 0;
}Задача 16.
#include <iostream>
using namespace std;
int main()
{
int E[40] = {0}, sizeE;
int *pE = E;
// Въвежда се размерността на масива
std::cout << "Input size E: ";
std::cin >> sizeE;
std::cout << std::endl;
// Въвеждат се елементите на масива
std::cout << "Input array:" << std::endl;
int i=0;
while(i<sizeE) {
std::cout << "E[" << i << "]= ";
std::cin >> *pE++;
i++;
}
std::cout << std::endl;
// Насочва указателя към началото на масива (нулевия елемент)
pE = E;
double multiplay = 1;
bool foundMultiplay = false;
i=0;
while( i++ < sizeE ) {
if( *pE%3 == 0 ) {
multiplay *= *pE;
foundMultiplay = true;
}
pE++;
}
if(foundMultiplay) {
std::cout << "Multiplay: " << multiplay << std::endl;
}
else {
std::cout << "Not found multiples of 3!" << std::endl;
}
return 0;
}