Bài tập cấu trúc while, do-while trong C/C++

Bài tập cấu trúc while, do-while trong C/C++

/*
Câu 1: Viết chương trình thực hiện
- Nhập vào từ bàn phím số nguyên n thỏa mãn 1 < n < 2020 (sử dụng do-while và if)
- In ra màn hình các số chẵn nhỏ hơn n (sử dụng while hoặc do-while)
- Đếm các số lẻ nhỏ hơn n while (sử dụng while hoặc do-while)
*/


#include <iostream>
using namespace std;

int main() {
    cout<<"\n Cau 1: \n ";
    
    int n;
    // nhap n thoa man 1<n<2020
    cout<<"\n + Nhap n: ";
    do{
        cout<<"\n n= ";
        cin>>n;
        if(n<=1||n>=2020)
            cout<<"\n Nhap lai n! ";
    }while(n<=1||n>=2020);
    
    // In so chan nho hon n
    cout<<"\n + In so chan < n: ";
    int i=2;
    while(i<n){
        cout<<i<<", ";
        i=i+2;
    }
    // Dem so le < n
    int dem =0;
    i=1;
    while(i<n){
        dem++;
        i=i+2;
    }
    cout<<"\n + Dem so le < n :"<<dem;
    
    cout<<"\n - END - \n ";
    return 0;
}


>> Kết quả:



/*
 Câu 2: Viết chương trình thực hiện

 - Nhập và từ bàn phím số thực x, số nguyên n thỏa mãn: 0 < x <3, 1< n < 20 (sử dụng do-while và if)
 - Tính giá trị của biểu thức
 s= (x^1) / 1 + (x^2) / 2 + ... + (x^n)/ n

 (sử dụng while hoặc do-while)
 */

#include <iostream>
using namespace std;

int main() {
    cout<<"\n Cau 2: \n ";
    float x;
    int n;
    
    cout<<"\n + Nhap n, x: ";
    
    // nhap n thoa man 1<n<20
    
    do{
        cout<<"\n n= ";
        cin>>n;
        if(n<=1||n>=20)
            cout<<"\n Nhap lai n! ";
    }while(n<=1||n>=20);
    
    // nhap x thoa man 0<x<3
   
    do{
        cout<<"\n x= ";
        cin>>x;
        if(x<=0||x>=3)
            cout<<"\n Nhap lai x! ";
    }while(x<=0||x>=3);
    
    
    // Tinh s= (x^1) / 1 + (x^2) / 2 + ... + (x^n)/ n

    float s=0;
    int i=1;
    while(i<=n){
        // tinh gia tri tu so
        float tu=1;
        int j=1;
        while(j<=i){
            tu=tu*x;
            j++;
        }
        s=s+tu/i;
        i++;
    }
    
    cout<<"\n + Tong day so: "<<s;
    
    cout<<"\n - END - \n ";
    return 0;
}