PhieuLang

btC5

Dec 16th, 2011
139
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.35 KB | None | 0 0
  1. //nhập mảng a có n phần tử. đếm số dãy tăng dần trong mảng a. xuất dãy dài nhất.
  2. #include<stdio.h>
  3. #include<conio.h>
  4. void nhap(int a[],int n);
  5. void xuat(int a[],int n);
  6. int demday(int a[],int n);
  7. int daydainhat(int a[],int n);
  8. int main(){
  9.     int a[20],n;
  10.     do
  11.     {
  12.     printf("Nhap n: ");
  13.     scanf("%d",&n);
  14.     }
  15.     while(n<0&& n>20);
  16.     nhap(a,n);
  17.     xuat(a,n);
  18.     printf("\nSo day %d\n",demday(a,n));
  19.     daydainhat(a,n);
  20.     getch();
  21. }
  22. void nhap(int a[],int n){
  23.     int i;
  24.     for(i=0;i<n;i++)
  25.     {
  26.         printf("Nhap a[%d]: ",i);
  27.         scanf("%d",&a[i]);
  28.     }
  29. }
  30.  
  31. void xuat(int a[],int n){
  32.     int i;
  33.     for(i=0;i<n;i++)
  34.         printf("%d ",a[i]);
  35. }
  36.  
  37.  
  38. int demday(int a[],int n){
  39.     int i,dem=0;
  40.     for (i=0;i<n-1;i++)
  41.         {
  42.             if(a[i+1]==a[i]+1){
  43.             dem=dem+1;
  44.             if(a[i+2]==a[i+1]+1) dem=dem-1;
  45.             }
  46.         }
  47.     return dem;
  48.     }
  49. int daydainhat(int a[],int n){
  50.     int i,dem=0,x=1,max=0,vitri=0;
  51.     for(i=0;i<n-1;i++)
  52.         {
  53.           if(a[i+1]==a[i]+1)    x++;
  54.           if(x>max){
  55.             max=x;
  56.             vitri=i+2-max;
  57.                     }
  58.             if(a[i+1]!=a[i]+1) {
  59.                 x=1;
  60.             }
  61.         }
  62.             i=0;
  63.             printf("Day dai nhat la: ");
  64.             while(i<max)
  65.             {
  66.                 printf("%d ",a[vitri+(i++)]);
  67.             }
  68.  
  69. }
Advertisement
Add Comment
Please, Sign In to add comment