Viết chương trình cho người dùng tạo tự động các mảng chẵn và mảng lẻ với những yêu cầu sau đây:
Tạo Form chứa hộp textbox để người dùng nhập một số nguyên dương bất kỳ
Khi người dùng nhập một số nguyên dương bất kỳ và bấm nút khởi tạo (submit) thì sẽ khởi tạo 2 mảng (1 mảng các số nguyên dương chẵn và 1 mảng các số nguyên dương lẻ). Ví dụ: Nhập vào 10 thì sẽ tạo ra được 2 mảng array(2, 4, 6, 8, 10) và array(1, 3, 5, 7, 9)
Viết chương trình tạo tự động các mảng chẵn và mảng lẻ?
Sử dụng mảng cấp phát động với kích thước mảng = n /2 (n từ bàn phím). nhớ duyệt điều kiện n chẵn lẽ nha, n chẵn thì không nói rồi, n lẽ thì /2 sẽ có vấn đề, vì thế đặt nhiêuf trường hợp n, tính số phần tử chẵn lẽ rồi ra kết luận cấp phát thế nào cho chính xác
Sau đó cho 1 vòng lặp for duyệt toàn mảng.
Tại vị trí của mỗi phần tử, cho 1 vòng lặp for chạy từ 0 tới n, với điều kiện là n % 2 = 0 thì gán phần tử đó cho mảng số chẵn. ngược lại gán cho mảng số lẻ
mình viết như này!
$a=$_POST['txtso1'];
if(isset($_POST['ok'])){
if(is_numeric($a)==true){
for($i=1;$i<=$a;$i++){
if($i%2==0){
echo $i;//Gán $i vào mảng kiểu gì vậy bạn nhỉ
}
}
}
}
http://www.ddth.com/showthread.php/4581-TUTOR-Mảng-và-thao-tác-với-mảng-trong-PHP-Bài-1
Cái mảng của bác đâu nhỉ
Mình làm như thế này có được không bạn ơi, nó ra kết quả như yêu cầu rồi.
$mangchan = array();
$mangle = array();
$a=$_POST['txtso1'];
if(isset($_POST['ok'])){
if(is_numeric($a)==true){
for($i=1;$i<=$a;$i++){
if($i%2==0){
$mangchan[] = $i;
}else{
$mangle[]=$i;
}
}
print_r($mangchan);
print_r($mangle);
}
}
ra đúng yêu cầu là okie rồi
Wow, chưa đọc hiểu nội dung code, nhưng nếu @tranvanchienhn code kiểu này là không được rồi nhé.
Đừng dùng nested if
tức là dùng if lồng trong if. Rất khó để đọc code, sửa lỗi, và thể hiện thuật toán.
Cách giải quyết là tách ra làm nhiều hàm khác nhau, thực hiện các nhiệm vụ nhỏ hơn. Hoặc đọc quyển Code Complete
hjhj. mình mới học code lên chưa biết nhiều lắm. bây giờ mình mới học đến phần hàm, bạn có quyển sách nào giành cho beginer như mình không?
Sách beginer thì Đạt không rành PHP, để hỏi bạn thử.
đạt ơi, cho mình hỏi về phương pháp học code của bạn là như nào vậy, mình thấy trên mang nhiều tài liệu quá, không biết theo cái nào nữa cơ. cảm giác nó bị rối lắm ý!
Học code thì Đạt xem code của người khác và đọc sách. Sau đó viết code, coi thử code mình viết có gì bất ổn. Chỗ nào không hay, chỗ nào có thể sửa lại.
Sách thì Đạt tìm sách nổi tiếng của ngôn ngữ đó. Về sách lập trình chung chung thì có quyển Code Complete 2 rất hay
cảm ơn đạt nhé!
Đạt không làm PHP, nhưng ý Đạt muốn nói là mình nên code như thế này, tạo ra cái hàm sort_array thay vì tính trực tiếp lồng trong if
function sort_array($a) {
$mangchan = array();
$mangle = array();
for($i = 1; $i <= $a; $i++) {
if($i % 2 == 0){
$mangchan[] = $i;
}else{
$mangle[] = $i;
}
}
print_r($mangchan);
print_r($mangle);}
}
$a=$_POST['txtso1'];
if(isset($_POST['ok'])){
if(is_numeric($a)==true){
sort_array($a)
}
}
hjhj, cảm ơn đạt nhé
Hiện các Framework viết nested if còn nhiều hơn thế nữa ấy chứ
Bài này chạy sẽ lỗi hai biến $mangchan và $mangle, bác đưa nó vào hàm sort_array luôn đi
Mình phải viết tốt hơn người ta chứ. Đạt không thích nested if
tí nào.
Thanks
e đang học theo video của a trên freetuts. video của a hay quá
Hi cám ơn bạn Ra tết mình mới tiếp tục các serie đó được bạn ráng chờ nhé