# data[].attributes.body
Câu 1: Kiểm tra số chẵn hay lẻ (4 điểm)

Tên tệp chương trình: CAU1.*

Nhập một số nguyên dương x, kiểm tra xem x là số chẵn hay số lẻ?

Ví dụ:

INPUT:45

OUTPUT: Số lẻ

Giải thích: Vì 45 không chia hết cho 2 nên 45 là số lẻ.

Câu 2: Tổng các số tự nhiên lẻ (4 điểm)

Tên tệp chương trình: CAU2.*

Nhập một số nguyên dương n. Tính tổng 1 + 3 + 5 +… + (2n-1) .

Ví dụ:

INPUT: 50

OUTPUT: 2500

Giải thích: Sử dụng vòng lặp for (int i=1;i<=n;i+=2)

Tong=1+3+5+…+99=2500

Câu 3: Các số không âm (4 điểm)

Tên tệp chương trình: CAU3.*

Nhập một dãy các số nguyên gồm n số. In ra các số trong dãy là những số không phải là số âm.

Ví dụ:

INPUT:

Nhập n: 4

Nhập số thứ 1: 4

Nhập số thứ 2: 3

Nhập số thứ 3: -7

Nhập số thứ 4: 2

OUTPUT: Các số không âm: 4 3 2

Giải thích: Khi nhập n=4 ta có vòng lặp Nhấp số thứ i được thực hiện 4 lần với các giá trị lần lượt là 4, 3, -7, 2. Kết quả in ra:

Số nguyên không âm: 4 3 2

(Số -7 không được in ra vì -7 là số âm.

Câu 4: Tổng các kí tự số trong xâu (4 điểm)

Tên tệp chương trình: CAU4.*

Nhập một xâu kí tự s độ dài n chỉ chứa các chữ cái tiếng Anh và các kí tự số. Hãy tính và in ra tổng

của các kí tự số trong xâu s.

Ví dụ:

INPUT: Abcd20Ghi2jkl5mn

OUTPUT: Tổng các số là: 9

Giải thích: Trong xâu s có các kí tự số là 2, 0 2, 5 : Tổng các số là: 2+0+2+5=9

Câu 5: Tam giác (4 điểm)

Tên tệp chương trình: CAU5.*

Nhập 3 cạnh a, b, c. Cho biết 3 cạnh đó có hình thành một tam giác hay không? Nếu đó là một tam giác thì cho biết tính chất của tam giác đó (Là tam giác đều hay tam giác cân hay tam giác vuông hay tam giác thường)

Ví dụ:

INPPUT: 5 6 3

OUTPUT: Là tam giác thường

Giải thích: Vì (a+b>c) và (a+c)>b và (b+c)>a đúng

Nên xét tiếp trường hợp tam giác đều (a=b=c),

tam giác cân (a=b hoặc b=c hoặc a=c), tam giác

vuông (a2+b2=c2 hoặc a 2+c2=b2 ) và tam giác

thường.

Ví dụ 2:

INPUT: 3 4 5

OUTPUT: Là tam giác vuông

Giải thích: Vì (a+b>c) và (a+c)>b và (b+c)>a đúng

Nên xét tiếp trường hợp tam giác đều, tam giác cân và tam giác vuông.

Ví dụ 3:

INPUT: 1 2 9

OUTPUT: Không là tam giác

Giải thích: Vì (a+b>c) và (a+c)>b và (b+c)>a sai

Nên không xét tiếp và in ra kết quả “Không là tam giác”

Ví dụ 4:

INPUT: 5 5 5

OUTPUT: Là tam giác đều

Giải thích: Vì (a+b>c) và (a+c)>b và (b+c)>a đúng

Nên xét tiếp trường hợp tam giác đều.

# data[].attributes.body
#include <iostream>

using namespace std;

int main() {

int x;

cin >> x;

if (x % 2 == 0)

cout << "Số chẵn";

else

cout << "Số lẻ";

return 0;

}

# data[].attributes.body
#include <iostream>

using namespace std;

int main() {

int n, sum = 0; // sum rỗng

cin >> n;

for (int i = 1; i <= 2*n - 1; i += 2)

sum += i;

cout << "Tổng = " << sum;

return 0;

}

# data[].attributes.body
#include <iostream>

using namespace std;

int main() {

int n;

cout << "Nhap n: ";

cin >> n;

int a[n]; // tạo dãy n để lưu số

for (int i = 0; i < n; i++) {

cout << "Nhap so thu " << i + 1 << ": ";

cin >> a[i];

}

cout << "Cac so khong am: ";

for (int i = 0; i < n; i++) {

if (a[i] >= 0) { // ss dương âm

cout << a[i] << " ";

}

}

return 0;

}

# data[].attributes.attachment_link.readable_text
#include <iostream>
#include <string>

using namespace std;

int main() {
    string s;
    getline(cin, s);   // nhap ca dong

    int sum = 0;

    for (int i = 0; i < s.length(); i++) {
        if (isdigit(s[i])) {          // neu ki tu l� so 
            sum += s[i] - '0';        // chuyen ki tu -> so 
        }
    }

    cout << "Tong cac so la: " << sum;

    return 0;
}


# data[].attributes.body
#include <iostream>

using namespace std;

int main() {

int a, b, c;

cin >> a >> b >> c;

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

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

cout << "Là tam giác đều";

else if (a == b || b ==c || a == c)

cout << "Là tam giác cân";

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

cout << "Là tam giác vuông";

else

cout << "Là tam giác thường";

} else {

cout << "Không là tam giác";

}

return 0;

}

// && = and, || = or

# data[].attributes.body
#include <iostream>

using namespace std;

int main() {

int x;

cin >> x;

if (x % 2 == 0)

cout << "Số chẵn";

else

cout << "Số lẻ";

return 0;

}

# data[].attributes.body
#include <iostream>

using namespace std;

int main() {

int n, sum = 0; // sum rỗng

cin >> n;

for (int i = 1; i <= 2*n - 1; i += 2)

sum += i;

cout << "Tổng = " << sum;

return 0;

}

# data[].attributes.body
#include <iostream>

using namespace std;

int main() {

int n;

cout << "Nhap n: ";

cin >> n;

int a[n]; // tạo dãy n để lưu số

for (int i = 0; i < n; i++) {

cout << "Nhap so thu " << i + 1 << ": ";

cin >> a[i];

}

cout << "Cac so khong am: ";

for (int i = 0; i < n; i++) {

if (a[i] >= 0) { // ss dương âm

cout << a[i] << " ";

}

}

return 0;

}

# data[].attributes.body
Câu 1: Kiểm tra số chính phương (4 điểm)

Tên tệp chương trình: CAU1.*

Nhập một số nguyên dương x, kiểm tra xem x có phải là số chính phương hay không?

Số chính phương là một số nguyên không âm có thể biểu diễn dưới dạng bình phương của một số nguyên khác. Ví dụ:

4=2×2 hoặc 9=3×3

Ví dụ

0,1,4,9,16,25,36,49,64,81,100 là các số chính phương.

Ví dụ:

INPUT:4

OUTPUT: 4 là số chính phương

Giải thích: Vì 4 là bình phương của số 2 nên 4 là số chính phương.

Câu 2: Tổng các số tự nhiên nghịch đảo (4 điểm)

Tên tệp chương trình: CAU2.*

Nhập một số nguyên dương n. Tính tổng 1 + 1/2 + 1/3 +… +1/n .

Ví dụ:

INPUT: 5

OUTPUT: 2.283333

Giải thích: Sử dụng vòng lặp for (int i=1;i<=n;i++)

Tong=1+1/2+1/3+1/4+1/5=2.283333

Câu 3: Tổng các số lẻ (4 điểm)

Tên tệp chương trình: CAU3.*

Nhập một dãy các số nguyên gồm n số. Tính tổng các số lẻ trong dãy số trên.

Ví dụ:

INPUT:

Nhập n: 4

Nhập số thứ 1: 4

Nhập số thứ 2: 3

Nhập số thứ 3: -7

Nhập số thứ 4: 2

OUTPUT: Tổng các số lẻ: -4

Giải thích: Khi nhập n=4 ta có vòng lặp Nhấp số thứ i được thực hiện 4 lần với các giá trị lần lượt là 4, 3, -7, 2. Kết quả in ra:

Tổng các số lẻ: -4

(Tổng các số lẻ trong dãy là tổng của 3 và -7: 3-7=-4

Câu 4: Số kí tự chữ hoa trong xâu (4 điểm)

Tên tệp chương trình: CAU4.*

Nhập một xâu kí tự s độ dài n chỉ chứa các chữ cái tiếng Anh và các kí tự số. Hãy đếm xem có bao nhiêu các kí tự chữ hoa trong xâu s.

Ví dụ:

INPUT: Abcd20Ghi2jKl5mn

OUTPUT: Số kí tự chữ hoa là: 2

Giải thích: Trong xâu s có các kí tự số là A, K vậy có 2 kí tự là chữ hoa.

Câu 5: Tam giác (4 điểm)

Tên tệp chương trình: CAU5.*

Nhập vào số nguyên dương 𝑛 (2 < 𝑛 ≤ 103 ). In ra một hình vuông cạnh 𝑛 gồm các dấu $. (Lưu ý có kiểm tra n thỏa điều kiện bằng vòng lặp do... while)

Ví dụ:

INPPUT: 5

OUTPUT:

$$$$$

$$$$$

$$$$$

$$$$$

$$$$$

Giải thích: khi nhập n=5, ta sử dụng for i để in ra một dòng 5 ký tự '$' và lồng thêm 1 for j để lặp lại in ra 5 dòng.

# data[].attributes.body
#include <iostream>

#include <string>

using namespace std;

int main()

{

string s;

cout << "nhap mot xau ky tu"; // "Enter a string"

cin >> s;

int tong = 0; // "tong" means "sum" in Vietnamese

for (int i = 0; i < s.length(); i++) {

if (s[i] >= '0' && s[i] <= '9') {

int m = s[i];

tong = tong + m - '0';

}

}

cout << "tong la cac ky tu so:" << tong;

return 0;

}

# data[].attributes.body
#include <iostream>

using namespace std;

int main()

{

int a, b, c;

cin >> a >> b >> c;

// Check if the 3 sides form a triangle

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

if (a b && b c)

cout << "la tam giac deu"; // Equilateral triangle

else if (a b || b c || a == c)

cout << "la tam giac can"; // Isosceles triangle

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

cout << "la tam giac vuong"; // Right triangle

else

cout << "la tam giac thuong"; // Scalene triangle

} else {

cout << "khong la tam giac"; // Not a triangle

}

return 0;

}

# data[].attributes.body
#include <iostream>

using namespace std;

int main() {

int x;

cin >> x;

if (x %2 == 0)

cout << "số chẵn ";

else

cout << "số lẻ";

return 0;

}

# data[].attributes.body
#include <iostream>

using namespace std;

int main() {

int n, sum = 0; // sum rỗng

cin >> n;

for (int i = 1; i <= 2*n - 1; i += 2)

sum += i;

cout << "Tổng = " << sum;

return 0;

}

# data[].attributes.body
#include <iostream>

using namespace std;

int main() {

int n, sum = 0; // sum rỗng

cin >> n;

for (int i = 1; i <=n; i ++)

sum += (2*i-1);

cout << "Tổng = " << sum;

return 0;

}

# data[].attributes.body
#include <iostream>

using namespace std;

int main() {

int n;

cout << "Nhap n: ";

cin >> n;

int a[n]; // tạo dãy n để lưu số

for (int i = 0; i < n; i++) {

cout << "Nhap so thu " << i + 1 << ": ";

cin >> a[i];

}

cout << "Cac so khong am: ";

for (int i = 0; i < n; i++) {

if (a[i] >= 0) { // ss dương âm

cout << a[i] << " ";

}

}

return 0;

}

# data[].attributes.body
#include <iostream>

using namespace std;

int main() {

int n;

cout << "Nhap n: ";

cin >> n;

int a[n]; // tạo dãy n để lưu số

for (int i = 0; i < n; i++) {

cout << "Nhap so thu " << i + 1 << ": ";

cin >> a[i];

}

cout << "Cac so khong am: ";

for (int i = 0; i < n; i++) {

if (a[i] >= 0) { // ss dương âm

cout << a[i] << " ";

}

}

return 0;

}

# data[].attributes.body
#include <iostream>

#include <string>

using namespace std;

int main() {

string s;

cout << "Nhập 1 xâu ký tự: ";

cin >> s;

int tong = 0;

for (int i = 0; i < s.length(); i++) { // length() dùng để đo chiều dài của xâu ký tự

if (s[i] >= '0' && s[i] <= '9') {

int m = s[i] - '0';

tong += m;

}

}

cout << "Tổng số trong xâu ký tự: " << tong << endl;

return 0;

}

# data[].attributes.attachment_link.readable_text
#include <iostream>
using namespace std;

int main() {
    int n;
    double sum = 0.0;

    cout << "Nh���p 1 s��� nguy��n d����ng: ";
    cin >> n;

    for (int i = 1; i <= n; ++i) {
        sum += 1.0/i;
    }
    cout << "T���ng: " << sum << endl;
    return 0;
}

# data[].attributes.attachment_link.readable_text
#include <iostream>
using namespace std;
int main() {
    int n;
    double sum = 0.0;
    cout <<"nh���p s���: ";
    cin >>n;
    for (int i = 1; i <= n; ++i )
    sum += (1.0/i);
    cout <<"t���ng: "<<sum;
    return 0;
    
}

# data[].attributes.attachment_link.readable_text
#include <iostream>
#include <string>
using namespace std;

int main() {
    string s;
    int count = 0;

    cout << "Nh���p 1 x��u k�� t���: ";
    cin >> s;

    for (int i = 0; i < s.length(); i++) {
        if (s[i] >= 'A' && s[i] <= 'Z') { // vd s = aBc, th�� s[0] = a, s[1] = B, s[2] = c. If ����� x��c �����nh trong s c�� nh���ng k�� t��� vi���t hoa n��o
            
            count++;
        }
    }

    cout << "s��� k�� t��� vi���t hoa: " << count << endl;

    return 0;
}

# data[].attributes.attachment_link.readable_text
#include <iostream>
using namespace std;
int main () {
    int n; 
    double sum = 0.0
    ;
    cin>>n;
    for(int i=1; i<=n; i++){
        sum+=1.0/i;
    }
    cout<<"t���ng:"<<sum;
    return 0;
}

# data[].attributes.attachment_link.readable_text
/******************************************************************************

Welcome to GDB Online.
  GDB online is an online compiler and debugger tool for C, C++, Python, PHP, Ruby, 
  C#, OCaml, VB, Perl, Swift, Prolog, Javascript, Pascal, COBOL, HTML, CSS, JS
  Code, Compile, Run and Debug online from anywhere in world.

*******************************************************************************/
#include <iostream>
#include <string>
using namespace std;
int main()
{
    string s ; 
    cout<<"nh���p m���t x��u k�� t���:";
    cin>> s ;
    int count=0;
    for(int i = 0; i<s.length();i++){
        if(s[i]>='A'&& s[i]<='Z'){
            count++;
        }
    }
    cout<<"s��� k�� t��� vi���t hoa:"<<count;
    return 0;
}

# data[].attributes.body
Câu 1: Kiểm tra số nguyên tố (4 điểm)

Tên tệp chương trình: CAU1.*

Nhập một số nguyên dương x, kiểm tra xem x có phải là số nguyên tố hay không?

Số nguyên tố là một số nguyên không âm chỉ có 2 ước là 1 và chính nó. Ví dụ:

Các số nguyên tố nhỏ hơn 100 được liệt kê như sau:
2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97.

Ví dụ 1:

INPUT:5

OUTPUT: 5 là số nguyên tố

Giải thích: Vì 5 chỉ có 2 ước số là 1 và 5.

Ví dụ 2:

INPUT: 12

OUTPUT: 12 không phải là số nguyên tố

Giải thích: Vì 12 có các ước số là 1, 2, 3, 4, 6 và 12 (nhiều hơn 2 ước) nên 12 không phải là số nguyên tố.

Câu 2: Tổng các tích của số tự nhiên liền kề(4 điểm)

Tên tệp chương trình: CAU2.*

Nhập một số nguyên dương n. Tính tổng S = 1.2 + 2.3 + 3.4 + 4.5 + … + n(n + 1).

Ví dụ:

INPUT: 5

OUTPUT: S=70

Giải thích: Sử dụng vòng lặp for (int i=1;i<=n;i++)

Tong=1.2+2.3+3.4+4.5+5.6=70

Câu 3: Các số chia hết cho 3 và 5 (4 điểm)

Tên tệp chương trình: CAU3.*

Nhập một dãy các số nguyên gồm n số. In ra màn hình các số chia hết cho 3 và 5.

Ví dụ:

INPUT:

Nhập n: 5

Nhập số thứ 1: 4

Nhập số thứ 2: 9

Nhập số thứ 3: 15

Nhập số thứ 4: 30

Nhập số thứ 5: 12

OUTPUT: Các số chia hết cho 3 và 5 là: 15 30

Giải thích: Khi nhập n=5 ta có vòng lặp Nhập số thứ i được thực hiện 5 lần với các giá trị lần lượt là 4, 9, 15, 30, 12. Kết quả in ra:

Các số chia hết cho 3 và 5 là: 15 30

(Vì chỉ có 15 và 30 cùng chia hết cho 3 và 5)

Câu 4: Số kí tự chữ hoa trong xâu (4 điểm)

Tên tệp chương trình: CAU4.*

Nhập một xâu kí tự s. Hãy đổi tất cả các kí tự chữ thường trong xâu s thành chữ in hoa.

Ví dụ:

INPUT: Abcd20Ghi2jKl5mn

OUTPUT: Chuyển chữ in hoa là: ABCD20GHI2JKL5MN

Giải thích: Trong xâu s có các kí tự số là A, K vậy có 2 kí tự là chữ hoa.

Câu 5: Đọc số (4 điểm)

Tên tệp chương trình: CAU5.*

Nhập vào một số nguyên có 3 chữ số, hãy in ra cách đọc của nó.

Ví dụ:

INPPUT: 135

OUTPUT: Một trăm ba mươi lăm

Giải thích: khi nhập n=135, ta sử dụng tách số n thành 3 số a (hàng trăm), b (hàng chục) và c (hàng đơn vị sau đó dùng switch .. case để ghép vào biến docso)

# data[].attributes.attachment_link.readable_text
#include <iostream>
using namespace std;
int main ()
{
  int n, sum=0;//sum r���ng
  cin>> n;
  for(int i=1; i<=n; i++){
      sum+= i*(i+1);
  }
  cout<<"S="<<sum;
  return 0 ;
}

# data[].attributes.attachment_link.readable_text
#include <iostream>
using namespace std;
#include <string>
int main ()
{
    string s;
    cout<<"nh���p m���t x��u k�� t���: ";
    cin>>s;
    for(int i=0; i< s.length(); i++){
        if(s[i]>='a'&& s[i]<='z')
        s[i]-=32;
    }
    cout<<"chuy���n ch��� in hoa:"<<s;
    return 0;
}

# data[].attributes.body
Câu 1: Kiểm tra số Amstrong (4 điểm)

Tên tệp chương trình: CAU1.*

Nhập một số nguyên dương x, kiểm tra xem x có phải là số Armstrong hay không? (Số Armstrong có ba chữ số là một số nguyên sao cho tổng lập phương các chữ số của nó bằng chính nó). Ví dụ, 371 là số Armstrong vì 3 ^ 3 + 7 ^ 3 + 1 ^ 3 = 371 Ví dụ:

Ví dụ 1:

INPUT:153

OUTPUT: 153 là số Armstrong

Giải thích: Vì các chữ số của số 153 là 1, 5 và 3. Mà 1³+5³+3³=1+125+27=153

Ví dụ 2:

INPUT: 129

OUTPUT: 129 không phải là số Armstrong

Giải thích: Vì 1³ + 2³ + 9³=1+8+729=738

Câu 2: Tổng các tích của số tự nhiên liền kề(4 điểm)

Tên tệp chương trình: CAU2.*

Nhập một số nguyên dương n. Tính tổng S =1/2.3+2/3.4+3/4.5+...+n/n.(n+1)

Ví dụ:

INPUT: 5

OUTPUT: S=0.735714286

Giải thích: Sử dụng vòng lặp for (int i=1;i<=n;i++)

Tong=1.2+2.3+3.4+4.5+5.6=0.735714286

Câu 3: Số lớn nhất và số nhỏ nhất(4 điểm)

Tên tệp chương trình: CAU3.*

Nhập một dãy các số nguyên gồm n số. In ra màn hình giá trị số lớn nhất và giá trị số nhỏ nhất trong dãy.

Ví dụ:

INPUT:

Nhập n: 5

Nhập số thứ 1: 4

Nhập số thứ 2: 9

Nhập số thứ 3: 15

Nhập số thứ 4: 30

Nhập số thứ 5: 12

OUTPUT: Số lớn nhất là: 30

Số nhỏ nhất là: 4

Giải thích: Khi nhập n=5 ta có vòng lặp Nhập số thứ i được thực hiện 5 lần với các giá trị lần lượt là 4, 9, 15, 30, 12. Ta sử dụng 2 biến min, max gán cho giá trị a[0] sau đó chạy for để so sánh với tất cả các giá trị còn lại)

Câu 4: Số kí tự chữ hoa trong xâu (4 điểm)

Tên tệp chương trình: CAU4.*

Nhập một xâu kí tự s là một họ tên (Bao gồm các chữ cái và khoảng trắng). Hãy chuẩn hóa họ tên thành In hoa đầu mỗi từ.

Ví dụ:

INPUT: ngUyen hoNg daO

OUTPUT: Chuẩn hóa: Nguyen Hong Dao

Giải thích: Hãy đổi tất cả các ký tự thành chữ thường, sau đó đổi ký tự i đầu tên thành chữ In hoa rồi tiếp tục vét cạn từ i đến hết để đổi ký tự chữ đầu từ thành chữ In.

Câu 5: Định đề Bertrand (4 điểm)

Tên tệp chương trình: CAU5.*

Định đề Bertrand phát biểu rằng với bất kỳ số nguyên 𝑛, luôn tồn tại ít nhất một số nguyên tố P sao cho 𝑛 + 1 ≤ 𝑝 ≤ 2𝑛. Nhập số 𝑛, in ra các số nguyên tố thuộc đoạn [𝑛 + 1; 2𝑛].

Ví dụ:

INPPUT: 10

OUTPUT: 11 13 17 19

Giải thích: Sử dụng for i chạy từ n+1 đến 2n để kiểm tra số i nào là số nguyên tố thì in ra.

# data[].attributes.body
Câu 1: Số đảo (4 điểm)

Tên tệp chương trình: CAU1.*

Viết chương trình nhập vào một số nguyên dương 𝑛 (𝑛 ≤ 1015) .
Hãy in ra các yêu cầu sau:
• Số chữ số của 𝑛,
• Tổng các chữ số của 𝑛.

• Số đảo ngược của số n
Ví dụ 1:

INPUT:123

OUTPUT: Số chữ số: 3

Tổng các chữ số: 6

Số đảo ngược: 321

Giải thích: Sử dụng vòng lặp While để lấy từng chữ số của số n cho đến 0, sau mỗi lần lấy ta thực hiện việc đếm, tính tổng và cộng vào sodaonguoc.

Câu 2: Tổng các tích của số tự nhiên liền kề(4 điểm)

Tên tệp chương trình: CAU2.*

Nhập một số nguyên dương n. Tính tổng 𝑆 = 1⁴ + 2⁴ + ⋯ + 𝑛⁴
Ví dụ:

INPUT: 5

OUTPUT: S=979

Giải thích: Sử dụng vòng lặp for (int i=1;i<=n;i++), dựa vào biểu thức cuối cùng là n⁴ ta chuyển thành i*i*i*i cộng dồn vào S)

Câu 3: Sắp xếp(4 điểm)

Tên tệp chương trình: CAU3.*

Nhập một dãy các số nguyên gồm n số. In ra màn hình dãy số sắp xếp theo thứ tự tăng dần.

Ví dụ:

INPUT:

Nhập n: 5

Nhập số thứ 1: 4

Nhập số thứ 2: 9

Nhập số thứ 3: 15

Nhập số thứ 4: 30

Nhập số thứ 5: 12

OUTPUT: 4 9 12 15 30

Giải thích: Khi nhập n=5 ta có vòng lặp Nhập số thứ i được thực hiện 5 lần với các giá trị lần lượt là 4, 9, 15, 30, 12. Ta sử dụng 2 vòng lặp for để hoán đổi giá trị nhỏ lên trên (nổi bọt)

Câu 4: Xóa khoảng trắng thừa trong xâu (4 điểm)

Tên tệp chương trình: CAU4.*

Nhập một xâu kí tự s là một họ tên (Bao gồm các chữ cái và khoảng trắng). Hãy chuẩn hóa họ tên không còn khoảng trắng thừa và đổi thành In hoa đầu mỗi từ.

Ví dụ:

INPUT: ngUyen hoNg daO

OUTPUT: Chuẩn hóa: Nguyen Hong Dao

Giải thích: Hãy xóa tất cả khoảng trắng đầu xâu S bằng While, tiếp theo xóa khoảng trắng i khi ký tự i+1 là khoảng trắng. Đổi tất cả các ký tự thành chữ thường, sau đó đổi ký tự đầu tên thành chữ In hoa rồi tiếp tục vét cạn từ ký tự thứ 2 đến hết để đổi ký tự chữ đầu từ thành chữ In.

Câu 5: Định đề Bertrand (4 điểm)

Tên tệp chương trình: CAU5.*

Cho một xâu 𝑆 có độ dài không quá 255 ký tự và có chứa ký tự số.
Hãy sắp xếp các ký tự số trong xâu 𝑆 theo thứ tự không giảm nhưng vẫn giữ nguyên vị trí ban đầu của các ký tự khác (nếu có) ở trong xâu.

Ví dụ:

INPPUT: Acb27h1h92gg

OUTPUT: Acb12h2h79gg

Giải thích: Sử dụng 2 for i, j chạy như sắp xếp dãy sau đó in ra.

# data[].attributes.attachment_link.readable_text
#include <iostream>
#include <string>
using namespace std;
int main()
{
     int n;
     cout<<"Nh���p s��� nguy��n c�� 3 ch��� s���: "; 
     cin>>n;
     int a, b, c ;
      c= n%10; 
      b= (n/10)%10;
      a=(n/100);
     string docso = " ";
     switch(a){
        case 1: docso += "Mot tram "; break; 
        case 2: docso += "Hai tram "; break;
        case 3: docso += "Ba tram "; break;
        case 4: docso += "Bon tram "; break;
        case 5: docso += "Nam tram "; break;
        case 6: docso += "Sau tram "; break;
        case 7: docso += "Bay tram "; break;
        case 8: docso += "Tam tram "; break;
        case 9: docso += "Chin tram "; break;
 }
    switch(b){
        case 1: docso += "muoi "; break; 
        case 2: docso += "hai muoi "; break;
        case 3: docso += "ba muoi "; break;
        case 4: docso += "bon muoi "; break;
        case 5: docso += "nam muoi "; break;
        case 6: docso += "sau muoi "; break;
        case 7: docso += "bay muoi "; break;
        case 8: docso += "tam muoi "; break;
        case 9: docso += "chin muoi "; break;
    }
    switch(c){
        case 1: docso += "mot"; break;
        case 2: docso += "hai"; break;
        case 3: docso += "ba"; break;
        case 4: docso += "bon"; break;
        case 5: docso += "lam"; break;
        case 6: docso += "sau"; break;
        case 7: docso += "bay"; break;
        case 8: docso += "tam"; break;
        case 9: docso += "chin"; break;
    }
    cout<<"cach doc:"<<docso<<endl;
    return 0;
}

# data[].attributes.attachment_link.readable_text
#include <iostream>
#include <cmath>
using namespace std;

int main() {
    int n; 
    cout<<"nh���p s��� nguy��n d����ng c�� 3 ch��� s���:";
    cin >> n;
    int a, b, c;
    a = n / 100;
    b = (n / 10) % 10;
    c = n % 10;
    int sum= pow(a, 3) + pow(b, 3) + pow(c, 3) ;
    if(sum==n)
    cout<<n<< " la so Armstrong";
    else 
    cout<<n<< " khong la so Armstrong";
    cout<<a<<"^3+"<<b<<"^3+"<<c<<"^3+"<<sum<<endl; 
    return 0;
}

# data[].attributes.attachment_link.readable_text
#include <iostream>
#include <cmath>
using namespace std;

int main() {
    int n; 
    cin>>n;
    double S = 0;
    for(int i = 1; i<=n; i++){
        S += (double)i / (i+1);
    }
    cout<<"Tong S = "<<S;
    return 0;
}

# data[].attributes.attachment_link.readable_text
#include <iostream>
#include <string>
using namespace std;

string docChuSo(int n) {
    switch(n) {
        case 0: return "kh��ng";
        case 1: return "m���t";
        case 2: return "hai";
        case 3: return "ba";
        case 4: return "b���n";
        case 5: return "n��m";
        case 6: return "s��u";
        case 7: return "b���y";
        case 8: return "t��m";
        case 9: return "ch��n";
        default: return "";
    }
}

int main() {
    // 1
    int so;
    cout << "Nh���p m���t s��� nguy��n d����ng: ";
    cin >> so;
    if (so < 2) cout << so << " kh��ng ph���i l�� s��� nguy��n t���.\n";
    else {
        bool laNguyenTo = true;
        for (int i = 2; i * i <= so; i++) {
            if (so % i == 0) {
                laNguyenTo = false;
                break;
            }
        }
        if (laNguyenTo) cout << so << " l�� s��� nguy��n t���.\n";
        else cout << so << " kh��ng ph���i l�� s��� nguy��n t���.\n";
    }

    // 2
    int n;
    cout << "Nh���p m���t s��� nguy��n d����ng n: ";
    cin >> n;
    long long tong = 0;
    for (int i = 1; i <= n; i++) {
        tong += i * (i + 1);
    }
    cout << "T���ng S = " << tong << ".\n";

    // 3
    int m, x;
    cout << "Nh���p s��� l�����ng s��� nguy��n: ";
    cin >> m;
    cout << "Nh���p c��c s���:\n";
    cout << "C��c s��� chia h���t cho 3 v�� 5 l��: ";
    for (int i = 1; i <= m; i++) {
        cout << "Nh���p s��� th��� " << i << ": ";
        cin >> x;
        if (x % 3 == 0 && x % 5 == 0) cout << x << " ";
    }
    cout << ".\n";

    // 4
    cin.ignore();
    string xau;
    cout << "Nh���p x��u k�� t���: ";
    getline(cin, xau);
    for (char &c : xau) {
        if (c >= 'a' && c <= 'z') c = c - 'a' + 'A';
    }
    cout << "X��u chuy���n sang ch��� in hoa: " << xau << ".\n";

    // 5
    cout << "\n5. �����c s��� c�� 3 ch��� s���.\n";
    int so3chu;
    cout << "Nh���p m���t s��� nguy��n c�� 3 ch��� s���: ";
    cin >> so3chu;

    if (so3chu < 100 || so3chu > 999) {
        cout << "Vui l��ng nh���p s��� c�� ����ng 3 ch��� s���!\n";
        return 1;
    }

    int tram = so3chu / 100;
    int chuc = (so3chu / 10) % 10;
    int donVi = so3chu % 10;
    string kq = "";

    kq += docChuSo(tram) + " tr��m ";
    if (chuc == 0 && donVi != 0) kq += "l��� ";
    else if (chuc == 1) kq += "m�����i ";
    else if (chuc > 1) kq += docChuSo(chuc) + " m����i ";

    if (donVi != 0) {
        if (chuc > 0 && donVi == 5) kq += "l��m";
        else kq += docChuSo(donVi);
    }

    cout << kq << ".\n";

    return 0;
}

# data[].attributes.body
#include <iostream>

using namespace std;

int main() {

int x;

cout <<"nhập số 1 nguyên dương: ";

cin >> x;

int a, b, c;

a = x / 100;

b =( x % 100 )/10;

c = x % 10;

if (a*a*a+b*b*b+c*c*c==x)

cout<<x<<"là số amstrong: ";

else

cout<<x<<"không là số amstrong: ";

return 0;

}

# data[].attributes.body
#include <iostream>

using namespace std;

int main() {

int n;

cout << "Nhập số nguyên dương:";

cin >> n;

int a,b,c;

a = n / 100;

b = (n % 100) / 10;

c = n % 10;

if(a*a*a+b*b*b+c*c*c == n)

cout << "là số armstrong";

else

cout << "không là số armstrong";

return 0;

}

# data[].attributes.body
#include <iostream>

using namespace std;

int main() {

int x;

cout << "Nhập số nguyên dương: ";

cin >> x;

int a = x / 100;

int b = (x % 100) / 10;

int c = x % 10;

if (a*a*a + b*b*b + c*c*c == x)

cout << x << " là số armstrong";

else

cout << x << " không là số armstrong";

return 0;

}

# data[].attributes.attachment_link.readable_text
#include <iostream>
using namespace std;
int main(){
    int n;
    cout << "nhap n: "; cin >> n;
    int a,b,c;
        a=n/100;
        b=(n%100)/10;
        c=n%10;
    if (a*a*a + b*b*b + c*c*c==n){
        cout << n << " la so armstrong";
        
    }else{
        cout << n << " kphai so armstrong";
    return 0;
}
}

# data[].attributes.attachment_link.readable_text
#include <iostream>
using namespace std;
int main() {
    int n;
    cout<<"nh���p 1 s��� nguy��n n: ";
    cin >> n;
    int sum = 0;
    for (int i = 1; i <= n; i++)
    sum += i/(i*(i*1));
    return 0;
}

# data[].attributes.body
#include <iostream>

using namespace std;

int main() {

int sum = 0;

int n;

cout << "Nhập sô nguyêna: ";

cin >> n;

for (int i = 1; i <= n; i++)

sum += i / i*(i + 1);

cout << "S = " << sum;

return 0;

}

# data[].attributes.body
#include <iostream>

using namespace std;

int main() {

int n;

cout <<"Nhập số nguyên dương n";

cin >> n;

int sum=0;

for(int i=1; i<=n; i++){

sum+=i/ i*(i+1);

}

cout <<"S="<<sum;

return 0;

}

# data[].attributes.body
#include <iostream>

using namespace std;

int main() {

int sum = 0;

int n;

cout << "Nhập sô nguyêna: ";

cin >> n;

for (int i = 1; i <= n; i++)

sum += i / i*(i + 1);

cout << "S = " << sum;

return 0;

}

# data[].attributes.attachment_link.readable_text
#include <iostream>
#include <string>
using namespace std;
int main ()
{
    string s;
    cout<<"nh���p m���t x��u k�� t���:";
   getline(cin, s);  // �����c to��n b��� chu���i, bao g���m kho���ng tr���ng
    for(int i= 0; i< s.length (); i++){
        if(s[i]>='A'&& s[i]<='Z')
        s[i]+=32;
    }
    cout<<" chuy���n ch��� in th�����ng:"<<s;
    for(int i = 0; i< s.length (); i++){
        if(s[i]>='a'&& s[i]<='z'&& s[i-1]==' ')
        s[i]-=32;
    }
    cout<<"chuy���n ch��� in hoa:"<<s;
    return 0;
}

# data[].attributes.body
#include <iostream>

using namespace std;

int main() {

int n;

cout << "Nhập n: ";

cin >> n;

int a[n];

for (int i = 0; i < n; i++) {

cout << "Nhập số thứ " << i + 1 << ": ";

cin >> a[i];

}

int min = a[0], max = a[0];

for (int i = 1; i < n; i++) {

if (a[i] > max) {

max = a[i];

}

if (a[i] < min) {

min = a[i];

}

}

cout << "Số lớn nhất là: " << max << endl;

cout << "Số nhỏ nhất là: " << min << endl;

return 0;

}

# data[].attributes.body
#include <iostream>

using namespace std;

int main() {

int n;

cout << "Nhập n: ";

cin >> n;

int a[n];

for (int i = 0; i < n; i++) {

cout << "Nhập số thứ " << i + 1 << ": ";

cin >> a[i];

}

int min = a[0], max = a[0];

for (int i = 1; i < n; i++) {

if (a[i] > max) {

max = a[i];

}

if (a[i] < min) {

min = a[i];

}

}

cout << "Số lớn nhất là: " << max << endl;

cout << "Số nhỏ nhất là: " << min << endl;

return 0;

}

# data[].attributes.attachment_link.readable_text
#include <iostream>
using namespace std;
int main() {
    int n;
    cout <<"nh���p m���t s��� nguy��n n: ";
    cin>>n;
    int dem = 0;
    int sodao = 0;
    int tong = 0;
    while ( n > 0 ) {
    int du = 0;
    du = n % 10;
    dem++;
    tong+= du;
    sodao = sodao * 10 + du;
    n/=10;
    }
    cout << sodao << endl;
    cout << tong << endl;
    cout << dem << endl;
    cout << n;
    return 0; 
}

# data[].attributes.attachment_link.readable_text
#include <iostream>
using namespace std;
int main(){
    int dem=0;
    int dao=0;
    int tong=0;
    int n;
    cout << "nhap 1 so nguyen n: ";
    cin >> n;
    while(n>0){
        int du=0;
        du=n%10;
        dem++;
        tong+=du;
        dao=dao*10+du;
        n/=10;
    }
    cout << dem << endl;
    cout << tong << endl;
    cout << dao << endl;
    cout << n;
    return 0;
}

# data[].attributes.attachment_link.readable_text
#include <iostream>
using namespace std;
int main() {
    int n;
    cout<<"Nh���p s��� nguy��n n: ";
    cin>>n;
    int dem= 0;
    int sodao=0;
    int tong=0;
    while(n>0){
        int du=0;
        du= n%10;
        dem ++;
        tong+=du;
        sodao=sodao*10+du;
        n/=10;
    }
    cout << "So chu so: " << dem << endl;
    cout << "Tong cac chu so: " << tong << endl;
    cout << "So dao nguoc: " << sodao << endl;

    return 0;
    
}

# data[].attributes.attachment_link.readable_text
#include <iostream>
using namespace std;
int main()
{
    int n; 
    cout<< " nhap so nguyen:";
    cin>> n; 
    int dem, sodao, tong=0;
    while(n>0){
        int du= 0; 
        du= n%10;
        dem++;
        tong += du;
        sodao= sodao * 10 + du;
        dem++;
        n= n/10;
    }
    cout<< "so chu so:"<<dem<<endl;
    cout<< "Tong cac chu so:"<<tong<<endl;
    cout<< "so dao nguoc:"<<sodao;
    return 0;
}

# data[].attributes.attachment_link.readable_text
#include <iostream>
using namespace std;
int main(){
    int n;
    cout<<"Nhap so nguyen : ";
    cin>>n;
    int dem = 0;
    int sodao = 0;
    int tong = 0;
    
    while(n>0){
        int du = 0;
        du = n%10;
        dem ++;
        tong += du;
        sodao = sodao*10+du;
        n /= 10;
        
    }
    cout<<"So dao: "<<sodao;
    cout<<" ";
    cout<<"Tong: "<<tong;
    cout<<" ";
    cout<<"dem: "<<dem;
    cout<<" ";
    return 0;
}

# data[].attributes.attachment_link.readable_text
#include <iostream>
using namespace std;
int main(){
    int n;
    cout<<"Nhap so nguyen: ";
    cin>>n;
    int dem=0;
    int sodao=0;
    int tong=0;
    while (n>0){
        int du=0;
        du = n%10;
        dem ++;
        tong+=du;
        sodao+=sodao*10+du;
        n/=10;}
    cout<<"So dao: "<<sodao;
    cout<<"  ";
    cout<<"Tong: "<<tong;
    cout<<"   ";
    cout<<"So chu so: "<< dem;
    
return 0;    
}

# data[].attributes.attachment_link.readable_text
#include <iostream>
using namespace std;
int  main(){
    int n; 
    cout << "Nhap so nguyen:";
    cin >> n;
    int dem = 0;
    int sodao = 0;
    int tong = 0;
    while (n>0){
        int du = 0;
        du = n%10;
        dem ++;
        tong += du;
        sodao = sodao*10+du;
        n /= 10;
    }
    cout<<"So dao: "<<sodao;
    cout<<" ";
    cout<<"Tong: "<<tong;
    cout<<" ";
    cout<<"dem: "<<dem;
    cout<<" ";
    return 0;
}

# data[].attributes.body
#include <iostream>

using namespace std;

int main(){

int n;

cout<<"Nhap so nguyen : ";

cin>>n;

int dem = 0;

int sodao = 0;

int tong = 0;

while(n>0){

int du = 0;

du = n%10;

dem ++;

tong += du;

sodao = sodao*10+du;

n /= 10;

}

cout<<"So dao: "<<sodao;

cout<<" ";

cout<<"Tong: "<<tong;

cout<<" ";

cout<<"dem: "<<dem;

cout<<" ";

return 0;

}

# data[].attributes.body
#include <iostream>

using namespace std;

int main() {

int n;

cout <<"Nhập số nguyên: ";

cin >>n;

int dem=0;

int tong=0;

int sodao=0;

while(n>0) {

int du=0;

du = n%10;

dem ++;

tong += du;

sodao = sodao*10+ du;

n /=10;

}

cout <<"các chữ số là "<<dem<< endl;

cout <<"tổng chữ số là "<<tong<< endl;

cout <<"số đảo ngược là " <<sodao<< endl;

return 0;

}

# data[].attributes.attachment_link.readable_text
#include <iostream>
using namespace std;
int main() {
    int n;
    cout<< "Nh���p s��� nguy��n: ";
    cin>>n;
    int s=0;
    for(int i=0;i<=n;i++) {
        s+=i*i*i*i;
        cout<<" S="<<s;
    }
    return 0;
    
}

# data[].attributes.body
#include <iostream>

using namespace std;

int main() {

int n;

cout <<"Nhập số nguyên: ";

cin >>n;

int S=0;

for (int i=0;i<=n;i++)

S +=i*i*i*i;

cout <<"S= " << S;

return 0;

}

# data[].attributes.attachment_link.readable_text
#include <iostream>
using namespace std;
int main() {
    int n,i;
    cout <<"nh���p 1 s��� nguy��n n: ";
    cin >> n;
    int s = 0;
    for (int i = 1; i<=n; i++) {
        s += i*i*i*i;
        cout << "Tong = " << s << endl;
    }
    return 0;    
}

# data[].attributes.attachment_link.readable_text
#include <iostream>
using namespace std;
int main(){
    int n;
    cout<<"Nhap so nguyen n ";
    cin >> n;
    int S = 0;
    for (int i = 1; i<=n;i ++){
        S += i*i*i*i;
    }
    cout<<"       ";
    cout<<"S = "<<S;
    return 0;
}

# data[].attributes.body
#include <iostream>

using namespace std;

int main() {

int n;

cout <<"Nhập số nguyên: ";

cin >>n;

int S=0;

for (int i=0;i<=n;i++)

S +=i*i*i*i;

cout <<"S= " << S;

return 0;

}

# data[].attributes.attachment_link.readable_text
#include <iostream>
using namespace std;
int main(){
    int n;
    cout<<"Nhap so nguyen n: ";
    cin>>n;
    int S = 0;
    for (int i=1; i<=n; i++){
        S+=i*i*i*i;
    }
    cout<<"S= "<<S;
    
    return 0;
    }

# data[].attributes.body
#include <iostream>

using namespace std;

int main() {

int n;

int dem = 0, tong = 0, sodao = 0, du;

cout << "Nhập n: ";

cin >> n;

while (n > 0) {

du = n % 10;

dem++;

tong += du;

sodao = sodao * 10 + du;

n /= 10;

}

cout << "Số chữ số: " << dem << endl;

cout << "Tổng các chữ số: " << tong << endl;

cout << "Số đảo ngược: " << sodao << endl;

return 0;

}

# data[].attributes.body
#include <iostream>

using namespace std;

int main () {

int n, s = 0;

cout << "Nhập n: ";

cin >> n;

for (int i = 0; i <= n; i++)

s += i*i*i*i;

cout << s;

return 0;

}

# data[].attributes.attachment_link.readable_text
#include <iostream>
using namespace std;
int  main(){
    int n; 
    cout << "Nhap so nguyen:";
    cin >> n;
    int S = 0;
    for(int i = 1; i<=n;i ++){
        S += i*i*i*i;
    }
    cout <<"S ="<<S;
    return 0;
}

# data[].attributes.body
#include <iostream>

using namespace std;

int main() {

int n;

cout << "Nhập n: ";

cin >> n;

int a[n];

for (int i = 0; i < n; i++) {

cout << "Nhập số thứ " << i + 1 << ": ";

cin >> a[i];

}

for (int i = 0; i < n - 1; i++) {

for (int j = 0; j < n - 1 - i; j++) {

if (a[j] > a[j]) {

int tam = a[j];

a[j] = a[j];

a[j] = tam;

}

}

}

cout << " ";

for (int i = 0; i < n; i++) {

cout << a[i] << " ";

}

cout << endl;

return 0;

}

# data[].attributes.body
#include <iostream>

using namespace std;

int main() {

int tam=0;

int n;

cout <<"Nhập số nguyên: ";

cin >>n;

int a[n];

for (int i=0;i<n;i++) {

cout <<"Nhập số thứ" << i+1<<":";

cin >>a[i];

}

for (int i=0; i<n-1;i++){

for (int j=i+1; j<n;j++) {

if (a[i]>a[j]){

tam=a[i];

a[i]=a[j];

a[j]=tam;

}

}

}

cout <<"Dãy sắp xếp";

for (int i=0;i<n;i++){

cout<<a[i]<<" ";

}

return 0;

}

# data[].attributes.body
#include <iostream>

using namespace std;

int main() {

int n;

int a[n];

cout <<"nhap so nguyen n: ";

cin >>n;

for (int i = 0; i < n; i++) {

cout <<"nhập số thứ "<<i+1<<":";

cin >> a[i];

}

int tam = 0;

for (int i = 0; i<n-1; i++){

for (int j = i+1; j < n; j++) {

if (a[i] > a[j]) {

tam = a[i];

a[i] = a[j];

a[j] = tam;

}

}

}

cout <<"day sap xep: ";

for (int i = 0; i < n; i++) {

cout <<a[i]<<"";

}

return 0;

}

# data[].attributes.body
#include <iostream>

using namespace std;

int main() {

int n;

cout << "Nhập n: ";

cin >> n;

int a[n];

for (int i = 0; i < n; i++) {

cout << "Nhập số thứ " << i + 1 << ": ";

cin >> a[i];

}

for (int i = 0; i < n - 1; i++) {

for (int j = 0; j < n - 1 - i; j++) {

if (a[j] > a[j]) {

int tam = a[j];

a[j] = a[j];

a[j] = tam;

}

}

}

cout << " ";

for (int i = 0; i < n; i++) {

cout << a[i] << " ";

}

cout << endl;

return 0;

}

# data[].attributes.attachment_link.readable_text
#include <iostream>

using namespace std;

int main()
{
    int n;
    cin>>n;
    if(n%2==0)
        cout<<"Chan.";
    else
        cout<<"Le.";

    return 0;
}

# data[].attributes.attachment_link.readable_text
#include <iostream>
using namespace std;

int main()
{
    int n;
    cout<<"Nhap mot day so nguyen: ";
    cin>>n;
    int a[n];
    for( int i = 0; i<n; i++){
        cout<<"Nhap so thu "<<i+1<<": ";
        cin>>a[i];
    }
    cout<<"Cac so khong am: ";
    for( int i = 0; i < n;i++){
        if(a[i]>=0){
            cout<<a[i]<<" ";
        }
    }
    return 0;
}

# data[].attributes.attachment_link.readable_text
#include <iostream>
using namespace std;


int main()
{
    double a,b,c;//V�� c��c c���nh c�� th��� l�� s��� th���p ph��n n��n d��ng double thay v�� int
    cout<<"Nhap do dai ba canh cua tam giac: ";
    cin>>a>>b>>c;
    if(a + b > c && b + c > a&& a + c > b ){
        if (a == b && b == c ){
            cout<<"La tam giac deu.";
        }
        else if(a*a + b*b == c*c||b*b + c*c == a*a||a*a + c*c == b*b){
            cout<<"La tam giac vuong.";
        }
        else if(a == b || b == c || a == c){
            cout<<"La tam giac can.";
        }
        else{
            cout<<"La tam giac thuong.";
        }
    }
    else{
        cout<<"Khong phai tam giac.";
    }

    return 0;
}
