C++

Простые действия над массивом (укр. интерфейс)

#include "stdafx.h"
#include <iostream>
#include <math.h>

using namespace std;

void Input(float masuv[], int n)
{
	for (int i = 0; i < n; i++)
	{
		cout << "[" << i + 1 << "]: ";
		cin >> masuv[i]; 
	};
	return;
};

void MaxAbs(float masuv[], int n)
{
	float max;
	max = fabs(masuv[0]);
	cout << "Елементи масиву по модулю: ";
	for (int i = 0; i < n; i++)
	{
		cout << fabs(masuv[i]) << " ";
		if (fabs(masuv[i]) >= max)
			max = fabs(masuv[i]);
	};
	cout << "\nМаксимальний елемент: " << max << endl;
	return;
};

void MultFirSec(float masuv[], int n)
{
	int num_pos_01 = n;
	for (int i = 0; i < n; i++) 
		if (masuv[i] > 0)
		{
			num_pos_01 = i;
			break;
		};

	int num_pos_02;
	for (int i = num_pos_01 + 1; i < n; i++)
		if (masuv[i] > 0)
		{
			num_pos_02 = i;
			break;
		};

	float sum;
	float multipl = 1;
	for (int i = num_pos_01 + 1; i < num_pos_02; i++) 
		multipl *= masuv[i];

	cout << "Добуток елементiв мiж першим, та другим додатнiм елементами: " << multipl << endl;
	return;
};

float EquZerLast(float masuv[], int n)
{
	const int m = 5;
	int j = 0;
	int i = 0;
	float masuv2[m];
	for (i = 0 ; i < n ; i++)
	    if (masuv[i] != 0)
		    masuv2[j++] = masuv[i];
	
	for ( ; j < n ; j++)
	    masuv2[j] = 0;
	
	cout << "Перенесення нулiв в кiнець масиву: " << endl;
	for (int i = 0 ; i < n ; i++)
	    cout << "[" << i + 1 << "]: " << masuv2[i] << endl;
	return masuv2[i];
};

void OutPut(float masuv[], int n)
{
	cout << "Отриманий масив: ";
	for (int i = 0; i < n; i++)
		cout << masuv[i] << " "; 
	return;
};

int main()
{
	const int n = 5;
	float masuv[n];
	setlocale(0, "");
	
	cout << "Введiть масив:" << endl;
	Input(masuv, n);
	OutPut(masuv, n);
	cout << endl;
	MaxAbs(masuv, n);
	MultFirSec(masuv, n);
	EquZerLast(masuv, n);

	cout << endl;
	system("pause");
	return 0;
}
Теги:
массивы, функции, с++
Добавлено: 16 Декабря 2013 02:49:46 Добавил: Андрей Ковальчук Нравится 0
Добавить
Комментарии:
Нету комментариев для вывода...