bài tập c++ chương 6

Thảo luận trong 'C/C++' bắt đầu bởi nguoila, 16 Tháng mười hai 2011.

  1. Offline

    nguoila

    • Windows 1.0

    Số bài viết:
    17
    Đã được thích:
    13
    Điểm thành tích:
    10
    1. Sử dụng hàm, viết chương trình tìm giá trị lớn nhất và giá trị nhỏ nhất của 3 số bất kỳ được nhập vào từ bàn phím
    Mã:
    #include<iostream>using namespace std;
    void max(float a,float b,float c)
    {
    	if(a>b)
    		if(a>c)
    			cout<<"so lon nhat la: "<<a<<endl;
    		else
    			cout<<"so lon nhat la: "<<c<<endl;
    	else
    		if(b>c)
    			cout<<"so lon nhat la: "<<b<<endl;
    		else
    			cout<<"so lon nhat la: "<<c<<endl;
    }
    void min(float a,float b,float c)
    {
    	if(a<b)
    		if(a<c)
    			cout<<"so nho nhat la: "<<a<<endl;
    		else
    			cout<<"so nho nhat la: "<<c<<endl;
    	else
    		if(b<c)
    			cout<<"so nho nhat la: "<<b<<endl;
    		else
    			cout<<"so nho nhat la: "<<c<<endl;
    }
    void main()
    {
    	float a,b,c;
    	cout<<"moi ban nhap 3 so bat ky:"<<endl;
    	cin>>a;
    	cin>>b;
    	cin>>c;
    	max(a,b,c);
    	min(a,b,c);
    }
    2. Sử dụng hàm, viết chương trình kiểm tra một số bất kỳ nhập vào từ bàn phím có phải là số nguyên tố hay không? Sau đó hiển thị lên màn hình tất cả các số nguyên tố <= 3000.
    Mã:
    #include<iostream>using namespace std;
    #include<cmath>
    void kiemtra(int a)
    {
    	if(a<=0)
    		cout<<"so vua nhap khong phai la so nguyen to"<<endl;
    	else
    	{
    		if(a==1)
    			cout<<a<<"la so nguyen to";
    		if(a==2)
    			cout<<a<<"la so nguyen to";
    		if(a==3)
    			cout<<a<<"la so nguyen to";
    		for(int i=2;i<a;i++)
    			if(a%i==0)
    			{
    				cout<<a<<" khong phai la so nguyen to"<<endl;
    				break;
    			}
    		if(i==a)
    			cout<<a<<" la so nguyen to"<<endl;
    	}
    }
    void songuyento(int i,int j)
    {
    	cout<<1<<endl;
    	cout<<2<<endl;
    	cout<<3<<endl;
    	for(i=4;i<300;i++)
    	{
    		for(j=2;j<i;j++)
    			if(i%j==0)
    				break;
    		if(j==i)
    			cout<<i<<endl;
    	}
    }
    void main()
    {
    	float a;
    	int i,j;
    	cout<<"moi ban nhap so bat ky:"<<endl;
    	cin>>a;
    	kiemtra(a);
    	cout<<"cac so nguyen to <=300 la:"<<endl;
    	songuyento(i,j);
    }
    4. Sử dụng hàm, viết chương trình xóa dấu cách đầu tiên trong xâu. Sau đó xóa tất cả các dấu cách trong xâu.
    Mã:
    #include<iostream>using namespace std;
    #include<iostream>
    void xoaspacedautien(char s[200])
    {
    	for(int i=0;i<strlen(s);i++)
    		if(s[i]==32)
    		{
    			int j=i;
    			for(j=i;j<strlen(s)-1;j++)
    				{
    					s[j]=s[j+1];
    					cout<<s[j];
    				}
    			break;
    		}	
    		else
    			cout<<s[i];
    }
    void xoaspace(char s[200])
    {
    	for(int i=0;i<strlen(s)-1;i++)
    		if(s[i]!=32)
    			cout<<s[i];
    }
    void main()
    {
    	char s[200];
    	cout<<"moi ban nhap chuoi:"<<endl;
    	gets(s);
    	xoaspacedautien(s);
    	cout<<endl;
    	xoaspace(s);
    	cout<<endl;
    }
    5. Sử dụng hàm, viết chương trình kiểm tra một số có 4 chữ số bất kỳ có phải là số amstrong hay không? Biết rằng, số có 4 chữ số là số amstrong khi các chữ số của nó mũ 4 cộng lại bằng chính nó
    Mã:
    #include<iostream>#include<cmath>
    using namespace std;
    void amstrong(int n)
    {
    	int d=n%10;
    	int c=(n/10)%10;
    	int b=(n/100)%10;
    	int a=n/1000;
    	if(a*a*a*a+b*b*b*b+c*c*c*c+d*d*d*d==n)
    		cout<<n<<" la so amstrong"<<endl;
    	else
    		cout<<n<<" khong la so amtrong"<<endl;
    }
    void main()
    { 
    	int n;
    	cout<<"moi ban nhap so can kiem tra:"<<endl;
    	cin>>n;
    	amstrong(n);
    }
    13. Viết chương trình nhập vào một số bất kỳ rồi hiển thị ra màn hình theo thứ tự ngược lại. Chẳng hạn, số nhập vào là 1234 thì kết quả xuất ra là 4321
    Mã:
    #include<iostream>using namespace std;
    int innguoc(int n)
    {
    	if(n<10)
    		return n;
    	else
    	{
    		cout<<n%10;
    		return (innguoc(n/10));
    	}
    }
    void main()
    {
    	int n;
    	cout<<"moi ban nhap so can in:"<<endl;
    	cin>>n;
    	cout<<innguoc(n);
    }
    15. Xây dựng hàm đệ quy tính S(n) = (2n)! với n được nhập vào từ bàm phím
    Mã:
    #include<iostream>#include<cmath>
    using namespace std;
    int giaithua(int n)
    {
    	if(n=0)
    		return 1;
    	else
    	{
    		return (n*giaithua(n-1));
    	}
    }
    void main()
    {
    	int n;
    	cout<<"moi ban nhap n:"<<endl;
    	cin>>n;
    	cout<<giaithua(2*n);
    }
    
    
    
    19. Viết chương trình tìm tất cả các số tự nhiên có 4 chữ số mà trong đó mỗi số không có 2 chữ số nào giống nhau.
    Mã:
    #include<iostream>#include<cmath>
    using namespace std;
    void main()
    {
    	int n,a,b,c,d;
    	for(n=1000;n<9999;n++)
    	{
    		d=n%10;
    		c=(n/10)%10;
    		b=(n/100)%10;
    		a=n/1000;
    		if(a!=b&&a!=c&&a!=d&&b!=c&&b!=d&&c!=d)
    			cout<<n<<"\t";
    	}
    }
  2. Offline

    nguoila

    • Windows 1.0

    Số bài viết:
    17
    Đã được thích:
    13
    Điểm thành tích:
    10
    sẻ update thêm......
    Silent.Assassin thích bài này.
  3. Offline

    integer

    • Tiếu Ngạo Giang Hồ

    • :-?
    Số bài viết:
    1.695
    Đã được thích:
    1.313
    Điểm thành tích:
    900
    Bài 1 làm ngắn gọn lại:
    Mã:
        max=a;
        max>b ? (max>c ? max=a: max=c): (b>c ? max=b: max=c);
        min=a;
        min<b ? (min<c ? min=a : min=c): (b<c ? min=b : min=c);
    
  4. Offline

    thanhson_vt03b

    • Friends

    • Tàn Tro Bay Mất
    Số bài viết:
    611
    Đã được thích:
    331
    Điểm thành tích:
    220
    update càng nhanh càng tốt bạn ơi
    sắp tới 22 thi C++ rồi :((
    Silent.Assassin thích bài này.
  5. Offline

    nguoila

    • Windows 1.0

    Số bài viết:
    17
    Đã được thích:
    13
    Điểm thành tích:
    10
    ừ. tại mấy bữa nay mình ôn toán lên chưa up lên được :)
    hongoctrienSilent.Assassin thích bài này.

Chia sẻ trang này

Advertising: Linux system admin | nukeviet | nukeviet 4 | Upload ảnh miễn phí