Thứ Hai, 26 tháng 8, 2019

Xây dựng chương trình C nhập vào một số N và thực hiện các phép tính

Xây dựng chương trình C thực hiện công việc nhập vào một số N nào đó, sau đó thực hiện các phép tính toán như tính hàm, tính cổng cos, sin . . .


Xây dựng chương trình C như sau:
Hàm main() thực hiện công việc sau:
Hiển thị menu nhu sau:
1. Chon 1 de Tinh tong ham ((x-5)*(x-5)) tu 1 den N
2. Chon 2 de Tinh tong ham cos(x)2 tu 1 den N
3. Chon 3 de Tinh tong ham sin(x)2 tu 1 den N
4. Chon 4 de Ket thuc
Chon:
- Khi người dùng chọn 1 thì thực hiện chức năng: nhập vào số nguyên n. Tính tổng S = (1-5)*(1-5) + 2*2 + 3*3 +…+ n*n. Sử dụng đệ quy để tính. Thực hiện xong, chờ người dùng nhấn một phím bất kỳ để trở về menu chính
- Khi người dùng chọn 2 thì thực hiện chức năng: nhập vào số nguyên n. Tính tổng S = cos(1)*cos(1) + cos(2)*cos(2) + cos(3)*cos(3) +…+ cos(n)*cos(n). Sử dụng cấu trúc lặp for để tính. Thực hiện xong, chờ người dùng nhấn một phím bất kỳ để trở về menu chính
- Khi người dùng chọn 3 thì thực hiện chức năng: nhập vào số nguyên n. Tính tổng S = sin(1)*sin(1) + sin(2)*sin(2) + sin(3)*sin(3) +…+ sin(n)*sin(n). Sử dụng đệ quy để tính. Thực hiện xong, chờ người dùng nhấn một phím bất kỳ để trở về menu chính
- Chọn 4 để kết thúc chương trình.
Yêu cầu:
- Viết chương trình đủ và đúng chức năng
- Cải tiến chương trình sử dụng con trỏ hàm đại diện cho 3 hàm có cùng định dạng ở trên

Bài giải [Code]

#include<stdio.h>
#include<conio.h>
#include<windows.h>
#include<math.h>
#define PI 3.14159265
void nhap(int *n)
{
    printf("\nNhap vao so nguyen N: ");
    scanf("%d",n);
}
long sum1(int n)
{
    if(n==1)
        return (1-5)*(1-5);
    else
        return n*n+sum1(n-1);
}
double sum3(int n)
{
    double sum_3=0;
    for (int i=1;i<=n;i++)
    {
        sum_3 += sin(double(i))*sin(double(i));
    }
    return sum_3;
}
double sum2(int n)
{
    double sum_2=0;
    for (int i=1;i<=n;i++)
    {
        sum_2 += cos(double(i))*cos(double(i));
    }
    return sum_2;
}

main()
{
    int c,n;
    long tong;
    double tong_double;
    while(c!=4)
    {
        printf("\nChon 1: Tinh tong ham ((x-5)*(x-5)) tu 1 den N");
        printf("\nChon 2: Tinh tong ham cos(x)2 tu 1 den N");
        printf("\nChon 3: Tinh tong ham sin(x)2 tu 1 den N");
        printf("\nChon 4: Ket thuc");
        printf("\nMoi ban chon: ");
        scanf("%d",&c);
        switch(c)
        {
            case 1:
                nhap(&n);
                tong= sum1(n);
                printf("Tong: \n%ld",tong);
                break;
            case 2:
                nhap(&n);
                tong_double= sum2(n);
                printf("Tong: \n%lf",tong_double);
                break;
            case 3:
                nhap(&n);
                tong_double = sum3(n);
                printf("Tong: \n%lf",tong_double);
                break;
        }
    }  
}

------------------------------------
1. Bài giải trên được sưu tầm từ các bạn sinh viên khóa trước đã học tập tại học viện chia sẻ.
2. Để code chạy được bạn nên sử dụng phần mềm CodeBlock
Nếu máy tính bạn nào chưa được cài đặt thì có thể tải bản chạy luôn Tại Đây

SHARE THIS

Author:

Etiam at libero iaculis, mollis justo non, blandit augue. Vestibulum sit amet sodales est, a lacinia ex. Suspendisse vel enim sagittis, volutpat sem eget, condimentum sem.

0 nhận xét: