Задача 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; }