SOURCE CODE GIẢI 1000 BÀI TRONG SÁCH BÀI TẬP KỸ THUẬT LẬP TRÌNH CỦA THẦY NGUYỄN TẤN TRẦN MINH KHANG
Lời nói đầu | |
Cuốn sách Bài Tập Kỹ Thuật Lập Trình (tập 1) của Thầy Nguyễn Tấn Trần Minh Khang mang lại giá trị rất lớn với những người mới bắt đầu học lập trình thông qua nguồn bài tập đa dạng, phong phú mà Thầy đã dày công soạn ra, đây có thể xem là quyển sách gối đầu của dân học CNTT. Những bài tập có trong sách sẽ giúp các Bạn luyện tập được TƯ DUY LẬP TRÌNH xuyên suốt trong quá trình học. Sách là sự kết hợp của 3 môn học (Nhập Môn Lập Trình + Kỹ Thuật Lập Trình + Cấu Trúc Dữ Liệu & Giải Thuật). Theo giang hồ đồn lại thì cuốn tập 2 chỉ có đệ tử chân truyền của bổn môn nắm giữ, chưa biết thực hư ra sao nhưng mãi vẫn không thấy tập 2 của Thầy. Thầy Nguyễn Tấn Trần Minh Khang cũng là người sáng tạo ra Bí Kíp Độc Cô Cửu Kiếm nổi tiếng trên giang hồ lưu truyền đến tận ngày nay. Chia sẻ bản thân: Thời sinh viên của Tôi lúc mới bắt đầu tiếp xúc với lập trình (năm 2012), thời đó khó khăn đến mức Tôi không có máy tính để code (chỉ tranh thủ những lớp thực hành ở trường thì Tôi trà trộn vào thực hành ké máy tính), thời gian còn lại Tôi viết code tay ra giấy trên những bao cây thuốc lá xin từ đại lý bán thuốc gần nhà. Khi nào có máy là Tôi lại ôm xấp giấy ra nhìn theo gõ lại để xem có chạy đúng hay không? Mãi đến cuối năm 2012 Mẹ Tôi gom hết vốn liếng trong nhà mua 1 cái máy tính DELL Core i3 cho Anh trai Tôi học năm cuối đại học cần làm đồ án, Anh Tôi mang đi từ sáng sớm 7:00 đến tối 12:00, Tôi tranh thủ ngồi gõ lại từng đoạn code vào ban đêm để đến sáng Anh Tôi lại mang đi. Và sau một thời gian tổng hợp lại nó ra danh sách các source code sau đây. Các Bạn có thể xem nó là một nguồn tài liệu để tham khảo thôi nhé - còn Bạn tự lực vẫn là tốt nhất. Các bài giải đã được chạy thành công trên IDE Visual Studio 2010/2012 nhưng Tôi nói trước là một số bài cách giải có thể sẽ không được tối ưu vì thời điểm năm 2012 lúc đó Tôi mới học rồi làm ra luôn và lưu lại đến tận bây giờ. Cung cấp cho các Bạn nguồn bài giải này như là một con dao 2 lưỡi, nếu Bạn biết sử dụng thì cuộc đời nở hoa - ngược lại cuộc sống bế tắc. Cách sử dụng: Xem qua đề bài, tự lên ý tưởng code và triển khai thành công, sau đó xem qua bài giải của Tôi để tham khảo thêm hoặc chỉ nên xem sau khi đã cố gắng hết sức để làm mà không ra. Hãy nhớ nếu Bạn chưa cố gắng hết sức giải mà đã xem tức là Bạn đã đầu hàng chính bản thân Bạn. Lời khuyên: Nếu năm 1 hoặc năm 2 mà Bạn đã có thể giải được hết nguyên cuốn sách Bài Tập Kỹ Thuật Lập Trình của Thầy Nguyễn Tấn Trần Minh Khang thì chắc chắn Bạn sẽ còn đi rất xa trong ngành lập trình CNTT. Mong được đóng góp một phần thành công trên hành trình của các Bạn. Chúc các Bạn thật nhiều sức khỏe - luôn học tập tốt và gặt hái thật nhiều thành công trong cuộc sống. Gửi các Bạn link download sách Bài Tập Kỹ Thuật Lập Trình của Thầy Nguyễn Tấn Trần Minh Khang để Bạn chủ động làm thêm bài tập (khuyến khích mua cuốn sách cầm hẳn hoi trên tay sẽ có động lực hơn rất nhiều - kinh nghiệm cá nhân. Sách mua ở quầy sách trường đại học Khoa Học Tự Nhiên): https://drive.google.com/open?id=0B8kSO5oW2pgdMnBwQUp1eE91VjA Sắp tới đây Tôi sẽ còn tiếp tục chia sẻ thêm các source code C#/Java khi xưa Tôi làm và sau này một số Project thực tế Tôi triển khai cho khách hàng. Các Bạn đăng ký vào Form nhận quà tặng để ngay khi viết bài hoàn tất Tôi sẽ gửi mail cho Bạn: http://goo.gl/forms/7d6RWjTaQr |
Bài 71/10/SBT Thầy NTTMK:Tính S(x,n)=-x+(x^2)/(1+2)-(x^3)/(1+2+3)+...+(-1^n)*((x^n)/(1+2+3+...+n)) .
Nhập vào số nguyên dương N:
a> Đếm số lượng chữ số của N.
b> Kiểm tra xem N có là số nguyên tố không ?
c> Đếm số lượng chữ số lớn nhất của số nguyên dương N. Ví dụ n = 4525 thì kết quả là 2.
a> Đếm số lượng chữ số của N.
b> Kiểm tra xem N có là số nguyên tố không ?
c> Đếm số lượng chữ số lớn nhất của số nguyên dương N. Ví dụ n = 4525 thì kết quả là 2.
Bài Tập Mảng 1 Chiều
KỸ THUẬT NHẬP XUẤT MẢNG
KỸ THUẬT ĐẶT LÍNH CANH CÁC BÀI TẬP CƠ BẢN
Bài 135/58/SBT Thầy NTTMK:
Cách 1:Tìm "giá trị dương đầu tiên" trong mảng một chiều các số thực.Nếu mảng không có giá trị dương thì trả về giá trị -1.
Cách 1:Tìm "giá trị dương đầu tiên" trong mảng một chiều các số thực.Nếu mảng không có giá trị dương thì trả về giá trị -1.
Bài 135/58/SBT Thầy NTTMK:
Cách 2:Tìm "giá trị dương đầu tiên" trong mảng một chiều các số thực.Nếu mảng không có giá trị dương thì trả về giá trị -1.
Cách 2:Tìm "giá trị dương đầu tiên" trong mảng một chiều các số thực.Nếu mảng không có giá trị dương thì trả về giá trị -1.
CÁC BÀI TẬP LUYỆN TẬP
BÀI TẬP LUYỆN TẬP TƯ DUY
CÁC BÀI TẬP TÌM KIẾM VÀ LIỆT KÊ
Bài 197/67/SBT Thầy NTTMK:Hãy liệt kê các giá trị trong mảng một chiều các số nguyên có chữ số đầu tiên là chữ số lẻ.
KỸ THUẬT TÍNH TỔNG
Bài 211/68/SBT Thầy NTTMK:Tính trung bình cộng các số nguyên tố trong mảng một chiều các số nguyên .
KỸ THUẬT ĐẾM
KỸ THUẬT ĐẶT CỜ HIỆU
KỸ THUẬT SẮP XẾP
Đề Bài: Nhập vào 1 mảng A các số nguyên và sắp xếp mảng A trên theo quy luật :
+ Các số dương (nếu có) ở đầu mảng và có thứ tự giảm dần.
+ Các số âm (nếu có) ở cuối mảng và có thứ tự tăng dần .
+ Các số dương (nếu có) ở đầu mảng và có thứ tự giảm dần.
+ Các số âm (nếu có) ở cuối mảng và có thứ tự tăng dần .
Đề Bài: Nhập vào 1 mảng A các số nguyên và sắp xếp mảng A trên theo quy luật :
+ Các số chẵn (nếu có) ở đầu mảng và có thứ tự tăng dần.
+ Các số lẻ (nếu có) ở cuối mảng và có thứ tự giảm dần .
+ Các số chẵn (nếu có) ở đầu mảng và có thứ tự tăng dần.
+ Các số lẻ (nếu có) ở cuối mảng và có thứ tự giảm dần .
Đề Bài: Áp dụng nâng cao Thuật Toán Sắp Xếp : Cho dãy số nguyên A như sau : 12 2 15 -3 8 5 1 -8 6 0 4 15 . Yêu Cầu :
1 . Sắp xếp dãy trên tăng dần .
2 . Suy ra số lớn thứ 3 trong dãy .
3 . Suy ra số lượng phần tử lớn nhất trong dãy .
4 . Sắp xếp dãy trên theo thứ tự giá trị tuyệt đối tăng dần .
5 . Sắp xếp dãy trên theo quy luật sau :
+ Các số dương (nếu có) ở đầu mảng và có thứ tự giảm dần .
+ Các số âm (nếu có) ở cuối mảng và có thứ tự tăng dần .
6 . Sắp xếp dãy trên theo quy luật sau :
+ Các số chẵn (nếu có) ở đầu mảng và có thứ tự tăng dần .
+ Các số lẻ (nếu có) ở cuối mảng và có thứ tự giảm dần .
1 . Sắp xếp dãy trên tăng dần .
2 . Suy ra số lớn thứ 3 trong dãy .
3 . Suy ra số lượng phần tử lớn nhất trong dãy .
4 . Sắp xếp dãy trên theo thứ tự giá trị tuyệt đối tăng dần .
5 . Sắp xếp dãy trên theo quy luật sau :
+ Các số dương (nếu có) ở đầu mảng và có thứ tự giảm dần .
+ Các số âm (nếu có) ở cuối mảng và có thứ tự tăng dần .
6 . Sắp xếp dãy trên theo quy luật sau :
+ Các số chẵn (nếu có) ở đầu mảng và có thứ tự tăng dần .
+ Các số lẻ (nếu có) ở cuối mảng và có thứ tự giảm dần .
KỸ THUẬT THÊM
KỸ THUẬT XÓA
KỸ THUẬT XỬ LÝ MẢNG
KỸ THUẬT XỬ LÝ MẢNG CON
XÂY DỰNG MẢNG
a> Xuất ra phần tử lớn nhất.
b> Sắp xếp mảng tăng dần.
c> Tính tổng 5 số lẻ đầu tiên của mảng,nếu số phần tử là số lẻ nhỏ hơn 5,thì tính tổng các số lẻ của các phần tử mảng.
d> Xóa các phần tử trùng nhau của mảng (giữ lại phần tử đầu và xóa các phần tử trùng sau đó).Ví dụ:Cho mảng A={4,5,3,5,6,7,8,7} thì kết quả sau khi xóa A={4,5,3,6,7,8} .
Mảng 2 Chiều Thưởng
KỸ THUẬT TÍNH TOÁN
Bài 324/94/SBT Thầy NTTMK:Cách 2:Tính tổng các giá trị dương trên 1 dòng trong ma trận các số thực .
KỸ THUẬT ĐẾM
KỸ THUẬT ĐẶT CỜ HIỆU
Bài 357/93/SBT Thầy NTTMK:Liệt kê chỉ số các dòng có chứa số nguyên tố trong ma trận các số nguyên .
KỸ THUẬT ĐẶT LÍNH CANH
Bài 389/96/SBT Thầy NTTMK:Liệt kê các dòng có nhiều số hoàn thiện nhất trong ma trận các số nguyên .
KỸ THUẬT XỬ LÝ MA TRẬN
SẮP XẾP
XÂY DỰNG MA TRẬN
Mảng 2 Chiều Vuông (Ma Trận Vuông)
TÍNH TOÁN
KỸ THUẬT ĐẶT LÍNH CANH
KỸ THUẬT ĐẾM
KỸ THUẬT ĐẶT CỜ HIỆU
SẮP XẾP
CÁC PHÉP TOÁN TRÊN MA TRẬN
Đệ Quy
Danh Sách Liên Kết
Cây Nhị Phân Tìm Kiếm
Đề Bài Tổng Hợp Về Binary Search Tree:Viết chương trình nhập vào cây nhị phân các số nguyên,in ra cây vừa nhập và tạo ra bảng MeNu để xử lý các yêu cầu sau đây :
1/ Tính tổng tất cả các Node .
2/ Tính tổng các Node dương .
3/ Tính tổng các Node âm .
4/ Tính tích tất cả các Node .
5/ Tính tích các Node dương .
6/ Tính tích các Node âm .
7/ Tìm Node lớn nhất .
8/ Tìm Node nhỏ nhất .
9/ Đếm số lượng các Node .
10/ Đếm số lượng các Node dương .
11/ Đếm số lượng các Node âm .
12/ Đếm số lượng các Node lá .
13/ Tìm kiếm 1 Node .
14/ Tinh do cao cua 1 Node .
15/ Xoa 1 Node .
0/ Thoat chuong trinh .
Tập Tin
Bài 46/128/SBT trường CNTP : Tạo file văn bản có tên là:"INPUT.TXT" có cấu trúc như sau :
- Dòng đầu tiên ghi N (N là số nguyên dương nhập từ bàn phím) .
- Trong các dòng tiếp theo ghi N số nguyên ngẫu nhiên trong phạm vi từ 0 đến 100,mỗi dòng 10 số (các số cách nhau ít nhất một khoảng trắng) .
Hãy đọc dữ liệu của file "INPUT.TXT" và lưu vào mảng một chiều A.Thực hiện các công việc sau :
- Tìm giá trị lớn nhất của mảng A .
- Đếm số lượng số chẵn,số lượng số lẻ của mảng A .
- Hãy sắp xếp các phần tử theo thứ tự tăng dần .
Hãy ghi các kết quả vào file văn bản có tên OUTPUT.TXT theo mẫu sau.
- Dòng đầu tiên ghi N (N là số nguyên dương nhập từ bàn phím) .
- Trong các dòng tiếp theo ghi N số nguyên ngẫu nhiên trong phạm vi từ 0 đến 100,mỗi dòng 10 số (các số cách nhau ít nhất một khoảng trắng) .
Hãy đọc dữ liệu của file "INPUT.TXT" và lưu vào mảng một chiều A.Thực hiện các công việc sau :
- Tìm giá trị lớn nhất của mảng A .
- Đếm số lượng số chẵn,số lượng số lẻ của mảng A .
- Hãy sắp xếp các phần tử theo thứ tự tăng dần .
Hãy ghi các kết quả vào file văn bản có tên OUTPUT.TXT theo mẫu sau.
Con Trỏ
Dữ Liệu Kiểu Cấu Trúc Struct
Hợp Ngữ
Đề Thi Liên Thông Đại Học
ĐỀ THI TUYỂN SINH
LỚP HOÀN CHỈNH ĐẠI HỌC KHÓA 2001
MÔN THI:CƠ SỞ
Thời gian:180 phút
Phần 1:KỸ THUẬT LẬP TRÌNH (sử dụng ngôn ngữ lập trình C hoặc C++)
Phần 2:CẤU TRÚC DỮ LIỆU
ĐỀ THI TUYỂN SINH
LỚP HOÀN CHỈNH ĐẠI HỌC KHÓA 2000
MÔN THI:CƠ SỞ
Thời gian:180 phút
Một Số Bài Tập Khác
CÁC BÀI TẬP TRONG SÁCH TRƯỜNG CÔNG NGHIỆP THỰC PHẨM
Bài 21:Viết hàm tính S=-(1+2)/2!+(3+4)/4!-(5+6)/6!+...+((-1^n)x((2n-1)+(2n)))/(2n)! .Dùng vòng lặp .
Trong quá trình tham khảo nguồn Source Code nếu các Bạn có những thắc mắc hãy tham gia vào group facebook của các bạn học viên Tôi để thảo luận nhé: https://www.facebook.com/groups/hoclaptrinhsondeptrai
- FOUNDER & CEO tại
Trung Tâm Đào Tạo Tin Học - Thiết Kế Phần Mềm - Sơn Đẹp Trai - Hơn 3 năm kinh nghiệm Đào Tạo Lập Trình từ căn bản đến nâng cao và chuyên sâu.
- Đã tổ chức đào tạo cho hơn 700 học viên nên hiểu rất rõ những khó khăn của các học viên khi học lập trình.
- Là người sáng lập ra cộng đồng Lập Trình C/C++ và điều hành cho tới ngày nay với số lượng thành viên hiện tại lên đến hơn 30.000 thành viên.
- Tạo lập ra Fanpage cá nhân Học Lập Trình Không Khó - luôn truyền tải thật nhiều kiến thức đến cho cộng đồng lập trình viên.
- Kênh youtube Nguyễn Việt Nam Sơn với hơn 700 videos chuyên đề về lập trình đưa kiến thức đến với cộng đồng lập trình viên.
- Là cầu nối với các doanh nghiệp CNTT trong và ngoài nước trong quy trình tuyển dụng nguồn nhân lực chất lượng cao.
- Là cầu nối với các trung tâm tin học trong quy trình đào tạo nguồn nhân lực.
- Là đối tác với các chủ doanh nghiệp trong và ngoài nước trong quy trình Thi Công Thiết Kế Phần Mềm - Giải Pháp Phần Mềm - Internet Marketing.
Hãy gọi 01267666702 để được Tôi tư vấn hoàn toàn MIỄN PHÍ nếu Bạn muốn có phương pháp học tập hiệu quả cũng như định hướng tương lai vững chắc trong ngành Lập Trình Phần Mềm
Hoặc trở thành người Bạn của Tôi qua www.facebook.com/nvnamson
Sơn đẹp trai - Đào tạo lập trình phần mềm
Mobile: 01267666702
Email: [email protected]
Kết Bạn với Tôi:
Facebook: www.facebook.com/nvnamson
Skype: nguyenvietnamson
Google: Nguyễn Việt Nam Sơn
Youtube: Nguyễn Việt Nam Sơn
0 nhận xét:
Đăng nhận xét