Website chính thức của mình hiên nay là letientai299.wordpress.com

https://letientai299.wordpress.com
BÀI TẬP NGHIÊN CỨU LẦN 1
 
Bài 1:  Viết chương  trình nhập vào số tự nhiên n, tính và in ra kết quả phép tính:

Code:
    #include<stdio.h>
    //BT3NC-Lab04
    int main()
    {
        int n,i=1;
        float a,max,min,s,p;
        printf("Nhap so n: ");
        scanf("%d",&n);
        printf("Nhap so thu %d: ",i++);
        scanf("%f",&a);
        s=min=max=a;
        p=a*a;
        for (;i<=n;i++)
        {
            printf("Nhap so thu %d: ",i);
            scanf("%f",&a);
            s+=a;
            p+=a*a;
            if (max<a) max=a;
            if (min>a) min=a;
        }
        printf("Aver = %f\n", (2*p - 2*(max + min)*s + n*(max*max + min*min + 0.5*(max-min)*(max-min))));
    }
    
 Bài 2: Viết chương trình nhập vào số tự nhiên A (0<A<=1 000 000 000), tìm số n nhỏ nhất sao cho n^n chia hết cho A

Code:
//BT NMCNTT - Tim so n nho nhat thoa n^n chia het cho so A cho truoc
#include<stdio.h>
#include<math.h>
//Ham kiem tra so nguyen to
int kt_nguyento(int n)
{
    int i, dem=0;
    for (i=2;i<=sqrt(n);i++)
    {
        if (n%i == 0) dem++;       
    };
    if (dem==0) return 1;
    else return 0;   
};
//Ham phan tich ra thua so nguyen to
void uoc_so(unsigned int A, int *uoc, int *so_mu, int &temp1)
{
    unsigned int a, temp2, j;
    temp1=0;
    a=A;
    for (j=2;a>1;j++)
    {
        if (kt_nguyento(j))
             if ((a%j)==0)
            {
                temp1++;
                uoc[temp1]=j;
                temp2=0;
                while (a%j==0)
                {
                    a=a/j;
                    temp2++;
                };
                so_mu[temp1]=temp2;
            };
    };
};
//Ham kiem tra su trung lap uoc nguyen to
void kt_uoc(int m, int temp1, int *uoc, int *so_mu_2)
{   
    int i;
    for (i=1; i<=temp1; i++ )
    {
        while ((m%uoc[i])==0)
        {
            so_mu_2[i]=so_mu_2[i]+1;
            m =(m/(uoc[i]));
        };
    };
};
//Ham kiem tra n thoa yeu cau chua
int kt_yeucau(unsigned int n, int temp1, int *so_mu, int *so_mu_2)
{
    int i;
    for (i=1; i<=temp1; i++ )
    {
        if ((n*so_mu_2[i])<so_mu[i])
        {
            break;
        };
    };
    if (i== (temp1+1)) return 0;
    else return 1;
};
//Chuong trinh chinh
int main()
{
    unsigned int A, n;
    int m, uoc[100], so_mu[100], so_mu_2[100], temp1, k;
    char thu;
    do
    {
        printf("A = ");
        scanf("%u",&A);   
        uoc_so(A, &uoc[0], &so_mu[0], temp1);
        n=1;
        printf("%u = ",A);
        for (k=1;k<=temp1;k++)
        {
            printf("(%d^%d)",uoc[k],so_mu[k]);
            n*=uoc[k];
            so_mu_2[k]=1;
        }; //In ra phan ticb nguyen to cua so A
        m=1;
        while (kt_yeucau((n*m), temp1, &so_mu[0], &so_mu_2[0]))
        {       
            m++;
            for (k=1; k<=temp1; k++)
            {
                so_mu_2[k]=1;
            };
            kt_uoc(m, temp1, &uoc[0], &so_mu_2[0]);               
        };
        printf("\nSo nho nhat thoa yeu cau la %u\n",(n*m));
        printf("Again? (Press y to try again or any other key to stop) ");
        fflush(stdin);
        scanf("%c",&thu);
    }while((thu=='y') || (thu =='Y'));
    return 0;
};

WebRep
Xếp hạng chung
 
ċ
Baitapnghiencuu1.rar
(1k)
Tai Le Tien,
12:12, 24 thg 11, 2011
Comments