Pointers

Algorithms Pointers

    algorisme espaiperguio
    const
        enter N<-40
    fconst

    var
        caràcter v[N]<-"frase que acaba en.";
    fvar

    vectoritza(v);

    canviaespais(v);

    falgorisme

    acció vectoritza(caràcter *pv){
        per(i<-0;*(pv+i)!='.';i++){
            v[i]<-*(pv+i);
        }
    }

    acció canviaespais(caràcter *pv){
        per(i<-0;i<N;i++){
            si(*(pv+i)=' ') *(pv+i)='_';
            escriure(*(pv+i));
        }
    }
    funció invertir(caràcter *pv){
        enter i;
        caràcter tmp;

        per(i<-0;(i<N/2);i++{
        tmp<-*(pv+i);
        *(pv+i)<-(*pv+i)-N-1);
        *(pv+i)-N-1<-tmp;
        }

    }
    accío ordena (enter *pv)
    per(i<-0;i<N;i++)
        per(j<-i+1;j<N;j++)
            si (*(pv+i) > *(pv+j))
                tmp<-*(pv+i)
                *(pv+i)<-*(pv+j)
                *(pv+j)<-tmp;
            fsi
        fper
    fper

    facció

last updated on April 11, 2015, 7:42 p.m.
Back