TT | Phép toán | Kí hiệ | Ví dụ | Kết quả |
1 | Cộng | + | 9+4 | 13 |
2 | Trừ | - | 9-4 | 5 |
3 | Nhân | * | 9*4 | 36 |
4 | Chia | / | 9/4 | 2 |
9.0/4 | 2.25 | |||
9/4.0 | 2.25 | |||
5 | Chia lấy phần dư | % | 9%4 | 1 |
6 | Tăng 1 đơn vị | ++ | a++ | Giống a=a+ |
7 | Giảm 1 đpn vị | -- | a-- | Giống a=a- |
#include <iostream>using namespace std;int main(){ cout << "9+4 = "<<9+4 << endl; cout << "9-4 = "<<9-4 << endl; cout << "9*4 = "<<9*4 << endl; cout << "9/4 = "<<9/4 << endl; //Chi lay phan nguyen do ca hai so deu nguyen cout << "9/4 = "<<9.0/4 << endl; //Lay ca phan thap phan neu mot trong hai so la so thap phan cout << "9%4 = "<<9%4 << endl; return 0;}
kết quả:n>=0 là đô rộng danh cho dữ liệu xuất gí trị nguyên.
căn lề: Trái hoặc phải có giá trị
left hoặc right#include <iostream>#include <iomanip>using namespace std;int main(){ cout <<setw(10)<<left<< "9+4 = "<<9+4 << endl; cout <<setw(10)<<right<< "9-4 = "<<9-4 << endl; cout <<setw(10)<<left<< "9*4 = "<<9*4 << endl; cout <<setw(10)<<right<< "9/4 = "<<9/4 << endl; //Chi lay phan nguyen do ca hai so deu nguyen cout <<setw(10)<<left<< "9/4 = "<<9.0/4 << endl; //Lay ca phan thap phan neu mot trong hai so la so thap phan cout <<setw(10)<<left<<setprecision(5)<< fixed<< "9/4 = "<<9.0/4 << endl; cout <<setprecision(1)<< fixed<< "9/4 = "<<9.0/4 << endl; cout <<setw(10)<<right<< "9%4 = "<<9%4 << endl; return 0;}
Kết quả:TT | Kiểu dữ liệu | Mô tả | Ghi chú | ||
1 | int | Số nguyên | |||
2 | float | Số thực | |||
3 | char | Kí tự | |||
4 | string | Xâu kí tự | |||
5 | bool | Logic | |||
6 | long | Số nguyên | |||
7 | short | Số nguyên | |||
8 | double | Số thực | |||
9 |
#include <iostream>#include <iomanip>using namespace std;const float pi = 3.14;int main(){ float ban_kinh = 0, dien_tich,chu_vi=0;; string tb_dien_tich = "Dien tich hinh tron la: "; string tb_chu_vi = "Chu vi hinh tron la: "; cout << "Nhap ban kinh = "; cin>>ban_kinh; dien_tich = pi*ban_kinh*ban_kinh; chu_vi = 2*pi*ban_kinh; cout << tb_dien_tich<<dien_tich<<endl; cout << tb_chu_vi<<chu_vi<<endl; cout <<setw(30)<<right<<setprecision(5)<<fixed<< tb_dien_tich<<dien_tich<<endl; cout <<setprecision(5)<<fixed<< tb_chu_vi<<chu_vi<<endl; return 0;}
-Kết quả:Phép so sánh | Kí hiệu (toán tử so sánh) | Ví dụ | Kết qủa |
Bằng | == | a==b | false |
Khác | != | a!= | true |
Lớn hơn | > | a>b | false |
Nhỏ hơn | < | a<b | true |
Lớn hơn hoặc bằng | >= | a>= | false |
Nhỏ hơn hoặc bằng | <= | a<=b | true |
Phép Logic | Kí kiệu (toán tử logic) | Ví dụ | Kết quả |
AND (Và) | && | A&&B | false |
OR (Hoặc) | || | A||B | true |
NOT (Phủ định) | ! | !A | false |
!B | true |
#include <iostream>using namespace std;int main(){ int a=0; int b=0; cout<<"Nhap a = "; cin>>a; cout<<"Nhap b = "; cin>>b; if((a>0)&&(b>0)) { cout<<"a va b deu lon hon 0"<<endl; } if((a>0)||(b>0)) { cout<<"a hoac b lon hon 0"<<endl; } if(!(a>0)) { cout<<"Xuat ra man hinh khi a nho hon 0"<<endl; } return 0;}
Câu lệnh điều kiện if#include <iostream>using namespace std;int main(){ int a=0, b=0, S=0; cout << "a = "; cin>>a; cout << "b = "; cin>>b; if(a>b) { cout<<"So a lon hon so b"; } return 0;}
Dạng đủ:#include <iostream>using namespace std;int main(){ int a=0, b=0, S=0; cout << "a = "; cin>>a; cout << "b = "; cin>>b; if(a>b) { cout<<"So a lon hon so b"; } else { cout<<"So a nho hon so b"; } return 0;}
Câu lệnh điều kiện switch ... case#include <iostream>using namespace std;int main(){ char dau; int a=0, b=0, S=0; cout << "a = "; cin>>a; cout << "b = "; cin>>b; cout<<"Nhap dau phep toan la: "; cin>>dau; switch (dau) { case '+': S= a + b; break; case '-': S= a - b; break; case '*': S= a * b; break; case '/': if (b == 0) { cout << "Phep chia cho 0!"; } if (b != 0) { S= a / b; } default: cout << "Phep tinh khong hop le!"; } cout<<"Ket qua phep tinh la: "<<S; return 0;}
Câu lệnh điều kiện thay thế cặp if ..else#include <iostream>using namespace std;int main(){ int a=0, b=0, S=0; cout << "a = "; cin>>a; cout << "b = "; cin>>b; S=(a>b?a-b:a+b); cout<<S<<endl; return 0;}
thay thê cặp lệnh if ...else sau:#include <iostream>using namespace std;int main(){ int a=0, b=0, S=0; cout << "a = "; cin>>a; cout << "b = "; cin>>b; if(a>b) { S=a-b; } else { S=a+b; } cout<<S<<endl; return 0;}
Câu lệnh lặp.#include <iostream>using namespace std;int main(){ int a=0; for(a = 1; a <= 15; a++) { cout << "Gia tri cua a la: " << a << endl; } return 0;}
Câu lệnh lặp while#include <iostream>using namespace std;int main(){ int a=0; while(a < 15) { a++; cout << "Gia tri cua a la: " << a << endl; } return 0;}
Câu lệnh lặp do while#include <iostream>using namespace std;int main(){ int a=0; do { a++; cout << "Gia tri cua a la: " << a << endl; } while(a<15);}
int array[4] = { 5, 8, 2, 7 };
Cách 2: Khởi tạo giá trị cho một số phần tử đầu mảng:int array[4] = { 5, 8 };
Cách 3: Khởi tạo giá trị 0 cho mọi phần tử của mảngint array[4] = { };
Cách 4: Tự động xác định số lượng phần tửint array[] = { 5, 8, 2, 7 };
Cách 5: Sử dụng khởi tạo đồng nhất trong C++11 (thực hành cách này)int array1[4] { 5, 8, 2, 7 }; // 5 8 2 7int array2[4] { 5, 8 }; // 5 8 0 0int array3[4] { }; // 0 0 0 0int array4[] { 5, 8, 2, 7 }; // 5 8 2 7
Nhập dữ liệu cho mảng 1 chiều#include <iostream>using namespace std;const int sopt=200;int main(){ int a[sopt]; int n=0, i=0; n = 5; //Nhap gia tri cho cac phan tu cuar mang cout<<"a[0] = "; cin>>a[0]; cout<<"a[1] = "; cin>>a[1]; cout<<"a[2] = "; cin>>a[2]; cout<<"a[3] = "; cin>>a[3]; cout<<"a[4] = "; cin>>a[4]; /*Xuat gia tri cac phan tu cua mang ra man hinh */ cout<<a[0]<<endl; cout<<a[3]<<endl; return 0;}
Ví dụ về khai báo, nhập, xuất giá trị các phần tử có trong mảng dùng vòng lặp.#include <iostream>using namespace std;const int sopt=200;int main(){ int a[sopt]; int n=0, i=0; /*Nhap so phan tu thuc co cua mang*/ cout<<"Nhap so phan tu cua mang, n = "; cin>>n; //Nhap gia tri cho cac phan tu cuar mang for(i=0; i<n; i++) { cout<<"a["<<i<<"] = "; cin>>a[i]; } /*Xuat gia tri cac phan tu cua mang ra man hinh */ for(i=0; i<n; i++) { cout<<a[i]<<endl; } return 0;}
Ví dụ về sử dụng mảng (nhập, xuất, xoa, thêm phần tử).#include <iostream>using namespace std;const int soptmax=50;void nhap(int a[], int n){ int i; for(i=0; i<n; i++) { cout<<"a["<<i<<"] = "; cin>>a[i]; }}void xuat(int a[], int n){ int i; for(i=0; i<n; i++) { cout<<"a["<<i<<"] = "<<a[i]<<endl; }}bool xoa(int a[],int &n, int vitri){ bool daxoa=false; if((vitri<0)||(vitri>n-1)) { cout<<"Vi tri "<<vitri<<" khong ton tai"<<endl; daxoa=false; } else { int i; for(i=vitri; i<n; i++) { a[i]=a[i+1]; } n--; daxoa=true; } return daxoa;}bool them(int a[],int &n, int vitri, int giatri){ bool dathem=false; if(n>=soptmax) { cout<<"Mang da day, khong them duoc nua "<<endl; dathem=false; } else { if((vitri<0)||(vitri>n)) { cout<<"Vi tri muon them phai nhap tu 0 den "<<n<<endl; dathem=false; } else { int i; for(i=n; i>vitri; i--) { a[i]=a[i-1]; } a[vitri]=giatri; n++; dathem=true; } } return dathem;}//Xoa cac phan tu trung lap dung whilevoid Xoatrung(int a[],int &N){ int i=0,j=0,k=0; for (i=0; i<N-1; i++) { j=i+1; while (j<N) { if (a[i]==a[j]) { //xoamotphantu(j, a,N); for (k=j; k<N-1; k++) { a[k]=a[k+1]; } N=N-1; } else { j=j+1; } } }}//Xoa cac phan tu trung lap dung forvoid RemoveDuplicates(int arr[], int n){ for(int i=0; i<n; i++) { for(int j=i+1; j<n;) { if(a[i]==a[j]) { for(int k=j; k<n; k++) { arr[k]=arr[k+1]; } n--; } else { j++; } } } for(int i=0; i<n; i++) { cout<<arr[i]<<" "; }}int main(){ int a[soptmax]; int i,n; cout << "Nhap so phan tu thuc co cua mang a la n = "; cin>>n; nhap(a,n); xuat(a,n); int vitri; cout<<"Nhap vi tri can xoa vitri = "; cin>>vitri; if(xoa(a, n, vitri)==true) { xuat(a,n); } cout<<"Nhap vi tri can them vitri = "; cin>>vitri; int giatri; cout<<"Nhap gia tri can them giatri = "; cin>>giatri; if(them(a,n, vitri, giatri)==true) { xuat(a,n); } return 0;}
#include <iostream>#include<algorithm>#include<functional> // std::greaterusing namespace std;long a[1000];long n;int main(){//Tự code nhập, xuất để xem kq sắp xếp sort(a, a+n); // sắp xếp mảng a tăng dần từ phần tử 0 đến phần tử n-1 sort(a, a+n, greater<int>()); // sắp xếp mảng a giảm dần từ p.tử 0 đến p.tử n-1 sort(a+1, a+1+n); // sắp xếp mảng a tăng dần từ phần tử 1 đến phần tử n }
* Tự code sắp xếp#include <iostream>using namespace std;void nhap(int a[], int n){ int i =0; for(i=0; i<n; i++) { cout<<"a["<<i<<"]= "; cin>>a[i]; }}void xuat(int a[], int n){ int i =0; for(i=0; i<n; i++) { cout<<a[i]<<" "; }}void sapxeptangdan(int a[], int n){ int i = 0,j = 0, tam = 0; for(i=0; i<n; i++) { for(j=0; j<n; j++) { if(a[i]<a[j]) { tam=a[i]; a[i]=a[j]; a[j]=tam; } } }}void sapxepgiamdan(int a[], int n){ int i = 0,j = 0, tam = 0; for(i=0; i<n; i++) { for(j=0; j<n; j++) { if(a[i]>a[j]) { tam=a[i]; a[i]=a[j]; a[j]=tam; } } }}int main(){ //Sap xep tang dan int a[100], n = 0; cout<<"N ="; cin>>n; nhap(a,n); sapxeptangdan(a,n); xuat(a,n); cout<<endl; sapxepgiamdan(a,n); xuat(a,n); return 0;}
#include <iostream>using namespace std;int main(){ string S, S1; cout<<"Nhap xau S = "; getline(cin,S); //Mac dinh ket thuc dong bang ki tu duoc tao ra khi nhan phim Enter cout<<"Xau S vua nhap la: "<<S<<endl; cout<<"Nhap xau S1 = "; /*Tuy nhien co the dung doi so thu 3 lam ki tu ket thuc nhap du lieu*/ getline(cin,S1,'.'); cout<<"Xau S1 vua nhap la: "<<S1<<endl; return 0;}
- Độ dài xâu dùng hàm (phương thức): length() hoặc size()#include <iostream>using namespace std;int main(){ string S = "Xin chao tat ca cac ban "; int do_dai_xau = S.length(); cout<<"Do dai xau S = "<<do_dai_xau<<endl; int do_dai_xau2 = S.size(); cout<<"Do dai xau S = "<<do_dai_xau2<<endl; return 0;}
- Xâu rỗng có độ dài bằng 0. Để kiểm tra xâu rông dùng phương thức empty() trả về giá trị true khi string rỗng, ngược lại, trả về giá trị false.#include <iostream>using namespace std;int main(){ string S=""; cout<<"Xau S co rong hay khong?: "<<S.empty()<<endl; return 0;}
Chuỗi con (Substring)#include <iostream>using namespace std;int main(){ string xaugoc = "abcdef"; string xaucon; xaucon=xaugoc.substr(0, 1); //a cout << xaucon << endl; xaucon=xaugoc.substr(2, 5); //cdef cout << xaucon << endl; xaucon=xaugoc.substr(0, 3); //abc cout << xaucon << endl; return 0;}
Xóa sạch xâu - làm rỗng xâu: clear()#include <iostream>using namespace std;int main(){ string S="Quyn"; cout<<"Xau S co rong hay khong?: "<<S.empty()<<endl; S.clear(); cout<<"Xau S co rong hay khong?: "<<S.empty()<<endl; return 0;}
Truy cập phần tử trong string S: S[chỉ số] hoặc S.at(chỉ số); 0<= chỉ số <S.length()#include <iostream>using namespace std;int main(){ string S="Vang Van Quyn"; int len = S.length(); int i=0; for(i=0; i<len; i++) { cout<<"Ky tu: "<<S[i]<<endl; } for(i=0; i<len; i++) { cout<<"Ky tu: "<<S.at(i)<<endl; } return 0;}
- Xóa kí tự cuối cùng nếu xâu không rỗng: pop_back()#include <iostream>using namespace std;int main(){ string S="Vang Van Quyn"; int len = S.length(); cout<<"Do dai S "<<len<<endl; S.pop_back(); cout<<"Do dai S "<<S.length()<<endl; return 0;}
- Nối xâu S: push_back('kí tự') nối kí tự vào cuối xâu, append("xâu kí tự"), phép +#include <iostream>using namespace std;int main(){ string S="Quy"; S.push_back('n'); cout<<"S la: "<<S<<endl; S.clear(); S.append("Vang "); S.append("Van "); S.append("Quyn"); cout<<"S la: "<<S<<endl; S.clear(); S=S+"Vang "; S=S+"Van "; S=S+"Quyn"; cout<<"S la: "<<S<<endl; return 0;}
- Chèn một xâu vào vị trí bất kì trong xâu khác: insert (vị trí chèn, xâu chèn vào); 0<= vị trí chèn<= độ dài xâu#include <iostream>using namespace std;int main(){ string S="Quyn"; S.insert(1,"C++"); cout<<"S la: "<<S<<endl; return 0;}
- Thay thế một phần của xâu: replace (vị trí thay thế, số lượng kí tự thay thế, xâu sẽ thay vào);#include <iostream>using namespace std;int main(){ string S="Hoc lap trinh Pascal"; S.replace(14, 6, "C++"); cout<<"S la: "<<S<<endl; return 0;}
- Tìm vị trí xuất hiện của S1 trong S2; S2.find(S1); Nếu thấy thì trả về vị trí xuất hiện của S1 trong S2, ngược lại trả về -1.#include <iostream>using namespace std;int main(){ string S="Hoc lap trinh Pascal"; string S1="Pascal"; int vts1=S.find(S1); cout<<"S la: "<<vts1<<endl; return 0;}
- So sanh hai xâu S1 và S2: S1.compare(S2)#include <iostream>using namespace std;int main(){ int songuyen=45.786; string ssonguyen=to_string(songuyen); //chuyen kieu int sang string int so=stoi(ssonguyen);//chuyen kieu string sang int long so1=stol(ssonguyen); //chuyen kieu string sang long float so2=stof(ssonguyen); //chuyen kieu string sang float double so3=stod(ssonguyen); //chuyen kieu string sang double cout<<songuyen<<endl; cout<<so<<endl; cout<<so1<<endl; cout<<so2<<endl; cout<<so3<<endl; return 0;}
- Chuyển đổi chữ HOA - thường và ngược lại: islower(), isupper(), tolower(), toupper()#include <iostream>using namespace std;int main(){ string str="vang vAN quyN"; int len = str.length(); int i=0, c; for (i = 0; i < len; i++) { c = str[i]; if (islower(c)) { //Chuyen ki tu sang chu HOA str[i] = toupper(c); } } cout<<str; return 0;}
+ Chuyển chữ HOA sang chữ thường:#include <iostream>using namespace std;int main(){ string str="VAnG vAN qUyN"; int len = str.length(); int i=0, c; for (i = 0; i < len; i++) { c = str[i]; if (isupper(c)) { //Chuyen ki tu sang chu thuong str[i] = tolower(c); } } cout<<str; return 0;}
- Tách xâu (sử dụng: stringstream trong thư viện: #include <sstream>).#include <iostream>#include <sstream>using namespace std;int main(){ string S = "xin chao tat ca cac ban"; stringstream ss(S); string token = " "; //Cac phan tach nhau boi dau cach hoac xuong dong. while (ss >> token) //Doc lan luot cac phan cua xau. { cout << token << endl; } return 0;}
#include <iostream>#include <sstream>using namespace std;int main(){ string kq; string S = "xin chao tat ca cac ban"; stringstream ss(S); string token = " "; //Cac phan tach nhau boi dau cach hoac xuong dong. while (ss >> token) //Doc lan luot cac phan cua xau. { kq.append(token).append(" "); } kq.pop_back(); //Xoa ki tu cuoi cung cua xau. Hoac dung lenh: //kq.replace(kq.length()-1,1,""); S=kq; kq.clear(); //Xoa sach xau kq cout << S << endl; return 0;}
#include <iostream>#include <sstream>using namespace std;int main(){ string kq; string S = "xin chao tat ca cac ban"; stringstream ss(S); string token = " "; //Cac phan tach nhau boi dau cach hoac xuong dong. char ch; int i =0, len =0; while (ss >> token) //Doc lan luot cac phan cua xau. { len=tach.length(); //Doi cac chu ve chu thuong for(i=1; i<len; i++) { ch = tach.at(i); tach.at(i)=tolower(ch); } ch = token.at(0); token.at(0) = toupper(ch); kq.append(token).append(" "); } kq.pop_back(); //Xoa ki tu cuoi cung cua xau. Hoac dung lenh: //kq.replace(kq.length()-1,1,""); S=kq; kq.clear(); //Xoa sach xau kq cout << S << endl; return 0;}
#include <iostream>using namespace std;int main(){ string S = "abh45gghu6f8j7k9lpn"; int i =0, len=S.length(); for(i=0; i<len; i++) { cout<<isdigit(S.at(i)); } return 0;}
Kết quả: 0001100001010101000Kiểu dữ liệu | Miêu tả |
---|---|
ofstream | Kiểu dữ liệu này biểu diễn Output File Stream và được sử dụng để tạo các file và để ghi thông tin tới các file đó |
ifstream | Kiểu dữ liệu này biểu diễn Input File Stream và được sử dụng để đọc thông tin từ các file |
fstream | Kiểu dữ liệu này nói chung biểu diễn File Stream, và có các khả năng của cả ofstream và ifstream, nghĩa là nó có thể tạo file, ghi thông tin tới file và đọc thông tin từ file |
Chế độ | Miêu tả |
---|---|
ios::app | Chế độ Append. Tất cả output tới file đó được phụ thêm vào cuối file đó |
ios::ate | Mở một file cho output và di chuyển điều khiển read/write tới cuối của file |
ios::in | Mở một file để đọc |
ios::out | Mở một file để ghi (tạo file mới nếu chưa tồn tại) |
ios::trunc | Nếu file này đã tồn tại, nội dung của nó sẽ được cắt (truncate) trước khi mở file |
INPUT | OUTPUT |
6 | 6 la so chan |
7 | 7 la so le |
#include <iostream>#include <fstream>using namespace std;int main(){ ifstream fin; fin.open("BAI1.INP",ios::in); int N; if(fin.fail()) { cout<<"Loi mo tep"; fin.close(); } else { fin>>N; fin.close(); } if(N%2==0) { cout<<N<<" la so chan"; } else { cout<<N<<" la so le"; } return 0;}
Câu 2. Cho hai số nguyên a và b trong tệp Cau2.INP, mỗi số một dòng. Xuất ra màn hình kết quả tích a và b ra màn hìnhINPUT | OUTPUT |
6 9 | 54 |
#include <iostream>#include <fstream>using namespace std;int main(){ int a,b; ifstream docvao; docvao.open("Cau2.INP",ios::in); if(docvao.fail()) { cout<<" loi tep "; } else { docvao>>a; docvao>>b; } int tich= a*b; cout<<tich; return 0;}
Câu 3. Cho hai số nguyên a và b trong tệp Cau3.INP, mỗi số một dòng. Ghi kết quả tính tổng và tích a và b ra tệp Cau3.OUT, mỗi kết quả ghi một dòng.Cau3.INP | Cau3.OUT |
6 9 | 15 54 |
#include <iostream>#include <fstream>using namespace std;int main(){ ifstream fin; ofstream fout; int a, b, Tong = 0, Tich = 0; fin.open("Cau3.INP",ios::in); fout.open("Cau3.OUT",ios::out); //Tu dong tao file moi neu chua co if(fin.fail()) { fout<<"Khong mo duoc tep"; } else { fin>>a; fin>>b; Tong=a+b; Tich=a*b; } fin.close(); fout<<Tong<<endl; fout<<Tich; fout.close(); return 0;}
Câu 4. Đọc dãy số từ tệp vào mảng.Câu 4. Cho tệp Cau4.INP dòng một chứa ba số nguyên a, b, n cách nhau ít nhất một dấu cách; dòng hai chứa một dãy số gồm n phần tử (n số) cách nhau ít nhất một dấu cách. Tính tích a và b; Tính tổng giá trị các phần tử của dãy số đã cho.
Dữ liệu vào (Cau4.INP) | Dữ liệu ra (Cau4.OUT) | Ghi chú |
6 9 5 5 6 8 9 7 | 54 35 |
|
8 7 10 5 6 8 9 7 2 6 7 9 10 | 56 69 |
|
#include <iostream>#include <fstream>using namespace std;int main(){ int a,b, n; int i=0; int day[100]; int tong=0; ifstream fin; ofstream fout; fin.open("Cau2.INP",ios::in); fout.open("Cau2.OUT",ios::out); if(fin.fail()) { fout<<"Loi doc tep"; } else { fin>>a; fin>>b; fin>>n; for(i=0; i<n; i++) { fin>>day[i]; } } int tich= a*b; fout<<tich<<endl; for(i=0; i<n; i++) { tong=tong+day[i]; } fout<<tong; fin.close(); fout.close(); return 0;}
Tác giả: Vàng Văn Quyn
Những tin mới hơn
- Click vào nút hiển thị ngày trong tuần hoặc tháng âm lịch để xem chi tiết
- Màu đỏ: Ngày tốt
- Xanh lá: Đầu tháng âm lịch
- Màu vàng: Ngày hiện tại