Phân tích số nguyên thành thừa số nguyên to PHP

Đang xem: Bài tập về function trong php

Nội dung chính

Các cấp độ bài tập PHP Bài tập PHP cơ bản Bài tập xử lý chuỗi

Các cấp độ bài tập PHP

Bài này cung cấp cho bạn danh sách các bài tập PHP có lời giải ở các cấp độ như sau:

Bài tập PHP cơ bản. Bài tập xử lý chuỗi. Bài tập mảng. Bài tập biểu thức chính quy (Regular Expression). Bài tập Datetime. Bài tập Webservice. Bài tập nâng cao quản lý bán hàng.

Bài tập PHP cơ bản

Bài 01: Sử dụng dấu * để vẽ tam giác trong PHP, đây là một trong những bài cơ bản nhất giúp bạn thực hành cách sử dụng các vòng lặp trong PHP.

Gợi ý:

Sử dụng vòng lặp for Sử dụng vòng lặp do-while Sử dụng vòng lặp while

Code mẫu: sử dụng vòng lặp for

// sử dụng vòng lặp for – vẽ tam giác trong PHP, // mỗi dấu * là một đơn vị <?php for($i = 0; $i < 20; $i ++) echo “<br>”; } ?>

// sử dụng vòng lặp for – vẽ tam giác trong PHP, // mỗi dấu * là một đơn vị * ** *** **** ***** ****** ******* ******** ********* ********** *********** ************ ************* ************** *************** **************** ***************** ****************** *******************

Bài 02: Sử dụng dấu * để vẽ hình chữ nhật trong PHP, đây là một trong những bài cơ bản nhất giúp bạn thực hành cách sử dụng các vòng lặp trong PHP.

Gợi ý:

Sử dụng vòng lặp for Sử dụng vòng lặp do-while Sử dụng vòng lặp while

Code mẫu: sử dụng vòng lặp for

// sử dụng vòng lặp for – vẽ hình chữ nhật trong PHP, // mỗi dấu * là một đơn vị <?php for($i = 0; $i < 10; $i ++) } ?>

// sử dụng vòng lặp for – vẽ hình chữ nhật trong PHP, // mỗi dấu * là một đơn vị ******************** ******************** ******************** ******************** ******************** ******************** ******************** ******************** ******************** ********************

Bài 03: Viết một chương trình để in ra các số từ 1 đến 100. Nhưng đối với các số chia hết cho 3 thì in ra chữ “Fizz” thay vì hiển thị số đó và đối với các số chia hết cho 5 thì in ra chữ “Buzz”. Đối với các số vừa chia hết cho 3 và 5 thì in ra chữ “FizzBuzz”.

Gợi ý:

Lặp i từ 1 đến 100. Kiểm tra nếu i chia hết cho 3 và 5 thì in ra “FizzBuzz”. Kiểm tra nếu i chia hêt cho 3 thì in ra “Fizz”. Kiểm tra nếu i chia hêt cho 5 thì in ra “Buzz”.

Code mẫu:

Fizz 3 Buzz 5 Fizz 6 Fizz 9 Buzz 10 Fizz 12 FizzBuzz 15 Fizz 18 … FizzBuzz 75 Fizz 78 Buzz 80 Fizz 81 Fizz 84 Buzz 85 Fizz 87 FizzBuzz 90 Fizz 93 Buzz 95 Fizz 96 Fizz 99 Buzz 100

<table border=”1px”> <tr> <?php for($i = 1; $i < 10; $i ++) echo “</td>”; } ?> </tr> </table>

Kết quả:

Bài 05: Viết chương trình giải phương trình bậc 2: ax2 + bx + c = 0.

Code mẫu:

<?php // khai báo các biến toàn cầu $heso_a = “”; $heso_b = “”; $heso_c = “”; // đọc các hệ số từ FORM if (isset ( $_POST <"heso_a"> )) if (isset ( $_POST <"heso_b"> )) if (isset ( $_POST <"heso_c"> )) /** * giải phương trình bậc 2 trong PHP * *

param * he so tu do $c */ function giaiPTB2($a, $b, $c) else return; } // tính delta $delta = $b * $b – 4 * $a * $c; $x1 = “”; $x2 = “”; // tính nghiệm if ($delta > 0) else if ($delta == 0) else } ?> <form action=”#” method=”post”> <table> <tr> <td>Hệ số bậc 2, a</td> <td><input type=”text” name=”heso_a” value=”<?=$heso_a?>” /></td> </tr> <tr> <td>Hệ số bậc 1, b</td> <td><input type=”text” name=”heso_b” value=”<?=$heso_b?>” /></td> </tr> <tr> <td>Hệ số tự do, c</td> <td><input type=”text” name=”heso_c” value=”<?=$heso_c?>” /></td> </tr> <tr> <td></td> <td><input type=”submit” value=”Kết quả”></td> </tr> </table> </form> <br> <?php // gọi hàm giải phương trình bậc 2 // Sử dụng từ kháo $GLOBALS để đọc các biến toàn cầu và truyền vào hàm if (is_numeric ( $GLOBALS <"heso_a"> ) && is_numeric ( $GLOBALS <"heso_b"> ) && is_numeric ( $GLOBALS <"heso_c"> )) else ?>

Kết quả:

Chú ý: Trong ví dụ trên hàm is_numeric() được sử dụng về xác thực giá trị đầu vào phải là một số thực.

Bài 06: Viết chương trình tính giai thừa của n. Giai thừa của 1 số là tích các số liên tiếp từ 1 đến số đó. Trường hợp đặc biệt, giai thừa của 0 và 1 là 1.

Ví dụ: giai thừa của 5 là 1*2*3*4*5 = 120

Gợi ý:

Tính giai thừa không sử dụng đệ quy. Tính giai thừ có sử dụng đệ quy.

Code mẫu: Tính giai thừa không sử dụng đệ quy

<?php $a = 5; $b = 0; $c = 10; /** * tinh giai thua * * author in4tintuc.com *

param n: so nguyen duong */ function tinhGiaithua($n) else return $giai_thua; } } // tính giai thừa echo (“Giai thừa của ” . $a . ” là: ” . tinhGiaithua ( $a ) . “<br>”); echo (“Giai thừa của ” . $b . ” là: ” . tinhGiaithua ( $b ) . “<br>”); echo (“Giai thừa của ” . $c . ” là: ” . tinhGiaithua ( $c ) . “<br>”); ?>

Kết quả:

Giai thừa của 5 là: 120 Giai thừa của 0 là: 1 Giai thừa của 10 là: 3628800

Bài 07: Tính dãy số Fibonacci trong PHP.

Gợi ý:

Tính dãy số Fibonacci không dùng phương pháp đệ quy. Tính dãy số Fibonacci sử dụng phương pháp đệ quy.

Code mẫu: Tính dãy số Fibonacci không dùng phương pháp đệ quy

<?php /** * Tính số fibonacci thứ n * * author: in4tintuc.com * param n: chỉ số của số fibonacci tính từ 0 * vd: F0 = 0, F1 = 1, F2 = 1, F3 = 2 *

return integer */ function fibonacci($n) else if ($n == 0 || $n == 1) else } return $fn; } echo (“10 số đầu tiên của dãy số fibonacci: “); for($i = 0; $i < 10; $i ++) ?>

Kết quả:

10 số đầu tiên của dãy số fibonacci: 0 1 1 2 3 5 8 13 21 34

Bài 08: Kiểm tra số nguyên tố trong PHP.

Định nghĩa: số nguyên tố là số lớn hơn 1 và chỉ chia hết cho 1 và chính nó.

Ví dụ: 2, 3, 5, 7, 11, 13, 17, … là những số nguyên tố.

Code mẫu:

<?php /** * check so nguyen to * * author in4tintuc.com * param n: so nguyen duong *

return boolean */ function isPrimeNumber($n) // check so nguyen to khi n >= 2 $squareRoot = sqrt ( $n ); for($i = 2; $i <= $squareRoot; $i ++) } return true; } echo (“Các số nguyên tố nhỏ hơn 100 là: <br>”); for($i = 0; $i < 100; $i ++) } ?>

Kết quả:

Các số nguyên tố nhỏ hơn 100 là: 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

Bài 09: Viết chương trình chuyển đổi một số tự nhiên ở hệ số 10 thành một số ở hệ cơ số B (1 <=>

Code mẫu: Ví dụ chuyển đối hệ cơ số 10 sang hệ cơ số B

Giả sử hệ cơ số cần chuyển là 2 <=>. Số đại điện cho hệ cơ số B > 10 là A = 10, B = 11, C = 12, D = 13, E = 14, F = 15.

Chúng ta tạo ra một chương trình như sau để chuyển đổi hệ cơ số trong PHP:

return string he co so b */ function convertNumber($n, $b) $result = “”; $m = 0; $remainder = $n; while ($remainder > 0) else } else $remainder = floor($remainder / $b); } return strrev($result); } // ví dụ chuyển đổi số 30 (hệ số 10) sang hệ cơ số 2 và 16 $n = 30; echo (“So ” . $n . ” trong he co so 2 = ” . convertNumber($n, 2) . “<br>”); echo (“So ” . $n . ” trong he co so 16 = ” . convertNumber($n, 16)); // ví dụ chuyển đổi số 15 (hệ số 10) sang hệ cơ số 2 và 16 $n = 15; echo (“So ” . $n . ” trong he co so 2 = ” . convertNumber($n, 2) . “<br>”); echo (“So ” . $n . ” trong he co so 16 = ” . convertNumber($n, 16)); ?>

Kết quả:

So 30 trong he co so 2 = 11110 So 30 trong he co so 16 = 1E So 15 trong he co so 2 = 1111 So 15 trong he co so 16 = F

Bài 10: Viết chương trình tìm ước số chung lớn nhất (UCLN) và bội số chung nhỏ nhất (BCNN) của hai số a và b.

Gợi ý:

Sử dụng giải thuật Euclid.

Code mẫu:

<?php /** * Tìm ước số chung lớn nhất (USCLN) * * param a: số nguyên dương * param b: số nguyên dương * return integer USCLN của a và b */ function USCLN($a, $b) /** * Tìm bội số chung nhỏ nhất (BSCNN) * * param a: số nguyên dương * param b: số nguyên dương *

return integer BSCNN của a và b */ function BSCNN($a, $b) $a = 15; $b = 40; // tính USCLN của a và b echo (“USCLN của $a và $b là: ” . USCLN($a, $b)) . “<br>”; // tính BSCNN của a và b echo (“BSCNN của $a và $b là: ” . BSCNN($a, $b)); ?>

Kết quả:

USCLN của 15 và 40 là: 5 BSCNN của 15 và 40 là: 120

Bài 11: Viết chương trình liệt kê tất cả các số nguyên tố nhỏ hơn n.

Code mẫu:

Xem thêm: Top 10 Ứng Dụng, Phần Mềm Nt Với Người Lạ, ‎Chat Với Người Lạ, Gặp Gỡ Trên App Store

<?php /** * check so nguyen to * * author in4tintuc.com * param n: so nguyen duong *

return boolean * true la so nguyen so, * false khong la so nguyen to */ function isPrimeNumber($n) // check so nguyen to khi n >= 2 $squareRoot = sqrt($n); for ($i = 2; $i <= $squareRoot; $i++) } return true; } $n = 100; echo (“Tất cả các số nguyên tố nhỏ hơn $n là: <br>”); if ($n >= 2) for ($i = 3; $i < $n; $i+=2) } ?>

Kết quả:

Nhập n = 100 Tất cả các số nguyên tố nhỏ hơn 100 là: 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

Bài 12: Viết chương trình liệt kê n số nguyên tố đầu tiên.

Code mẫu:

<?php // Liệt kê n số nguyên tố đầu tiên trong PHP /** * check so nguyen to * * author in4tintuc.com * param n: so nguyen duong *

return true la so nguyen so, * false khong la so nguyen to */ function isPrimeNumber($n) // check so nguyen to khi n >= 2 $squareRoot = sqrt($n); for ($i = 2; $i <= $squareRoot; $i++) } return true; } echo (“Liệt kê 10 số nguyên tố đầu tiên: “); $n = 10; $dem = 0; // đếm số số nguyên tố $i = 2; // tìm số nguyên tố bắt dầu từ số 2 while ($dem < $n) $i++; } ?>

Kết quả:

Nhập n = 10 Liệt kê 10 số nguyên tố đầu tiên: 2 3 5 7 11 13 17 19 23 29

Bài 13: Viết chương trình liệt kê tất cả các số nguyên tố có 5 chữ số.

Code mẫu:

<?php /** * check so nguyen to * * author in4tintuc.com * param n: so nguyen duong *

return true la so nguyen so, * false khong la so nguyen to */ function isPrimeNumber($n) // check so nguyen to khi n >= 2 $squareRoot = sqrt($n); for ($i = 2; $i <= $squareRoot; $i++) } return true; } $count = 0; echo (“Liệt kê tất cả số nguyên tố có 5 chữ số:<br>”); for ($i = 10001; $i < 99999; $i+=2) } echo (“Tổng các số nguyên tố có 5 chữ số là: $count”); ?>

Kết quả:

Liệt kê tất cả số nguyên tố có 5 chữ số: 10007 10009 10037 … 99971 99989 99991 Tổng các số nguyên tố có 5 chữ số là: 8363

Bài 15: Nhập số tự nhiên n. Hãy liệt kê các số Fibonacci nhỏ hơn n là số nguyên tố.

Code mẫu:

<?php /** * Tính số fibonacci thứ n * * author: in4tintuc.com * param n: chỉ số của số fibonacci tính từ 0 * vd: F0 = 0, F1 = 1, F2 = 1, F3 = 2 * return integer */ function fibonacci($n) else if ($n == 0 || $n == 1) else } /** * kiểm tra số nguyên tố * * author in4tintuc.com * param n: số nguyên dương *

return boolean */ function isPrimeNumber($n) // check so nguyen to khi n >= 2 $squareRoot = sqrt ( $n ); for($i = 2; $i <= $squareRoot; $i ++) } return true; } $n = 1000; echo (“Các số fibonacci nhỏ hơn $n và là số nguyên tố: “); $i = 0; while (fibonacci($i) < $n) $i++; } ?>

Kết quả:

Các số fibonacci nhỏ hơn 1000 và là số nguyên tố: 2 3 5 13 89 233

Bài 15: Viết chương trình phân tích số nguyên n thành các thừa số nguyên tố. Ví dụ: 12 = 2 x 2 x 3.

Code mẫu:

<?php $n = 0; if (isset ( $_POST <"n"> )) /** * Chương trình phân tích số nguyên thành tích các thừa số nguyên tố * * param n số nguyên dương *

return array */ function phanTichSoNguyen($n) else } // nếu listNumbers trống thì add n vào listNumbers if ($arrNumbers <0> == “”) return $arrNumbers; } ?> <form action=”#” method=”post”> <table> <tr> <td>Nhập số nguyên:</td> <td><input type=”text” name=”n” value=”<?=$n?>” /></td> </tr> <tr> <td></td> <td><input type=”submit” value=”Phân tích”></td> </tr> </table> </form> <br> <?php if (filter_var ( $n, FILTER_VALIDATE_INT )) echo $arrNumbers <$size>; } else ?>

Kết quả:

Bài 16: Viết chương trình tính tổng các chữ số của một số nguyên n. Ví dụ: 1234 = 1 + 2 + 3 + 4 = 10.

Code mẫu:

<?php define ( “DEC_10”, 10 ); // đọc biến $n từ FORM $n = 0; if (isset ( $_POST <"n"> )) /** * Tính tổng của các chữ số của một số nguyên dương * * param n: số nguyên dương *

return integer */ function totalDigitsOfNumber($n) while ( $n > 0 ); return $total; } ?> <form action=”#” method=”post”> <table> <tr> <td>Nhập số nguyên:</td> <td><input type=”text” name=”n” value=”<?=$n?>” /></td> </tr> <tr> <td></td> <td><input type=”submit” value=”Phân tích”></td> </tr> </table> </form> <br> <?php if (filter_var ( $n, FILTER_VALIDATE_INT )) else ?>

Kết quả:

Bài 17: Một số được gọi là số thuận nghịch nếu ta đọc từ trái sang phải hay từ phải sang trái số đó ta vẫn nhận được một số giống nhau. Ví dụ 123321 là một số thuận nghịch. Hãy liệt kê tất cả các số thuận nghịch có 6 chữa số.

Code mẫu:

<?php define ( “DEC_10”, 10 ); /** * Kiểm tra số thuận nghịch * * param n: số nguyên dương *

return true là số thuận nghịch * false không là số thuận nghịch */ function isThuanNghich($n) while ( $n > 0 ); // kiểm tra tính thuận nghịch $size = count ( $arrNumbers ); for($i = 0; $i < ($size / 2); $i ++) } return true; } // Kiểm tra số thuận nghịch $count = 0; // in ra màn hình các số thuận nghịch có 4 chữ số for($i = 1000; $i < 10000; $i ++) } echo (“Tổng các số thuận nghịch có 6 chữ số: $count”); ?>

Kết quả:

1001 1111 1221 1331 1441 … 9559 9669 9779 9889 9999 Tổng các số thuận nghịch có 6 chữ số: 90

Các bài tập cơ bản khác:

Viết chương trình nhập số nguyên dương n và thực hiện các chức năng sau: a) Tính tổng các chữ số của n. b) Phân tích n thành tích các thừa số nguyên tố. c) Liệt kê các ước số của n. d) Liệt kê các ước số là nguyên tố của n. Viết chương trình liệt kệ các số nguyên có từ 5 đến 7 chữ số thảo mãn: a) Là số nguyên tố. b) Là số thuận nghịch. c) Mỗi chữ số đều là số nguyên tố. d) Tổng các chữ số là số nguyên tố. Viết chương trình liệt kệ các số nguyên có 7 chữ số thảo mãn: a) Là số nguyên tố. b) Là số thuận nghịch. c) Mỗi chữ số đều là số nguyên tố.

d) Tổng các chữ số là số thuận nghịch.

Bài tập xử lý chuỗi

Nhập một sâu ký tự. Đếm số từ của sâu đó (mỗi từ cách nhau bởi một khoảng trắng có thể là một hoặc nhiều dấu cách, tab, xuống dòng). Ví dụ ” hoc java co ban den nang cao ” có 7 từ. Nhập một sâu ký tự. Liệt kê số lần xuất hiện của các từ của sâu đó. Nhập 2 sâu ký tự s1 và s2. Kiểm tra xem sâu s1 có chứa s2 không?. Tính độ dài của một chuỗi – strlen(). Đảo ngược chuỗi – strrev(). Tìm kiếm văn bản trong một chuỗi. Thay thế văn bản trong một chuỗi. Chuyển đổi chữ hoa, chữ thường. Delete dữ liệu từ MySQL trong PHP Vẽ tam giác trong PHP Recent Updates Tìm số thuận nghịch trong PHPTính tổng của các chữ số của môt số nguyên nPhân tích số nguyên n thành tích các số nguyên tố trong PHPLiệt kê tất cả số nguyên tố có 5 chữ số trong PHPTìm USCLN và BSCNN của 2 số trong PHPChuyển đổi hệ cơ số trong PHPLiệt kê số Fibonacci nhỏ hơn n và là số nguyên tố trong PHPCheck số nguyên tố trong PHPDãy số Fibonacci trong PHPTính giai thừa trong PHPBài tập PHP có lời giảiLiệt kê tất cả các số nguyên tố nhỏ hơn n trong PHP in4tintuc.com on facebook Học Lập Trình Online Miễn Phí – in4tintuc.com

Danh sách bài học

Học java Học servlet Học jsp Học Hibernate Học Struts2 Học Spring

Học SQL

Câu hỏi phỏng vấn

201 câu hỏi phỏng vấn java 25 câu hỏi phỏng vấn servlet 75 câu hỏi phỏng vấn jsp 52 câu hỏi phỏng vấn Hibernate 70 câu hỏi phỏng vấn Spring

57 câu hỏi phỏng vấn SQL

About in4tintuc.com

Hệ thống bài học trên in4tintuc.com bao gồm các bài lý thuyết và thực hành về các công nghệ java và công nghệ web. Các bài lý thuyết trên hệ thống in4tintuc.com được tham khảo và tổng hợp từ các trang http://javatpoint.com, http://www.tutorialspoint.com, http://docs.oracle.com/en …

Scroll back to top

Xem thêm: Tuyển Lập Trình Viên Php Mới Ra Trường, Việc Làm Tại Hà Nội

Copyright © 2016 in4tintuc.com all rights reserved. | in4tintuc.com team | Liên hệ | Chính sách – riêng tư | sitemap.html | sitemap_index.xml