1. THÔNG BÁO TUYỂN ADMIN DIỄN ĐÀN 2013
    Tìm kiếm nhà trọ - Ở ghép
    THÔNG BÁO BÁN ÁO SPKT.NET CHO THÀNH VIÊN DIỄN ĐÀN


    HÃY TÌM KIẾM Ở ĐÂY TRƯỚC KHI ĐẶT CÂU HỎI
    {xen:phrase loading}

giải giùm em mấy bài nì C++

Thảo luận trong 'C/C++' bắt đầu bởi ngayxuayeuem107, 13 Tháng một 2010.

  1. ngayxuayeuem107 New Member

    Số bài viết: 53
    Đã được thích: 0
    Điểm thành tích: 0
    1.viết phương trình chuyển đổi một số nguyên dương n nhập từ bàn phím sang số nhị phân
    2.viết chương trình nhập vào số nguyên dương n>=2. hãy phân tích n ra thừa số nguyên tố
    3. tim uớc chung lớn nhất và bội chung nhỏ nhất của 2 số nguyên tố duơng n và m nhập từ bàn phím. (sử dụng thuật toán Euclide : USCLN(A,B)=USCLN(B,A mod B) voi A>B)
    4.viết chương trình nhập n,k nguyen duong > n in ra tổng: S=1^k + 2^k + 3^k +....+n^k
    5. viết chương trình nhập vào số nguyên dương n
    . tính và in ra tổng
    s=2^-4^2+62-8^2+.....+(-1)^n-1(2n)^2

    [IMG]
  2. nglehien Member

    Số bài viết: 52
    Đã được thích: 0
    Điểm thành tích: 6
    Bài 1: Chuyển từ thập phân sang nhị phân
    Mã:
    #include <stdio.h>
    void main()
    {
        int n,i;
        int a[16];
        printf("nhap n");scanf("%d",&n);
        for( i=0;i<16;i++){
            a[i]=n%2;
            n/=2;
        }
        for(int i=15;i>=0;i--)
            printf("%d",a[i]);
        printf("\n");
        return ;
    }
  3. nglehien Member

    Số bài viết: 52
    Đã được thích: 0
    Điểm thành tích: 6
    Bài 2 : Phân tích ra thừa số nguyên tố
    Mã:
    #include <stdio.h>
    int main()
    {
         int n, i;
        printf("Nhap n");
        scanf("%d", &n);
        printf("%d=",n);
        for(i = 2; i < n;)
            if(!(n % i)) {
                printf("%d.",i);
                n /= i;
            }
            else
                ++i;
        printf("%d", n);
        return 0;
    }
  4. nglehien Member

    Số bài viết: 52
    Đã được thích: 0
    Điểm thành tích: 6
    Bài 3: Tìm ước chung lớn nhất và bội chung nhỏ nhất
    Mã:
    #include <stdio.h>
    int main()
    {
        int a,b,temp;
        printf("nhap a");scanf("%d",&a);
        printf("nhap b");scanf("%d",&b);
        if(b>a){
            temp=a;
            a=b;
            b=temp;
        }
        while((a%b)||0){
            temp=b;
            b=a-(a/b)*b;
            a=temp;
        }
        printf("uoc chung lon nhat la %d",b);
        return 0;
    }
  5. nglehien Member

    Số bài viết: 52
    Đã được thích: 0
    Điểm thành tích: 6
    Bài 4: viết chương trình nhập n,k nguyen duong > n in ra tổng: S=1^k + 2^k + 3^k +....+n^k
    Mã:
    #include <stdio.h>
    #include <math.h>
    
    int main()
    {
        int n,i,k,s=0;
        printf("nhap so N");scanf("%d",&n);
        printf("nhap so K");scanf("%d",&k);
        for (i=1;i<=n;i++)
            s+=pow((double)i,k);
        printf("%d",s);
        return 0;
    }
  6. nglehien Member

    Số bài viết: 52
    Đã được thích: 0
    Điểm thành tích: 6
  7. small ant Well-Known Member

    Số bài viết: 2,827
    Đã được thích: 88
    Điểm thành tích: 48
    Giới tính: Nữ
    tham khảo thuật toán sau:

    int n
    longint tong;
    tong = 0
    printf("\n Nhap n");
    scanf("%d",&n)
    for(int i=1 ; i<=n;i++)

    tong = tong + (-1)^i-1(2i)^2 ;//dau ^ có thể dùng hàm pow

    Prinft("\n Tong = %d ",tong)

    C++
    cout<<"\n Nhap n"; cin>>n;
    for(int i=1 ; i<=n;i++)

    tong = tong + (-1)^i-1(2i)^2 ;//dau ^ có thể dùng hàm pow
    Cout<<"\n Tong = "<<tong<<endl;
  8. ninomaxx New Member

    Số bài viết: 51
    Đã được thích: 0
    Điểm thành tích: 0
    các thành viên chỉ có thể giúp bạn về thuật toán thôi chứ code giùm bạn thì không nên,bạn nên xem thuật toán rồi tự code sẽ hay hơn.nếu là về lập trình thì ngoài 4r spkt.net bạn có thể ghé thăm 4r của khoa CNTT diendanspkt.net để học hỏi thêm
  9. Dê con New Member

    Số bài viết: 1,272
    Đã được thích: 1
    Điểm thành tích: 0
    Lần sau nhớ viết có dấu và chính tả đầy đủ nhá bạn! Thank
  10. Dê con New Member

    Số bài viết: 1,272
    Đã được thích: 1
    Điểm thành tích: 0
    Bài số 5 đề ko rõ ràng lắm, bạn xem lại đề rồi post lên nhé
  11. Dê con New Member

    Số bài viết: 1,272
    Đã được thích: 1
    Điểm thành tích: 0

    Hiển huynh, bội chung nhỏ nhất đâu?? :|
  12. nglehien Member

    Số bài viết: 52
    Đã được thích: 0
    Điểm thành tích: 6
    Sorry sorry. già rồi nên mắt kém tay run. không đọc kĩ đề.=))
    Mã:
    #include <stdio.h>
    int USCLN(int a,int b)
    {
        int temp;
        if(b>a){
            temp=a;
            a=b;
            b=temp;
        }
        while((a%b)||0){
            temp=b;
            b=a-(a/b)*b;
            a=temp;
        }
            return b;
    }
    int _tmain(int argc, _TCHAR* argv[])
    {
        int a,b;
        printf("nhap a");scanf("%d",&a);
        printf("nhap b");scanf("%d",&b);    
        printf("uoc chung lon nhat la %d\n",USCLN(a,b));
        printf("Boi chung nho nhat la %d\n",a*b/USCLN(a,b));
        return 0;
    }
    Thuật toán trích từ wikipedia
    I. Ước chung lớn nhất
    Tính ước số chung lớn nhất của 91 và 287.
    Trước hết lấy 287 (số lớn hơn trong 2 số) chia cho 91:
    287 = 91*3 + 14 (91 & 14 sẽ được dùng cho vòng lặp kế) Nhận xét: bất kỳ số nào chia hết bởi 287 và 91 cũng sẽ chia hết bởi 287 - 91*3 = 14. Tương tự, số chia hết bởi 91 và 14 cũng chia hết bởi 91*3 + 14 = 287. Do đó, ƯSCLN(91,287) = ƯSCLN(91,14). Bài toán trở thành tìm ƯSCLN(91,14). Lặp lại quy trình trên cho đến khi phép chia không còn số dư như sau:
    91 = 14*6 + 7 (14 & 7 sẽ được dùng cho vòng lặp kế)14 = 7*2 (không còn số dư, kết thúc, nhận 7 làm kết quả) Cuối cùng ta có: 7 = ƯSCLN(14,7) = ƯSCLN(91,14) = ƯSCLN(287,91).
    II. Bội chung nhỏ nhất
    Tính qua ước số chung lớn nhất
    "bội chung nhỏ nhất, viết tắt là BCNN, tiếng Anh: least common multiple hoặc lowest common multiple (lcm) "
    Công thức dưới đây chuyển từ việc tính bội số chung nhỏ nhất sang tính ước số chung lớn nhất (GCD):
    [IMG]
    Ví dụ:
    [IMG]
  13. Dê con New Member

    Số bài viết: 1,272
    Đã được thích: 1
    Điểm thành tích: 0
    Mã:
    #include "stdafx.h"
    #include "conio.h"
    #include "math.h"
    
    
    int _tmain(int argc, _TCHAR* argv[])
    {    double s,x,temp,epsilon = 1.0e-8;
        int n;
        printf ("**********chuong trinh tinh  s= 1+x^1/1!+x^2/2!+x^3/3!+...+x^n/n!  voi epsilon < 10^-8 thi dung lai*********** \n");
        printf ("Moi nhap x \n");
        scanf ("%lf",&x);
        temp = x; s=1; n=1;
        while (temp >= epsilon) {
            s = s + temp;
            n++;
            temp= (temp*x)/(n);
        }
        printf("%lf",s);
        return 0;
    }
    mình cho sai số epsilon rất nhỏ mặc định là 10^-8
  14. ngayxuayeuem107 New Member

    Số bài viết: 53
    Đã được thích: 0
    Điểm thành tích: 0
  15. ngayxuayeuem107 New Member

    Số bài viết: 53
    Đã được thích: 0
    Điểm thành tích: 0
    ****fibonacci{Fn} đươc định nghỉa là F1=F2=1
    Fn=Fn-1+Fn-2(với n>=3)
    viết chương trình :
    1.nhập số nguyên n tính và in ra phần tử Fn
    2.nhập số nguyên m và in ra dãy Fibonacci m phần tử
    *****viết chương trình nhập số nguyên tối đa có 4 chử số .In ra số đảo ngược của nó
    VD nhập 357 in ra 753
    ******** viết chương trình " tháp hà hội". giúp mình nhé
  16. nglehien Member

    Số bài viết: 52
    Đã được thích: 0
    Điểm thành tích: 6
    Bài 1.
    1.nhập số nguyên n tính và in ra phần tử Fn
    Mã:
    #include "stdafx.h"
    
    int _tmain(int argc, _TCHAR* argv[])
    {
        int n;
        int a=1,b=1,c;
            printf("Nhap N = ");
            scanf("%d",&n);
        printf("\nF%d=",n);
        if(n==1) 
            printf("1");
        else if(n==2) 
            printf("2");
        else{
            for(int i=1;i<=n;i++){
                c=a+b;
                a=b;b=c;
            }
            printf("%d",c);
        }
        printf("\n");
        return 0;
    }
    2.nhập số nguyên m và in ra dãy Fibonacci m phần tử
    Mã:
    #include "stdafx.h"
    
    int _tmain(int argc, _TCHAR* argv[])
    {
        int n;
        int a=1,b=1,c;
            printf("Nhap N = ");
            scanf("%d",&n);
        printf("\nDay Fibonaxi :\n");
        if(n==1) 
            printf("1");
        else if(n==2) 
            printf("1 1");
        else{
            printf("1 1 ");
            for(int i=1;i<=n;i++){
                c=a+b;
                printf("%d",c);
                a=b;b=c;
            }
        }
        return 0;
    }
    
    
    Bài 3 In ra dãy số đảo ngược.
    Mã:
    #include "stdafx.h"
    #define N 4
    
    int _tmain(int argc, _TCHAR* argv[])
    {
        int a[N];
        int n,i,k;
        do{
        printf("nhap so nguyen duong N < 10000");scanf_s("%d",&n);
        }while(n>=10000);
        if (n<10)
            k=1;
        else if((n<100)&&(n>=10))
            k=2;
        else
            k=3;
        for(i=0;i<=k;i++){
                a[i]=n%10;
                n=n/10-(n%10)/10;
                printf("%d",a[i]);
        }
            printf("\n");
        return 0;
    }
    
  17. ngayxuayeuem107 New Member

    Số bài viết: 53
    Đã được thích: 0
    Điểm thành tích: 0
  18. nglehien Member

    Số bài viết: 52
    Đã được thích: 0
    Điểm thành tích: 6
    Biểu diễn số nhị phân âm
    Mã:
    #include "stdafx.h"
    
    int _tmain(int argc, _TCHAR* argv[])
    {
        int n,i;
        int a[8];
        printf("nhap nguyen am n");scanf_s("%d",&n);
        for( i=0;i<8;i++){
            a[i]=n%2;
            n/=2;
        }
        for( i=0;i<8;i++)
            if(a[i]==0)
                a[i]=1;
            else
                a[i]=0;
        
        for(int i=7;i>=0;i--)
            printf("%d",a[i]);
        printf("\n");
        return 0;
    }

Chia sẻ trang này