Bài làm = stack khá tốt nhưng dài dòng, dùng đệ quy sẽ hiệu quả hơn
Còn việc chuyển ngược lại thì cũng đơn giảnC++ Code:
Bạn nên nhớ đây là code xét trên trường hợp số nhập vào là đúng, nếu bạn làm 1 chương trình lớn thì phải có các bước kiểm tra dữ liệu nhập vào, nếu ko, chương trình của bạn sẽ chạy sai.C++ Code:
#include <iostream> using namespace std; int bintodec(int n){ int s = 0; int pow; for (int i = 0;n > 0;++i){ pow = 1; for (int j = 0;j < i;++j) pow *= 2; s += pow*(n%10); n /= 10; } return s; } int main(){ system("pause"); return 0; }
Bài tập này cực dễ cho những người thích tìm hiểu nhưng lại cực khó cho những người lười tìm hiểu, ngại viết code, ko thích học lập trình và vô cùng lười biếng