Bài Tập 1: Sắp xếp dãy số giảm dần, Tìm phần tử dương nhỏ nhất trong dãy số, Tìm các phần tử có giá trị bằng x và Tìm các số nguyên tố trong dãy số

watch_later Thứ Sáu, 10 tháng 3, 2017

Bằng ngôn ngữ C/C++, Anh/ chị hãy viết chương trình cho phép thực hiện các yêu cầu sau:
1. Lưu dãy số;
2. Xuất dãy số đã nhập ra màn hình;
3. Sắp xếp dãy số giảm dần;
4. Tìm phần tử dương nhỏ nhất trong dãy số;
5. Tìm các phần tử có giá trị bằng x (x được nhập từ bàn phím);
6. Tìm các số nguyên tố trong dãy số.


#include <iostream.h>
#include <conio.h>
void Sapxep(int a[],int n)
{ int min,i,j;
  for(i=0;i<n-1;i++)
  {
    min=i;
    for(j=i+1;j<n;j++)
      if(a[j]>a[min]) min=j;
    int t=a[i]; a[i]=a[min]; a[min]=t;
  }
}
int tsdnn(int a[], int n)
 { int i,k,min;
   for(i=0;i<n;i++)
     if(a[i]>0)
      { min=a[i]; break;}
   for(k=i+1;k<n;k++)
     if((a[k]>0)&&(a[k]<min)) min=a[k];
   if(a[k]=min) return 1;
   else return 0;
 }
int timx(int a[], int n, int x)
 { int i=0;
     while((i<n)&&(a[i]!=x)) i++;
     if(i==n) return 0;
     else return 1;
 }
int insnt(int t)
 { int j,d=0;
   for(j=1;j<=t;j++)
     if(t%j==0) d++;
   if(d==2)   return 1;
   else       return 0;
 }
int main()
{ clrscr();
  int a[10],i,n=10,x,min;
  cout<<"Nhap phan tu: "<<endl;
  for(i=0;i<n;i++)
   { cin>>a[i]; }
  cout<<"Day so vua nhap la:"<<endl;
   for(i=0;i<n;i++) cout<<"  "<<a[i];
  cout<<"\nDay so giam dan sau khi sap xep la:"<<endl;
  Sapxep(a,n);
   for(i=0;i<n;i++)
     cout<<"  "<<a[i];
  if(tsdnn(a,n)==1)
     cout<<"\nSo nguyen duong nho nhat trong day la: "<<a[i];
  cout<<"\nNhap phan tu can tim: "; cin>>x;
  if(timx(a,n,x)==1) cout<<"Tim thay "<<x;
  else cout<<"Khong tim thay!";
  cout<<"\nCac so nguyen to co trong day la:"<<endl;
  for(i=0;i<n;i++)
   {if(insnt(a[i])==1) cout<<" "<<a[i];}
 getch();
 return 0;
}




Tác giả: Nguyễn Hồng Lam