Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "stdafx.h"
- #include <iostream>
- using namespace std;
- void readData(int A[], int &size);
- void getEvenNumbersAndLargest(int A[], int AN[], int size, int& size_even);
- void printSortedAscending(int numbers[], int size);
- void main()
- {
- int A[30]; //masiv ot vsichki chisla
- int AN[30]; //masiv ot chetni chisla
- int size = 0; //razmernost zadadena ot potrebitel
- int size_even = 0; //razmernost na masiv ot chetni chisla
- while (true) {
- cout << "* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * " << endl;
- cout << "Izberete 1 za vavezdane na razmernost i elementi na masiv." << endl;
- cout << "Izberete 2 za formirane na masiv ot chetnite chisla(AN) i naj-golqmata mu stojnost." << endl;
- cout << "Izberete 3 za izvezdane na masiva A sortiran vazhodqshto." << endl;
- cout << "Izberete 4 za izvezdane na masiva AN sortiran vazhodqshto." << endl;
- cout << "* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * " << endl;
- cout << "Vashata opciq: ";
- int option;
- cin >> option;
- switch (option)
- {
- case 1:
- //funkciq za chetene na vhod
- readData(A, size);
- break;
- case 2:
- //formirane na AN i naj-golqmata mu stojnost
- getEvenNumbersAndLargest(A, AN, size, size_even);
- break;
- case 3:
- //sortirane vazhodqshto i izvezdane na elementite na sortiraniq masiv A
- printSortedAscending(A, size);
- break;
- case 4:
- //sortirane vazhodqshto i izvezdane na elementite na sortiraniq masiv AN
- printSortedAscending(AN, size_even);
- break;
- }
- }
- }
- void readData(int A[], int &size)
- {
- cout << "Razmernost(n): ";
- cin >> size; //zadavane na razmernost
- while (size <= 1 && size >= 30) { //validaciq na razmernost)
- cout << "Nevalidna razmernost.";
- cout << "Vavedete razmernost otnovo: ";
- cin >> size;
- }
- for (int i = 0; i < size; i++) //vavezdane na elementi
- {
- cout << "A[" << i << "]" << " = ";
- cin >> A[i];
- }
- }
- void getEvenNumbersAndLargest(int A[], int AN[], int size, int& size_even)
- {
- cout << "Masiva za chetni chisla e formiran." << endl;
- int even_index = 0;
- int max_even = -9999999;
- //formirane na masiv ot chetni chisla:
- for (int i = 0; i < size; i++)
- {
- if (A[i] % 2 == 0)
- {
- AN[even_index] = A[i];
- even_index++;
- }
- }
- size_even = even_index;
- //namirane na naj-golqmata stojnost:
- for (int i = 0; i < size_even; i++)
- {
- if (AN[i] > max_even)
- {
- max_even = AN[i];
- }
- }
- //izvezdane na naj-golqmata stojnost:
- if (size_even == 0) //proverka dali e namereno chetno chislo
- {
- cout <<"Masivat ot chetni chisla(AN) nqma elementi."<< endl;
- }
- else //ako sadarza chisla, printiraj naj-golqmoto
- {
- cout <<"Naj-golqmo chetno chislo: " << max_even << endl;
- }
- }
- void printSortedAscending(int numbers[], int size)
- {
- //sort ascending:
- int temp;
- for (int i = 0; i < size; i++)
- {
- for (int j = i + 1; j < size; j++)
- {
- if (numbers[i] > numbers[j])
- {
- temp = numbers[i];
- numbers[i] = numbers[j];
- numbers[j] = temp;
- }
- }
- }
- //print:
- for (int i = 0; i < size; i++)
- {
- cout << "[" << i << "]" << " = " << numbers[i] << endl;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment