Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.01.2014, 14:46   #1
Сергей пр
 
Регистрация: 17.01.2014
Сообщений: 3
По умолчанию задача по яыку с++

int sample(ifstream &in, ofstream &txtout)//выборка
{
int cnt=0,i=0;
sample_first(in,txtout);//вызов функции выборки
return 0;
}

int sample_first(ifstream &in, ofstream &txtout)//сама функция выборки
{
AUB temp;
int cnt=0;
int from,to;
cout<<"Enter the start and the end value: "<<endl;//запрос числового интрервала
cin>>from>>to;//Ввод начального и конечного значения
//подсчет количества записей
in.clear();
in.seekg(0,ios::beg);
while(in.cur!=in.eof())
{
in.read((char*)&temp,sizeof(AUB));
cnt++;
}
in.clear();
in.seekg(0,ios::beg);
//конец подсчета записей
Display*A=new Display[cnt];//выделяем динамически память
for(int i=0;i<cnt-1;i++)//считывание в A
{
in.read((char*)&A[i],sizeof(Display));
}
cout<<setw(3)<<"Company:"<<setw(10) <<"Service:";
txtout<<setw(3)<<"Company:"<<setw(1 0)<<"Service:";
cout<<setw(15)<<"Type :"<<setw(12)<<"Period:";
txtout<<setw(10)<<"Type :"<<setw(12)<<"Period:";
cout<<setw(20)<<"Cost of service:"<<endl;
txtout<<setw(10)<<"Cost of service:"<<endl;
for(int i=0;i<cnt;i++)
{
if((A[i].costs>=from)&&(A[i].costs<=to))//если нашлось совпадение
{
//вывод найденных значений на экран и в файл результата
cout<<setw(3)<<A[i].company;
txtout<<setw(3)<<A[i].company;
cout<<setw(10)<<A[i].service;
txtout<<setw(10)<<A[i].service;
cout<<setw(14)<<A[i].type;
txtout<<setw(14)<<A[i].type;
cout<<setw(10)<<A[i].date;
txtout<<setw(10)<<A[i].date;
cout<<setw(17)<<A[i].costs<<endl;
txtout<<setw(17)<<A[i].costs<<endl;
}
}
delete[]A;//освобождаем выделенную память
system("pause");
return 0;
}

int service_type(ifstream &in, ofstream &txtout)
{
int cnt=0,i=0,e=0,r,sum=0,sum1=0,sum2=0 ;//объявляем переменные
char type[50];//массив для введенного пользователем типа услуги
Display temp;
//Подсчет количества записей для последующей работы
in.clear();
in.seekg(0,ios::beg);
while(in.cur!=in.eof())
{
in.read((char*)&temp,sizeof(AUB));
cnt++;//счетчик для подсчета записей
}
in.clear();
in.seekg(0,ios::beg);
//конец подсчета записей
r=cnt;
Display *M=new Display[cnt];//выделяем диамическую память
for(i=0;i<cnt-1;i++)
{
in.read((char*)&M[i],sizeof(Display));
}
sort(M,r,temp);//вызов функции сортировки
cout<<"Enter the type of service:"<<endl;//Запрос типа услуги
cin>>type;//ввод пользователем типа услуги
for(i=0;i<cnt-1;i++)
if(strcmp(type,M[i].type)==0){
e++;//подсчет количество услуг данного типа
sum+=M[i].date;//суммирование сроков выполнения услуг
sum1+=M[i].costs;//суммирование стоимостей услуг
sum2+=(M[i].costs/M[i].date);//суммируем отношение цены на сроки выполнения услуги
}
int a=0,tos,cos,nos;//объявление переменных
a=((e*100)/(cnt-1));//Подсчет их доли от общего числа в процентах
tos=sum/(cnt-1);//Подсчет среднего срока выполнения работы
cos=sum1/(cnt-1);//Подсчет средней цены выполнения работы
nos=sum2/(cnt-1);//Подсчет удельная цена единицы выполнения
cout<<endl; // работы = стоимость услуги / срок выполнения работ
//Вывод на экран
cout<<"The number of services type of = "<<type<<": "<<e<<endl;//Количество услуг данного типа
cout<<"Their proportion of total in percentage = "<<a<<"%"<<endl;//Их доля от общего числа в процентах
cout<<"The average execution time of the service = "<<tos<<" days"<<endl;//Среднее время выполнения обслуживания
cout<<"The average price execution of service = "<<cos<<endl;//Средняя цена выполнения услуги
cout<<"The average unit price of performance work= "<<nos<<endl;//Средняя удельная цена единицы выполнения работы
//Вывод в текстовый файл результата
txtout<<endl<<"The number of services type of ="<<type<<": "<<e<<endl;//Количество услуг данного типа
txtout<<"Their proportion of total in percentage = "<<a<<"%"<<endl;//Их доля от общего числа в процентах
txtout<<"The average execution time of the service = "<<tos<<"days"<<endl;//Среднее время выполнения обслуживания
txtout<<"The average price execution of service = "<<cos<<endl;//Средняя цена выполнения услуги
txtout<<"The average unit price of performance work= "<<nos<<endl;//Средняя удельная цена единицы выполнения работы

e=0;//обнуляем е до начального значения
delete []M;//освобождаем выделенную память
system("pause");//служебная команда, которая требует не закрывать консольное окно после выполнения программного кода.
return 0;
}
помогите пожалуйста. как и где в этой программе сохраняется отчет с фильтрацией.??
Сергей пр вне форума Ответить с цитированием
Старый 17.01.2014, 15:30   #2
Ezhik Kihze
Форумчанин
 
Регистрация: 24.12.2012
Сообщений: 639
По умолчанию

Цитата:
//вывод найденных значений на экран и в файл результата
Вы читать совсем не умеете ил просто лень?
ICQ: 677936656 Gmail: ekEmbed@gmail.com
Ezhik Kihze вне форума Ответить с цитированием
Старый 17.01.2014, 15:42   #3
Сергей пр
 
Регистрация: 17.01.2014
Сообщений: 3
По умолчанию

не я писала эту прогу,я правда не вижу тут этого ответа
Сергей пр вне форума Ответить с цитированием
Старый 17.01.2014, 15:52   #4
Сергей пр
 
Регистрация: 17.01.2014
Сообщений: 3
По умолчанию

int service_type(ifstream &in, ofstream &txtout)
{
int cnt=0,i=0,e=0,r,sum=0,sum1=0,sum2=0 ;//объявляем переменные
char type[50];//массив для введенного пользователем типа услуги
Display temp;
//Подсчет количества записей для последующей работы
in.clear();
in.seekg(0,ios::beg);
while(in.cur!=in.eof())
{
in.read((char*)&temp,sizeof(AUB));
cnt++;//счетчик для подсчета записей
}
in.clear();
in.seekg(0,ios::beg);
//конец подсчета записей
r=cnt;
Display *M=new Display[cnt];//выделяем диамическую память
for(i=0;i<cnt-1;i++)
{
in.read((char*)&M[i],sizeof(Display));
}
sort(M,r,temp);//вызов функции сортировки
cout<<"Enter the type of service:"<<endl;//Запрос типа услуги
cin>>type;//ввод пользователем типа услуги
for(i=0;i<cnt-1;i++)
if(strcmp(type,M[i].type)==0){
e++;//подсчет количество услуг данного типа
sum+=M[i].date;//суммирование сроков выполнения услуг
sum1+=M[i].costs;//суммирование стоимостей услуг
sum2+=(M[i].costs/M[i].date);//суммируем отношение цены на сроки выполнения услуги
}
int a=0,tos,cos,nos;//объявление переменных
a=((e*100)/(cnt-1));//Подсчет их доли от общего числа в процентах
tos=sum/(cnt-1);//Подсчет среднего срока выполнения работы
cos=sum1/(cnt-1);//Подсчет средней цены выполнения работы
nos=sum2/(cnt-1);//Подсчет удельная цена единицы выполнения
cout<<endl; // работы = стоимость услуги / срок выполнения работ
//Вывод на экран
cout<<"The number of services type of = "<<type<<": "<<e<<endl;//Количество услуг данного типа
cout<<"Their proportion of total in percentage = "<<a<<"%"<<endl;//Их доля от общего числа в процентах
cout<<"The average execution time of the service = "<<tos<<" days"<<endl;//Среднее время выполнения обслуживания
cout<<"The average price execution of service = "<<cos<<endl;//Средняя цена выполнения услуги
cout<<"The average unit price of performance work= "<<nos<<endl;//Средняя удельная цена единицы выполнения работы
//Вывод в текстовый файл результата
txtout<<endl<<"The number of services type of ="<<type<<": "<<e<<endl;//Количество услуг данного типа
txtout<<"Their proportion of total in percentage = "<<a<<"%"<<endl;//Их доля от общего числа в процентах
txtout<<"The average execution time of the service = "<<tos<<"days"<<endl;//Среднее время выполнения обслуживания
txtout<<"The average price execution of service = "<<cos<<endl;//Средняя цена выполнения услуги
txtout<<"The average unit price of performance work= "<<nos<<endl;//Средняя удельная цена единицы выполнения работы

e=0;//обнуляем е до начального значения
delete []M;//освобождаем выделенную память
system("pause");//служебная команда, которая требует не закрывать консольное окно после выполнения программного кода.
return 0;
}
Как сдесь формируется статистический отчет??))
Сергей пр вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
задача на зачёт. проблема Задача на нобелевскую премию! Sabotage5 Паскаль, Turbo Pascal, PascalABC.NET 2 18.03.2013 15:18
Задача по подсчёту статистики использования букв. Другая задача - по длинной арифметике Pascal ABC kimberly Паскаль, Turbo Pascal, PascalABC.NET 3 24.12.2012 17:03
Задача на оптимальный расчет маршрута (задача в презентации) в табличном процессоре Excel Toofed Помощь студентам 0 30.11.2011 01:12
Задача минимизации дисбаланса на линии сборки (задача минимакса) LenZab Microsoft Office Excel 13 13.03.2011 22:51