Форум программистов, компьютерный форум CyberForum.ru

вывод массива функцией. - C++

Восстановить пароль Регистрация
 
*krIsTiNa*
0 / 0 / 0
Регистрация: 19.01.2011
Сообщений: 46
25.03.2011, 00:54     вывод массива функцией. #1
/* 4
8.Известна ежемесячная 3/п персонала предприятия в течение
календарного года. Вывести фамилии сотрудников с минимальной
и максимальной 3/п. Считать, что штат предприятия
составляет 8 чел. Подсчет годовой 3/п работника оформить
в виде функции.
*/
#include <vcl.h>
#include <iostream.h>
#include <iomanip.h>
#include <stdio.h>
float yearzp(float z[12]); //объявление функции (прототипа) функции годовая 3/п
const int m=20; //кол-во символов в строке

struct worker //описание структуры
{char surname[m], //Фамилия
name[m]; //Имя
float zp[12]; //З/п сотрудника за каждый месяц
};

int main()
{
const n=8;
worker wrk[n];
bool p=false;
int maxi=0,mini=0;
randomize();
for (int i = 0; i<n; i++)
{//Ввод данных структуры
cout<<"Enter information about "<<i+1<<" worker"<<endl;
cout<<"Surname: ";
cin>>wrk[i].surname; //Вводим фамилию
cout<<"Name: ";
cin>>wrk[i].name; //Вводим имя сотрудника
for (int j=0; j < 12; j++) {
cout<<"Zar. plata: za "<<(j+1)<<" month\n";
wrk[i].zp[j]=random(10000-3000)+3000 ;
cout<<wrk[i].zp[j]<<" \n "; //Вводим з/п сотрудника за 12 месяцев
}
}
float max=yearzp(wrk[0].zp); //присваиваем мах и min з/п первого сотрудника
float min=max;
for (int i = 1; i < n; i++)
{
float s=yearzp(wrk[i].zp); //вычисляем годовую 3/п каждого сотрудника
if (max<s)
{max=s; maxi=i;} //находим максим-ую
if (min>s)
{min=s; mini=i;} //и минимальную годовую 3/п и запоминаем его номер в списке
}
cout<<setw(20)<<"Surname"<<setw(20)<<"Name"<<setw(30)<<"Pay for a year"<<"\n";
for (int i = 0; i < n; i++)
{ //Выводим годовую 3/п каждого сотрудника
cout<<setw(20)<<wrk[i].surname<<setw(20)<<wrk[i].name<<setw(30)<<yearzp(wrk[i].zp)<<"\n";
}
cout<<endl;
//Выводим фамилию и миним., и максим. годовую 3/п сотрудника
cout<<"Worker with maximum pay of a year:\n"<<setw(20)<<wrk[maxi].surname<<setw(20)<<wrk[maxi].name<<setw(30)<<max<<"\n";
cout<<"Worker with minimum pay of a year:\n"<<setw(20)<<wrk[mini].surname<<setw(20)<<wrk[mini].name<<setw(30)<<min;
getchar();
getchar();
return 0;
}
//Функция вычисления годовой 3/п
float yearzp(float z[12]) //определение функции
{ float s=0;
for (int i=0;i<12;i++) //пробегаемся по всем элементам
s=s+z[i]; //ссумируем их
return s;
}
как создать функцию выводящую массив состоящий из месячных зарплат сотрудников?
в методичке описан такой способ но он как то неправильно работает:

void coutf(float z[i]) //определение функции
{
for (int i=0;i<12;i++)//for (int i=0;i<12;i++ )
(cout<<setw(20)<<z[i]<<);

}
в чем ошибка?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.03.2011, 00:54     вывод массива функцией.
Посмотрите здесь:

C++ Рекурсия,заполнение массива рекурсивной функцией.
итересная прога с функцией распределения элементов массива:) C++
C++ Сортировка массива функцией
Возвращение функцией массива (или указателя на массив) C++
C++ C++.Передача и приём массива функцией.
C++ Определение кол-ва нечетных элементов массива с функцией
Возврат функцией массива структур C++
C++ Удаление элементов массива функцией

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Евгений М.
1033 / 974 / 53
Регистрация: 28.02.2010
Сообщений: 2,817
Завершенные тесты: 2
25.03.2011, 01:20     вывод массива функцией. #2
Попробуйте вот так определить функцию:
C++
1
void coutf(float z[])
Yandex
Объявления
25.03.2011, 01:20     вывод массива функцией.
Ответ Создать тему
Опции темы

Текущее время: 08:50. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru