Bài tập C++ có giải (code mẫu) về biến, kiểu dữ liệu và toán tử

Bài tập C++ về biến và kiểu dữ liệu

Viết chương trình C++ để in các dòng text đã cho trước.

Bài tập:

Viết chương trình C++ để in các dòng sau:

Toi nam nay 18 tuoi.

Toi co nhieu hoai bao muon theo duoi.

Code mẫu:

#include <cstdlib>
#include <iostream> 
using namespace std; 
int main(int argc, char *argv[]) 
{ 
 int age; 
 age=10; 
 cout<<" Toi nam nay "<<age<<" tuoi.\n"; 
 cout<<" Toi co nhieu hoai bao muon theo duoi.\n"; 
 
 return 0; 
}

Viết chương trình C++ để in các dấu sao theo yêu cầu đã cho.

Yêu cầu:

Viết chương trình C++ để in các dấu sao theo dạng sau:

*

**

***

****

*****

******

Code mẫu:

#include <cstdlib> 
#include <iostream> 
using namespace std; 
  
int main(int argc, char *argv[]) 
{ 
    cout<<"*\n"; 
    cout<<"**\n"; 
    cout<<"***\n"; 
    cout<<"****\n"; 
    cout<<"*****\n";
    cout<<"******\n"; 
    return 0; 
}

Viết chương trình C++ để khai báo 2 biến nguyên và một biến thực, sau đó in kết quả trên màn hình.

Yêu cầu:

Viết chương trình C++ để khai báo hai biến nguyên, một biến thực và gán các giá trị tương ứng 8, 16 và 15.8 cho chúng. Sau đó in kết quả trên màn hình.

Code mẫu:

#include <cstdlib> 
#include <iostream> 
  
using namespace std; 
  
int main(int argc, char *argv[]) 
{ 
    int a; 
    int b; 
    float c; 
    a=8; 
    b=16; 
    c=15.8; 
    cout<<"a="<<a<<"\t"<<"b="<<b<<"\t"<<"c="<<c; 
    cout<<"\n"; 
        
    return 0; 
} 

Viết chương trình C++ yêu cầu người dùng nhập tên của họ, rồi in kết quả trên màn hình.

Yêu cầu:

Viết chương trình C++ để nhắc người dùng nhập tên của họ, sau đó in kết quả trên màn hình.

Code mẫu:

#include <cstdlib> 
#include <iostream> 
  
using namespace std;   
int main(int argc, char *argv[]) 
{ 
    char name[20]; 
    cout<<"Hay nhap ten cua ban:"; 
    cin>>name; 
    cout<<"Xin chao "<<name<<"! \n"; 
        
    return 0; 
}  

Viết chương trình C++ để nhập ba số nguyên đã biết, sau đó in ra màn hình theo thứ tự tăng dần và giảm dần.

Yêu cầu:

Viết chương trình C++ yêu cầu người dùng nhập ba số nguyên, sau đó in 3 số đó ra màn hình theo thứ tự tăng dần.

Code mẫu:

#include <iostream>

void Sort(int &a, int &b, int &c){
    if(a>b){
       int tmp = a;
       a = b;
       b = tmp;
    }
    if(a>c){
       int tmp = a;
       a=c;
       c = tmp;
    }
    if(b>c){
       int tmp = b;
       b=c;
       c=tmp;
    }
    return;
}

int main(){
    std::cout << "Nhap 3 so nguyen: " << std::endl;
    int num1;
    int num2;
    int num3;
    std::cin >> num1 >> num2 >> num3;

    int output1 = num1;
    int output2 = num2;
    int output3 = num3;

    Sort(output1,output2,output3);

    std::cout << num1 << " " << num2 << " " << num3 << " "
         << " khi sap xep tang dan: ";
    std::cout << output1 << " " << output2 << " " << output3 << std::endl;

    return 0;
}

Viết chương trình C++ để in một số nguyên, một số thực, một ký tự đã được định nghĩa trước.

Yêu cầu:

In các giá trị sau trên màn hình chuẩn: Một số nguyên a, một số thực b và một ký tự c.

Code mẫu:

#include <iostream>
#include <conio.h>
using namespace std; 
int main()
{
  
  int a = 100;
  float b = 5.1;
  char c = 'q';
  cout << "a = " << a << endl;
  cout << "b = " << b << endl;
  cout << "c = " << c << endl;
  return 0;
}

Bài tập C++ về toán tử

Tìm tổng, hiệu, tích và thương của hai số nguyên và in kết quả ra màn hình.

Yêu cầu:

Giả sử có 2 số nguyên cho trước, bạn hãy tính tổng, hiệu, tích và thương của hai số rồi in kết quả ra màn hình.

Code mẫu:

#include <iostream>
#include <conio.h>
using namespace std; 
int main()
{
  
  int x = 12;
  int y = 5;
  int tong, hieu, tich, thuong;
  tong = x + y;
  hieu = x - y;
  tich = x * y;
  thuong = x / y;
  cout << "Tong cua " << x << " va " << y << " la " << tong << "." << endl;
  cout << "Hieu cua " << x << " va " << y << " la " << hieu << "." << endl;
  cout << "Tich cua " << x << " va " << y << " la " << tich << "." << endl;
  cout << "Thuong cua " << x << " va " << y << " la " << thuong << "." << endl;
  return 0;
}

Nhập hai số nguyên từ bàn phím, tính tổng, trung bình cộng của chúng và in ra màn hình.

Yêu cầu:

Nhập 2 số nguyên từ bàn phím, tính tổng, trung bình cộng của hai số đó, rồi in kết quả ra màn hình.

Code mẫu:

#include <iostream>
#include <conio.h>
using namespace std; 
int main()
{

int x,y,tong;
float trungbinhcong;
cout << "Nhap hai so nguyen : " << endl;
cin>>x>>y;
tong=x+y;
trungbinhcong=tong/2.0f;
cout << "Tong cua " << x << " va " << y << " la " << tong << "." << endl;
cout << "Trung binh cong cua " << x <<  " va " << y << " la " << trungbinhcong << "." << endl;
return 0;
}

Kết quả:

Nhap hai so nguyen: 3 5 Tong cua 3 va 5 la 8. Trung binh cong cua 3 va 5 la 4.

Tìm vận tốc cuối cùng và in kết quả ra màn hình khi biết vận tốc ban đầu, gia tốc và thời gian.

Yêu cầu:

Giả sử một chiếc ô tô có vận tốc ban đầu v0, gia tốc a và thời gian t. Viết chương trình C++ để tìm vận tốc cuối cùng của ô tô và in kết quả ra màn hình.

Gợi ý:

  • Sử dụng lệnh cin để nhập các giá trị tương ứng cho v0, a và t.
  • Dùng công thức v = v0 + a.t để tính vận tốc cuối cùng

Code mẫu:

#include <iostream>
#include <conio.h>
using namespace std; 
int main()
{

int v,u,a,t; 
cout << "Nhap van toc v0, gia toc a, thoi gian t: " << endl;
cin>>u>>a>>t;
v=u+a*t;
cout << "Van toc cuoi cung la " << v << "." << endl;
return 0;
}

Kết quả:

Nhap van toc v0, gia toc a, thoi gian t: 10 2 15 Van toc cuoi cung la 40.

Viết chương trình C++ để tính các giá trị biểu thức và in kết quả theo yêu cầu.

Yêu cầu:

Viết chương trình C++ để in kết quả dưới dạng sau:

Gtri x Gtri y Bieu Thuc Ket qua
18 | 2 | A=y+3 |A=5
18 | 2 | B=y-2 |B=0
18 | 2 | C=y*5 |C=10
18 | 2 | D=x/y |D=9
18 | 2 | E=x%y |E=0

Gợi ý:

  • Dùng tab và newline để có thể in theo yêu cầu.

Code mẫu:

#include <cstdlib>
#include <iostream>
 
using namespace std;
 
int main(int argc, char *argv[])
{
int x;
int y;
x=18;
y=2;
cout<<"Ket qua tra ve:\n";
cout<<"Gtri x\t"<<"Gtri y\t"<<"Bieu thuc\t"<<"Ket qua\n";
cout<<x<<" |\t"<<y<<" |\t"<<"A=y+3\t"<<"\t|"<<"A="<<y+3<<"\n";
cout<<x<<" |\t"<<y<<" |\t"<<"B=y-2\t"<<"\t|"<<"B="<<y-2<<"\n";
cout<<x<<" |\t"<<y<<" |\t"<<"C=y*5\t"<<"\t|"<<"C="<<y*5<<"\n";
cout<<x<<" |\t"<<y<<" |\t"<<"D=x/y\t"<<"\t|"<<"D="<<(float)(x/y)<<"\n";
cout<<x<<" |\t"<<y<<" |\t"<<"E=x%y\t"<<"\t|"<<"E="<<x%y<<"\n";

return 0;
}

Kết quả:

Viết chương trình C++ để tính điểm thi.

Yêu cầu:

Viết chương trình để nhập điểm kiểm tra, điểm thi giữa kỳ, điểm thi cuối kỳ, sau đó tính tổng điểm và in kết quả ra màn hình dưới dạng sau:

==========Diem kiem tra================
Nhap diem kiem tra 1:10
Nhap diem kiem tra 2:9
Nhap diem kiem tra 3:10
==========Diem thi giua ky=============
Nhap diem thi giua ky:8.5
===========Diem thi cuoi ky=============
Nhap diem thi cuoi ky:10
Tong diem kiem tra: 29
Diem thi giua ky: 8.5
Diem thi cuoi ky: 10
……………………………
Tong diem: 47.5

Code mẫu:

#include <cstdlib> 
#include <iostream> 
#include<iomanip> 
using namespace std; 
int main(int argc, char *argv[]) 
{ 
    float q1; 
    float q2; 
    float q3; 
    float tongdiemkt; 
    float diemgk; 
    float diemck; 
    float tongdiem; 
    cout<<"==========Diem kiem tra================\n"; 
    cout<<"Nhap diem kiem tra 1:"; 
    cin>>q1; 
    cout<<"\n"; 
    cout<<"Nhap diem kiem tra 2:"; 
    cin>>q2; 
    cout<<"\n"; 
    cout<<"Nhap diem kiem tra 3:"; 
    cin>>q3; 
    cout<<"\n"; 
    cout<<"==========Diem thi giua ky=============\n"; 
    cout<<"Nhap diem thi giua ky:"; 
    cin>>diemgk; 
    cout<<"\n"; 
    cout<<"===========Diem thi cuoi ky=============\n"; 
    cout<<"Nhap diem thi cuoi ky:"; 
    cin>>diemck; 
    cout<<"\n"; 
    tongdiemkt=q1+q2+q3; 
    tongdiem=tongdiemkt+diemgk+diemck; 
    cout<<"Tong diem kiem tra:"<<right<<setw(5)<<tongdiemkt; 
    cout<<"\n"; 
    cout<<"Diem thi giua ky:"<<right<<setw(7)<<diemgk; 
    cout<<"\n"; 
    cout<<"Diem thi cuoi ky:"<<right<<setw(10)<<diemck; 
    cout<<"\n"; 
    cout<<".................................\n"; 
    cout<<"Tong diem:"<<right<<setw(11)<<tongdiem; 
    cout<<"\n"; 
    return 0; 
}

Kết quả:

Nhập 2 số x, y và tính theo yêu cầu

Yêu cầu:

Viết chương trình C++ để nhập hai số nguyên x, y, sau đó tính: p=x*y, s=x+y, q=s2+p(s-x)*(p+y) và in kết quả ra màn hình.

Code mẫu:

#include <cstdlib> 
#include <iostream> 
#include<iomanip> 
  
using namespace std; 
  
int main(int argc, char *argv[]) 
{ 
    float x; 
    float y; 
    float p; 
    float s; 
    float q; 
    cout<<"Nhap gia tri x: "; 
    cin>>x; 
    cout<<"\n"; 
    cout<<"Nhap gia tri y: "; 
    cin>>y; 
    cout<<"\n"; 
    p=x*y; 
    s=x+y; 
    q=s*s+p*(s-x)*(p+y); 
    cout<<"Gia tri bieu thuc q la: "<<q; 
    cout<<"\n"; 
    
    return 0; 
} 

Kết quả:

Nhap gia tri x: 5  Nhap gia tri y: 10  Gia tri bieu thuc q la: 30225

Bài tập C++ vận dụng nạp chồng toán tử nhị phân để cộng, trừ hai số phức

Yêu cầu:

Sử dụng khái niệm nạp chồng toán tử để cộng và trừ hai số phức.

Gợi ý:

Để sử dụng nạp chồng toán tử trong giải bài tập cộng, trừ số phức này, bạn cần làm những việc sau:

  • Khai báo lớp sophuc: Bao gồm các biến và hàm thành viên
  • Dùng hàm getvalue() để nhận phần thực, phần ảo của số phức
  • Định nghĩa hàm operator+() để cộng hai số phức
  • Định nghĩa hàm operator-() để trừ hai số phức
  • Định nghĩa hàm display
  • Khai báo các số phức i1, i2 và kết quả phép tính kq1, kq2
  • Gọi hàm getvalue để lấy phần thực và phần ảo cho i1, i2
  • Gọi hàm operator+() và operator-() để cộng, trừ hai số phức
  • Gọi hàm display để hiển thị 2 số phức, 2 kết quả cộng, trừ
  • Trả về các giá trị

Code mẫu:

#include<iostream>
#include<conio.h>
using namespace std;  
class sophuc
{
              int a,b;
    public:
              void getvalue()
              {
                 cout<<"Hãy nhập phần thực, phần ảo:";
                 cin>>a>>b;
              }
              sophuc operator+(sophuc i)
              {
                            sophuc q;
                            q.a=a+i.a;
                            q.b=b+i.b;
                            return(q);
              }
              sophuc operator-(sophuc i)
              {
                            sophuc q;
                            q.a=a-i.a;
                            q.b=b-i.b;
                            return(q);
              }
              void display()
              {
                            cout<<a<<"+"<<b<<"i"<<"\n";
              }
};

int main()
{
   
   sophuc i1,i2,kq1,kq2;
 
   i1.getvalue();
   i2.getvalue();
 
   kq1 = i1+i2;
   kq2 = i1-i2;
 
   cout<<"Số phức đã nhập vào:\n";
   i1.display();
   i2.display();
  
   cout<<"Kết quả cộng, trừ số phức:\n";
   kq1.display();
   kq2.display();
  
   return 0;
}

Kết quả: