Главная Случайная страница


Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 4. Как сделать так, чтобы вас уважали и ценили? Как сделать лучше себе и другим людям Как сделать свидание интересным?


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Продолжение приложения А. 198. // ********** Продолжение функции подсчета потенциалов *****************





 

197. }}}}

198. // ********** Продолжение функции подсчета потенциалов *****************

199. for(;;){

200. fl = 0;

201. for(top = topnast;top!=NULL;top =top -> next)

202. {

203. if((top -> zn) == -1)

204. {

205. if(*(pu+(top ->u))!=MIN)

206. {

207. *(pv+(top->v))=(top->b) - *(pu+(top ->u));

208. fl = 1;

209. top -> zn = 0;

210. }

211. if(*(pv+(top->v))!=MIN)

212. {

213. *(pu+(top->u))=(top->b) - *(pv+(top->v));

214. fl=1;

215. top->zn = 0;

216. }

217. }

218. }

219. if(!fl) break;

220. }

221. printf("\n ПОТЕНЦИАЛЫ ПО v:");

222. fprintf(fil,"\n **** ПОТЕНЦИАЛЫ ПО v:");

223. for(i = 0;i<n;i++)

224. {

225. printf("%d",*(pv+i));

226. fprintf(fil,"%5d",*(pv+i));

227. }

228. getch();

229. printf("\n ПОТЕНЦИАЛЫ ПО u: ");

230. fprintf(fil,"\n **** ПОТЕНЦИАЛЫ ПО u: ");

231. for(i=0;i<m;i++)

232. {

233. printf("%d",*(pu+i));

234. fprintf(fil,"%5d",*(pu+i));

235. }

236. fprintf(fil,"\n");

237. for(top = topnast;top!=NULL;top = top->next)

238. free(top);

239. return;

240. } // potenzial

241. // ****** PROVERKA PLANA NA OPTIMALNOST' ************************

242. void abcikl(int ik,int jk);

243. int cikl(int ik,int jk);

244. void pr(char pr[],void *st); // Предварительно

Продолжение приложения А

 

245. int prpoisk(int i1,int j1); // Объявлены

246. int levpoisk(int i1,int j1); //ЭТИ

247. int verpoisk(int i1,int j1); //Функции

248. int nizpoisk(int i1,int j1);

249. int optim(void)

250. {

251. int i,j;

252. for(i=0;i<m;i++)

253. {

254. for(j=0;j<n;j++)

255. {

256. // ИЩЕМ ОПТИМАЛЬНОЕ РЕШЕНИЕ В НАШЕЙ МАТРИЦЕ И ЕСЛИ ЕГО НЕ НАЙДЕМ

257. // ТО ПО СЛЕДУЮЩЕМУ УСЛОВИЮ ПРИСВОИМ ГРАФОКЛЕТКЕ С КООРДИНАТАМИ

258. // ik,jk ЗНАЧЕНИЕ -1

259. if((*(pu+i)+ *(pv+j))>(*(st+i*n+j))&&((*(matr+i*n+j)) == 0))

260. {

261. abcikl(i,j);

262. fprintf(fil,"optim(): План не оптимален, функции main() возвращаем -1,\n а abcikl() параметры i,j ");

263. return(-1);

264. }

265. }

266. }

267. fprintf(fil,"Plan optimalen");

268. return(0);

269. } // ******* optim() ***************

270. // ************** UPGRADE PLAN **************************

271. void abcikl(int ik,int jk)

272. {

273. int i,j;

274. fprintf(fil,"Мы в abcikl()");

275. if((matr2=(int*)calloc(n*m,sizeof(int))) == NULL) abort();

276. for(i=0;i<m;i++)

277. {

278. for(j=0;j<n;j++)

279. {

280. *(matr2+i*n+j) = *(matr+i*n+j); // Создаем копию рабочей матрицы

281. }

282. }

283. *(matr2+ik*n+jk) = -1;

284. // значению матрицы с параметрами ik,jk присваеваем -1

285. printf("\n");

286. printf("Поиск Цепи: \n\n");

287. fprintf(fil,"Поиск Цепи: \n\n");

288. for(i=0;i<m;i++)

289. {

290. for(j=0;j<n;j++)

291. {

Date: 2015-11-14; view: 365; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.007 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию