Информатика, вопрос задал Аноним , 2 года назад

Помогите пожалуйста написать программу в C++

Приложения:

Ответы на вопрос

Ответил nazikmuz
1

Відповідь:

Опять же,не знаю зачем тут класс,проще все сделать функциями,но пусть

C++ code:

#include <iostream>

#include <cstdlib>

#include <ctime>

class ARR{

public:

void randarr(int*,int);

void printarr(int*,int);

int* exp(int*,int);

};

void ARR::randarr(int* inp_arr,int size){

for(int i = 0; i < size; i++){

 inp_arr[i] = rand() % 30 - 10;

}

}

void ARR::printarr(int* inp_arr,int size){

for(int i = 0; i < size; i++){

 std::cout << inp_arr[i] << "\t";

}

std::cout << std::endl;

}

int* ARR::exp(int* inp_arr,int size){

const int out_size = 3;

int sum_pos = 0,sum_neg = 0,count_null = 0;

for(int i = 0; i < size; i++){

 if(inp_arr[i] > 0){

  sum_pos += inp_arr[i];

 }

 else if(inp_arr[i] < 0){

  sum_neg += inp_arr[i];

 }

 else{

  count_null += 1;

 }

}

int out_arr[out_size];

out_arr[0] = sum_pos;

out_arr[1] = sum_neg;

out_arr[2] = count_null;

return out_arr;

}

int main(){

srand(time(NULL));

int size;

std::cout << "Enter size: ";

std::cin >> size;

ARR test;    

int arr[size];

test.randarr(arr,size);

test.printarr(arr,size);

int *out = test.exp(arr,size);

std::cout << "Result: ";

test.printarr(out,3);

return 0;

}

Новые вопросы