Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Продолжение приложения А. 638. printf(Koordinatiy ytoplennoy tochki : %d and %d\n\r,ptr->ick,ptr->jck);638. printf("Koordinatiy ytoplennoy tochki: %d and %d\n\r",ptr->ick,ptr->jck); 639. fprintf(fil,"and napravlenie"); 640. printf("Napravlenie"); 641. switch(ptr->prnapr) 642. { 643. case 1: 644. fprintf(fil,"Vpravo\n"); 645. printf("Vpravo\n\r"); 646. break; 647. case 2: 648. fprintf(fil,"Vniz\n"); 649. printf("Vniz\n\r"); 650. break; 651. case 3: 652. fprintf(fil,"Vlevo\n"); 653. printf("Vlevo\n\r"); 654. break; 655. case 4: 656. fprintf(fil,"Vverh\n"); 657. printf("Vverh\n\r"); 658. break; 659. default: 660. fprintf(fil,"Start\n"); 661. printf("Start\n\r"); 662. break; 663. } 664. fprintf(fil,"WORK MATRIX\n"); 665. for(i=0;i<m;i++) 666. { 667. for(j=0;j<n;j++) 668. { 669. fprintf(fil,"%5d",*(matr2+i*n+j)); 670. } 671. fprintf(fil,"\n"); 672. } 673. fprintf(fil,"************************************\n"); 674. return; 675. } 676. // **************** UPGRADE PLAN *********************************// 677. void plmi(void) 678. { 679. int i,j,k,min,i1,j1,flagok; 680. ch = ch2; 681. flagok = 0; 682. i1=*zi; 683. j1 = *zj; 684. for(k=1;k<ch;k+=2){ 685. i=*(zi+k); 686. j = *(zj+k); 687. if(*(matr+i*n+j) == -2){ Продолжение приложения А
688. *(matr+i1*n+j1) = *(matr+i*n+j); 689. *(matr+i*n+j) = 0; 690. flagok = 1; 691. break; 692. } 693. } // for 694. if(!flagok){ 695. for(k=2;k<ch;k+=2){ 696. i = *(zi+k); 697. j = *(zj+k); 698. if(*(matr+i*n+j) == -2) 699. *(matr+i*n+j) = 0; 700. } // for 701. i = *(zi+1); 702. j = *(zj+1); 703. min = *(matr+i*n+j); 704. for(k=3;k<ch;k+=2){ 705. i=*(zi+k); 706. j=*(zj+k); 707. if(*(matr+i*n+j)<min) 708. min = *(matr+i*n+j); 709. } 710. if(min == -2) min = 0; 711. for(k=0;k<ch;k+=2){ 712. i = *(zi+k); 713. j = *(zj+k); 714. *(matr+i*n+j) += min; 715. } 716. for(k=1;k<ch;k+=2){ 717. i=*(zi+k); 718. j=*(zj+k); 719. *(matr+i*n+j)-=min; 720. } 721. } 722. //if 723. // ***************** PROVERKA **************************// 724. printf("PROVERKA\n"); 725. for(i=0;i<m;i++){ 726. for(j=0;j<n;j++){ 727. printf("%5d",*(matr+i*n+j)); 728. } 729. printf("\n"); 730. } 731. free(matr2);free(zi);free(zj);free(pu);free(pv); 732. return; 733. } 734. void Bas(void) 735. { 736. int i,j; 737. for(i=0;i<m;i++) Продолжение приложения А
738. { 739. for(j=0;j<n;j++) 740. { 741. if(*(matr+i*n+j)!=0) basper++; 742. } 743. } 744. return; 745. } 746. void sohran(void) 747. { 748. // Sravnenie 749. int i,j,k; 750. for(k=0;k<ch;k++) 751. { 752. i=zi[k]; 753. j=zj[k]; 754. if((*(matr+i*n+j) == 0) && (basper < m+n-1)) 755. { 756. *(matr+i*n+j) = -2; 757. basper++; 758. }//if 759. } 760. return; 761. } 762. // ************ SOZDANIE OPORNOGO PLANA ************************** 763. // ************ METODOM SEVERNO-ZAPADNOGO YGLA ******************* 764. void opplan1(void) 765. { 766. int i,j, ch1 = n-1; 767. //**************** Viydelenie pamyty ************************* 768. if((matr=(int*)calloc(m*n,sizeof(int))) == NULL) abort(); 769. for(i=0;i<m;i++) 770. { 771. for(j=ch1;j>=0;j--) 772. { 773. if(*(po+i)<*(pn+j)) 774. { 775. *(matr+i*n+j)=*(po+i); 776. *(pn+j)-=*(po+i); 777. *(po+i)=0; 778. break; 779. } 780. *(matr+i*n+j)=*(pn+j); 781. *(po+i)-=*(pn+j); 782. *(pn+j)=0; 783. ch1--; 784. } 785. }
|