“MỌI SỰ CỐ GẮNG CHƯA CHẮC ĐÃ GẶT HÁI ĐƯỢC KẾT QUẢ NHƯNG MỖI KẾT QUẢ ĐẠT ĐƯỢC CHẮC CHẮN LÀ CẢ MỘT QUÁ TRÌNH CỐ GẮNG”

Bài test 01

Thứ bảy - 23/04/2022 14:00

Bài test 01

Bài test 01

Đề bài.
TỔNG QUAN BÀI TEST

CâuTệp chương trìnhDữ liệu vàoDữ liệu raĐiểm
1Cau1.*Cau1.INPCau1.OUT4,0
2Cau2.*Cau2.INPCau2.OUT4,0
3Cau3.*Cau3.INPCau3.OUT4,0
4Cau4.*Cau4.INPCau4.OUT4,0

 Học sinh có thể sử dụng ngôn ngữ lập trình Pascal hoặc C++ hoặc Python để giải. Khi đó dấu * trong Tệp chương trình sẽ là pas hoặc cpp hoặc py.
Câu 1 (4 điểm): Viết chương trình nhập vào số nguyên dương n, (1 <= n <= 106)
a) Kiêm tra xem số n là số chẵn hay số lẻ. Nếu là số chẵn thì ghi ra 1, nếu là số lẻ thì ghi ra 0.
b) Kiểm tra xem chữ số đầu tiên của số n là số chẵn hay số lẻ. Nếu là số chẵn thì ghi ra 1, nếu là số lẻ thì ghi ra 0.

Cau1.INPCau1.OUT
5670 0
6781 1
6890 1

Câu 2 (4 điểm):Viết chương trình nhập vào số nguyên dương n, (0<= n <= 106). Đảo ngược các chữ của số nguyên dương n (Số đảo ngược bỏ các chữ 0 đầu tiên)

CAU02.INPCAU02.OUT
66
2552
89098

Câu 3 (4 điểm): Viết chương trình nhập vào số nguyên dương n, (0<= n <= 106). Tính tổng các chữ của số nguyên dương n.

CAU03.INPCAU03.OUT
66
257
89017

Câu 4 (4 điểm): Số nguyên tố.
Nhập vào một số nguyên dương n và dãy số gồm n số nguyên. Thực hiện: a) Tìm tất cả các số nguyên tố có trong dãy và tính tổng của các số nguyên tố đó.
b) Sắp xếp dãy số theo thứ tự giảm dần.
Dữ liệu vào: Đọc từ tệp Cau4.INP có một số nguyên dương n, (0<n ≤ 103) và dãy số nguyên mỗi số cách nhau ít nhất một dấu cách.
Kết quả: Ghi ra tệp Cau4.OUT với cấu trúc như sau:
+ Dòng 1: Các số nguyên tố có trong dãy cách nhau một dấu cách.
+ Dòng 2: Tổng của các số nguyên tố đã tìm được.
+ Dòng 3: Dãy số đã sắp xếp theo thứ tự giảm dần.

Cau4.INPCau4.OUTGhi chú/Giải thích
5
-2 3 2 5 4
3 2 5
10
5 4 3 2 -2
Các số nguyên tố.
Tổng của các số nguyên tố
Sắp xếp giảm dần

Code C++
Câu 1.

#include <iostream>#include <fstream>using namespace std;ifstream fin;ofstream fout;void ya(int n){    if(n%2==0)    {        fout<<1<<" ";    }    else    {        fout<<0<<" ";    }}void yb(int n){    int du;    while(n>0)    {        du=n%10;        n=n/10;    }    if(du%2==0)    {        fout<<1<<endl;    }    else    {        fout<<0<<endl;    }}int main(){    fin.open("Cau1.INP",ios::in);    fout.open("Cau1.OUT",ios::out);    if(fin.fail())    {        fout<<"Loi doc tep";    }    else    {        int n;        fin>>n;        ya(n);        yb(n);    }    fin.close();    fout.close();    return 0;}

Câu 2.

#include <iostream>#include <fstream>using namespace std;ifstream fin;ofstream fout;int sodao(int n){    int du, dao=0;    while(n>0)    {        du=n%10;        n=n/10;        dao=dao*10+du;    }    return dao;}int main(){    fin.open("Cau2.INP",ios::in);    fout.open("Cau2.OUT",ios::out);    if(fin.fail())    {        fout<<"Loi doc tep";    }    else    {        int n;        fin>>n;        fout<<sodao(n);    }    fin.close();    fout.close();    return 0;}

Câu 3.

#include <iostream>#include <fstream>using namespace std;ifstream fin;ofstream fout;int Tongchuso(int n){    int du, T=0;    while(n>0)    {        du=n%10;        n=n/10;        T=T+du;    }    return T;}int main(){    fin.open("Cau3.INP",ios::in);    fout.open("Cau3.OUT",ios::out);    if(fin.fail())    {        fout<<"Loi doc tep";    }    else    {        int n;        fin>>n;        fout<<Tongchuso(n);    }    fin.close();    fout.close();    return 0;}

Câu 4.

#include <iostream>#include <fstream>#include <math.h>#include <algorithm>#include <functional>using namespace std;ifstream fin;ofstream fout;bool SNT(int n){    bool lant=false;    if(n>1)    {        lant=true;        int i, can=(int)sqrt(n);        for(i=2; i<=can; i++)        {            if(n%i==0)            {                lant=false;                break;            }        }    }    return lant;}void ya(int a[],int n){    int i, T=0;    for(i=0; i<n; i++)    {        if(SNT(a[i]))        {            fout<<a[i]<<" ";            T=T+a[i];        }    }    fout<<endl;    fout<<T<<endl;}void yb(int a[],int n){    sort(a,a+n,greater<int>()); //SX giam dan    //Neu sap xep tang dan thi bo tham so cuoi    //sort(a,a+n); //SX tang dan    int i;    for(i=0; i<n; i++)    {        fout<<a[i]<<" ";    }}int main(){    fin.open("Cau4.INP",ios::in);    fout.open("Cau4.OUT",ios::out);    if(fin.fail())    {        fout<<"Loi doc tep";    }    else    {        int n, a[1000], i;        fin>>n;        for(i=0; i<n; i++)        {            fin>>a[i];        }        ya(a,n);        yb(a,n);    }    fin.close();    fout.close();    return 0;}

Câu 5. Viết chương trình nhập 3 số thực a, b, c; kiểm tra 3 số đó có phải là độ dài 3 cạnh của tam giác hay không? Nếu phải thì ghi ra Yes và đó là tam giác gì? (tam giác đều, tam giác cân, tam giác vuông)
Công thức kiểm tra:
+ Các số a, b, c là độ dài 3 cạnh của một tam giác khi tổng của hai số lớn hơn số còn lại: (a+b)> c hoặc (a+c)>b hoặc (b+c)>a.
+ Các số a, b, c là độ dài 3 cạnh của một tam giác cân khi 2 trong 3 số bằng nhau: a=b hoặc a=c hoặc b=c
+ Các số a, b, c là độ dài 3 cạnh của một tam giác đều khi 3 số bằng nhau: a=b=c
+ Các số a, b, c là độ dài 3 cạnh của một tam giác vuông khi bình phương của một cạnh bằng tổng bình phương hai cạnh còn lại: a2=b2+c2 hoặc b2=a2+c2 hoặc c2=a2+b2.
Code

 

Tác giả: Vàng Văn Quyn

Chú ý: Việc đăng lại bài viết trên ở website hoặc các phương tiện truyền thông khác mà không ghi rõ nguồn https://365.io.vn là vi phạm bản quyền

Tổng số điểm của bài viết là: 1 trong 1 đánh giá

Xếp hạng: 1 - 1 phiếu bầu
Click để đánh giá bài viết

Những tin mới hơn

Những tin cũ hơn

Thống kê
  • Đang truy cập17
  • Hôm nay1,536
  • Tháng hiện tại79,271
  • Tổng lượt truy cập9,170,814
Bạn đã không sử dụng Site, Bấm vào đây để duy trì trạng thái đăng nhập. Thời gian chờ: 60 giây