Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 15

BÀI TẬP CẤU TRÚC RẼ NHÁNH

1. Nhập 2 số nguyên bất kì a , b. Tìm và in ra số lớn nhất.

input output

3 10 10

-2 -7 -2

#include <iostream>

using namespace std;

int a,b,c;

int main()

cin>>a>>b;

c=a;

if(c<b) c=b;

cout<<c;

return 0;

2. Nhập 3 số nguyên bất kì a, b, c. Tìm và in ra số lớn nhất và số bé nhất.

input output

3 10 0 10 0

-2 -7 -4 -2 -7

Cách 1:

#include <iostream>

using namespace std;


int a,b,c,Max,Min;

int main()

cin>>a>>b>>c;

Max=a;

if (Max<b) Max=b;

if (Max<c) Max=c;

Min=a;

if (Min>b) Min=b;

if (Min>c) Min=c;

cout<<Max<<" "<<Min;

return 0;

Cách 2:

cout<<max(c,max(a,b)); cin<<min(c,min(a,b));

3. Nhập vào 2 số nguyên bất kì a, b. Nếu a>b thì hoán đổi giá trị của a cho b . ngược lại thì không

hoán đổi, và in ra giá tri a,b.

input output

5 6 56

72 27
#include <iostream>

using namespace std;

int a, b;

int

main ()

cin >> a >> b;

if (a > b)

swap (a, b);

cout << a << " " << b;

return 0;

4. Nhập vào số nguyên dương  n và in ra thông báo n chẵn hãy lẻ.

input output

7 Chẵn

-3 Lẻ

#include <iostream>

using namespace std;

int a;

int main()

cin>>a;

if (a%2==0) cout<<"Chẵn";
else cout<<"Lẻ";

return 0;

5. Nhập vào hai số nguyên a,b . In ra thông báo "a lớn hơn b" nếu a>b, "a bằng b" nếu a=b, "a bé

hơn b" nếu a<b.

input output

3 10 a be hon b

10 3 a lon hon b

44 a bang b

Cách 1:

#include <iostream>

using namespace std;

int a, b;

int

main ()

cin >> a >> b;

if (a > b)

cout << "a lon hon b" << endl;

if (a < b)

cout << "a be hon b" << endl;

if (a == b)

cout << "a bang b" << endl;


return 0;

Cách 2:

#include <iostream>

using namespace std;

int a, b;

int

main ()

cin >> a >> b;

if (a > b)

cout << "a lon hon b";

else if (a < b)

cout << "a be hon b";

else

cout << "a bang b";

return 0;

6. Viết chương trình nhập vào điểm a của một học sinh và in ra xếp loại học tập của học sinh đó.

Nếu a>=9 "xuất sắc",

nếu 8<=a<9 "Giỏi"

nếu 7<=a<8"Khá"
nếu 6<=a<7"TB Khá" ,

nếu 5<=a<6 "TB", còn lại "Yếu".

input output

9 xuat sac

8.5 Gioi

7 Kha

5 TB

3 Yeu

#include <iostream>

using namespace std;

float a;

int

main ()

cin >> a;

if (a >= 9)

cout << "xuat sac";

else if (a >= 8)

cout << "Gioi";

else if (a >= 7)

cout << "Kha";

else if (a >= 6)
cout << "TB Kha";

else if (a >= 5)

cout << "TB";

else

cout << "Yeu";

return 0;

7. Viết chương trinh nhập vào ngày , tháng ,năm hôm nay. In ra màn hình định dạng "hôm

nay là ngày/tháng/năm".

input output

20 5 2002 Hom nay ngay 20 thang 5 nam 2022

#include <iostream>

using namespace std;

int a, b, c;

int

main ()

cin >> a >> b >> c;

cout << "Hom nay la ngay " << a << " thang " << b << " nam " << c;

return 0;

}
8. Viết chương trình nhập vào 3 số nguyên dương a và b và c. Hãy cho 3 số này có là độ dài 3
cạnh của tam giác không ? Nếu là 3 cạnh tam giác ghi YES và tính chu vi và diện tích của tam
giác đó, diện tích làm tròn đến 2 chữ số ở phần thập phân ? Nếu không phải ghi NO

Input Output
2 10 5 NO
345 YES
Chu vi la : 12
Dien tich: 6.00
3 7 5 YES
Chu vi la: 15
Dien tich: 64.95
77 8 YES
Chu vi la : 22
Dien tich: 22.98

9. Giải phương trình bậc nhất : ax+b=0 . Với a, b nhập từ bàn phím.

#include <iostream>

using namespace std;

float a, b;

int

main ()

cin >> a >> b;

if (a != 0)

cout << "Nghiem pt la: " << -b / a;

else if (b == 0)

cout << "PT co vo so nghiem";

else

cout << "PT vo nghiem";

return 0;
}

10. Giải Phương trình bậc 2: ax^2+bx+c=0 . Với 3 số a, b, c là số nhập từ bàn phím.

#include <iostream>

#include <cmath>

#include <iomanip>

using namespace std;

float a,b,c, delta;

int main()

cin>>a>>b>>c;

if (a!=0)

delta=b*b-4*a*c;

if (delta<0) cout<<"Phuong trinh vo nghiem";

else

if (delta==0) cout<<fixed<<setprecision(2)<<"Phuong trinh co nghiem kep: "<<

-b/(2*a);

else cout<<fixed<<setprecision(2)<<"Phuong trinh co 2 nghiem phan biet: "<<(-

b-sqrt(delta))/(2*a)<<" và "<<(-b+sqrt(delta))/(2*a);

else

{
if ((b!=0) && (c!=0)) cout<<fixed<<setprecision(2)<<" Nghiem cua phuong trinh

la: "<<-c/b;

else

if ((b!=0) && (c==0)) cout<<"Nghiem cua phuong trinh la: 0 ";

else

if ((b==0) && (c!=0)) cout<<"Phuong trinh vo nghiem";

else cout<<"Phuong trinh vo so nghiem";

return 0;

11. Giải hệ phương trình: ax + by = c   . 

             dx + ey = f

Với các hệ số a,b,c,d,e,f nhập từ bàn phím

12. Nhập một số bất kì, kiểm tra xem đó là số âm hay số dương hay bằng 0

input output

3 Duong

-2 Am

0 Bang 0

#include <iostream>

using namespace std;

float a;
int main()

cin>>a;

if (a>0) cout<<"Duong";

else

if (a==0) cout<<"Bang 0";

else cout<<"Am";

return 0;

13. Nhập một số bất kì tính căn bậc 2 của nó. nếu số đó <0 thì sử dụng hàm abs().

input output

9 3

-4 2

#include <iostream>

#include <cmath>

using namespace std;

double a;

int main()

cin>>a;

if (a>=0) cout<<sqrt(a);

else cout<<sqrt(abs(a));
return 0;

14. Viết chương trình nhập vào một số nguyên dương n có 3 chữ số. Sau đó đọc chữ số đó ra màn

hình (vd: 314 : Ba trăm mười bốn).

15. Nhập một số nguyên dương n từ bàn phím . Kiểm tra xem n có phải là số chính phương hay

không. nếu có thì in ra đây là số chính phương và ngược lại.

input output

25 Day la so chinh phuong

5 Khong la so chinh phuong

#include <iostream>

#include <cmath>

using namespace std;

int a;

int main()

cin>>a;

if (sqrt(a)==(int)sqrt(a)) cout<<"Day la so chinh phuong"; (int)=> lấy phần nguyên

else cout<<"Khong la so chinh phuong";

return 0;

16. Nhập 3 số nguyên a, b, c từ bàn phím. Kiểm tra xem ba số này có tạo thành cạnh của tam giác

hay không. Nếu có kiểm tra xem nó là loại tam giác nào trong các loại sau: vuông, vuông cân, cân,

đều, tam giác thường.


Cách 1:

#include <iostream>

using namespace std;

int a,b,c;

int main()

cin>>a>>b>>c;

if (a+b>c && b+c>a && a+c>b)

cout<<"3 so do la 3 canh cua tam giac"<<endl;

if (a==b and b==c) cout<< "Tao thanh tam giac deu";

else

if (((a==b) || (b==c) || (a==c)) && ((a*a+b*b==c*c) || (a*a+c*c==b*b) ||(a*a==b*b+c*c)))

cout<<"Tao thanh tam giac vuong can";

else

if ((a==b) || (b==c) || (a==c)) cout<<"Tao thanh tam giac can";

else

if ((a*a+b*b==c*c) || (a*a+c*c==b*b) ||(a*a==b*b+c*c)) cout<<"Tao thanh tam giac

vuong";

else cout<<"Tao thanh tam giac thuong";

else cout<<"Khong tao thanh tam giac";


return 0;

Cách 2:

#include <iostream>

using namespace std;

int a,c,b;

int main()

cin>>a>>b>>c;

if (!(a+b>c && a+c>b && b+c>a)) cout<<"Khong tao thanh tam giac";

else

if (a==b && b==c) cout<<"Tao thanh tam giac deu";

else

if (a==b)

if (c*c==2*a*a) cout<<"Tao thanh tam giac vuong can";

else cout<<"Tao thanh tam giac can";

if (a==c)

if (b*b==2*a*a) cout<<"Tao thanh tam giac vuong can";

else cout<<"Tao thanh tam giac can";

if (c==b)
if (a*a==2*c*c) cout<<"Tao thanh tam giac vuong can";

else cout<<"Tao thanh tam giac can";

if (a!=b && b!=c && a!=c)

if (a*a==b*b+c*c || b*b==a*a+c*c || c*c==a*a+b*b) cout<<"Tao thanh tam giac

vuong";

else cout<<"Tao thanh tam giac thuong";

return 0;

You might also like