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

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

Вернуться   Форум программистов > Работа для программиста > Фриланс
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 24.03.2011, 20:23   #1
NastyaV
Пользователь
 
Регистрация: 29.09.2010
Сообщений: 30
По умолчанию Обьяснить код программи, что каждая строка делает

#include <stdio.h>
#include <time.h>
#include <pthread.h>
void task(double*);
double interval,pers,dpers;
pthread_mutex_t mutex_1;
int main() {
pthread_t Thread[3];
clock_t t[2];
double b[9];
b[0]=.01;
b[2]=b[5]=b[8]=0.;
b[1]=b[3]=60.;
b[4]=b[6]=200.;
b[7]=480.;
pers=0.;
interval=b[7]-b[0];
dpers=.1;
pthread_mutex_init(&mutex_1,NULL);
t[0]=clock();
pthread_create(Thread,NULL,(void*)t ask,(void*)b);
pthread_create(Thread+1,NULL,(void* )task,(void*)(b+3));
pthread_create(Thread+2,NULL,(void* )task,(void*)(b+6));
pthread_join(Thread[0],NULL);
pthread_join(Thread[1],NULL);
pthread_join(Thread[2],NULL);
t[1]=clock();
pthread_mutex_destroy(&mutex_1);
printf("Hi: %g sec Res: %g\r\n",(double)(t[1]-t[0])/(double)CLOCKS_PER_SEC,(b[2]+b[5]+b[8]));
return 0;
}

void task(double *b)
{
double i, st, s, p, ast, c;
clock_t t[2];
t[0]=clock();
st=.00001;
s=c=0.;
pthread_mutex_lock(&mutex_1);
ast=interval/st;
p=ast*dpers;
pthread_mutex_unlock(&mutex_1);
for(i=b[0];i<b[1];i+=st)
{
s+=(1./i+1./(i+st))*.5*st;
c+=1.;
if(c>(.5*p)){
if(pthread_mutex_trylock(&mutex_1)= =0){
pers+=c/ast;
pthread_mutex_unlock(&mutex_1);
c=0.;
printf(".");
}
}
}
b[2]=s;
t[1]=clock();
printf("from %g to %g ",b[0],b[1]);
printf("TID %d: %g sec Res: %g\r\n",(int)pthread_self(),(double )(t[1]-t[0])/(double)CLOCKS_PER_SEC,s);
}
NastyaV вне форума Ответить с цитированием
Старый 25.03.2011, 09:08   #2
Big.Cheese
Новичок
Джуниор
 
Регистрация: 30.12.2010
Сообщений: 2
По умолчанию

Готов, легко. За небольшое вознаграждение.
shalexei@yandex.ru
Big.Cheese вне форума Ответить с цитированием
Старый 26.03.2011, 17:04   #3
fat-lip
 
Регистрация: 15.05.2010
Сообщений: 3
По умолчанию

437675148 пиши
fat-lip вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Что делает этот код? Alex_sim Общие вопросы C/C++ 10 03.03.2010 23:45
Что делает код AllForCS PHP 1 24.02.2010 00:50
Подскажите пожалуйста что делает этот код SlashMan JavaScript, Ajax 3 10.01.2010 22:41
Объясните, что значит каждая строка в программе *natali* Помощь студентам 5 07.11.2009 15:17
Что делает этот код? lucky Общие вопросы Delphi 4 17.06.2009 17:02