Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- /*
- Nizom A su data rastojanja od pocetne stanice do N susednih stanica jedne autobuske linije(a[i] je rastojanje izmedju od pocetne stanice do i-te stanice 0<=i<n).Planirana rekonstrukcija autobuske linije tako sto ce ukloniti sve stanice za koje je zbir rastojanja od prethoden do sledece stanice manji od datog broja M.Napisati funkciju kojom se dati niz realnih brojeva A,broj stanica N i realni broj M,vrsi planiranu rekonstrukciju tako da N predstavlja broj stanica posle rekonstrukcije,niz a rastojanje izmedju stanica posle rekonstrukcije.
- */
- int rek(float A[],int N, float M)
- {
- int i,*p1,br=-1;
- float rez,temp,temp1;
- for(i=0;i<N-1;i++){
- if(i==0){
- temp=A[i];
- temp1=A[i+1]-A[i];
- rez=temp+temp1;
- if(rez>M){
- br++;
- A[br]=A[i];
- }
- }
- else{
- temp=A[i]-A[i-1];
- temp1=A[i+1]-A[i];
- rez=temp+temp1;
- if(rez>M){
- br++;
- A[br]=A[i];
- }
- }
- if(i==N-2){
- br++;
- A[br]=A[i];
- }
- }
- return br;
- }
- int main()
- {
- int N=9,i;
- float M=4.5,A[100]={1.2,5.5,6,6.85,8,23.5,24.05,27.4},Ap[100]={1.2,5.5,6,6.85,8,23.5,24.05,27.4};
- int frek;
- frek=rek(A,N,M);
- printf("M = %.1f",M);
- printf("\nN = %d\n",N);
- printf("\nA=(");
- for(i=0;i<N-1;i++){
- if(i==N-2){
- printf(" %.1f )",Ap[i]);
- }
- else
- printf(" %.1f,",Ap[i]);
- }
- printf("\n\n\nN = %d\n",frek+2);
- printf("\nA=(");
- for(i=0;i<frek+1;i++){
- if(i==frek){
- printf(" %.1f )",A[i]);
- }
- else
- printf(" %.1f,",A[i]);
- }
- getchar();
- getchar();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement