VietTuts

Tự Học Lập Trình Online

  • Home
  • Java
  • Servlet
  • JSP
  • Struts2
  • Hibernate
  • Spring
  • MyBatis
  • Java WS
  • C
  • C++
  • C#
  • Python
  • PHP
  • Excel
  • VBA
  • Web
    • JavaScript
    • JQUERY
    • JSON
    • AJAX
    • CSS
    • HTML
    • HTML5
    • Node.js
    • Angular 7
  • SQL
    • MySQL
    • SQL Server
  • Misc
    • Eclipse
    • Phần mềm tiện ích
    • Cấu trúc DL&GT
    • Selenium Test
PHP Cơ Bản PHP Function Mảng (Array) trong PHP String trong PHP

Bài Tập PHP

Danh sách bài tập PHP

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

Vẽ tam giác trong PHP Vẽ hình chữ nhật trong PHP Bài toán FizzBuzz trong PHP Bảng cửu chương trong PHP Giải phương trình bậc 2 trong PHP Tính giai thừa trong PHP Dãy số Fibonacci trong PHP Check số nguyên tố trong PHP Liệt kê số Fibonacci nhỏ hơn n và là số nguyên tố Chuyển đổi hệ cơ số trong PHP Tìm USCLN và BSCNN của 2 số Liệt kê tất cả các số nguyên tố nhỏ hơn n Liệt kê n số nguyên tố đầu tiên Liệt kê tất cả số nguyên tố có 5 chữ số Phân tích số nguyên n thành tích các số nguyên tố Tính tổng của các chữ số của môt số nguyên n Tìm số thuận nghịch trong PHP

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

Tính độ dài của một chuỗi – strlen() Đảo ngược chuỗi – strrev()
Xử lý Form trong PHP Xử lý file trong PHP PHP kết nối với MySQL Xử lý lỗi trong PHP include và require trong PHP
1 / 3
❮ ❯

Tìm số thuận nghịch trong PHP


Tính tổng của các chữ số của môt số nguyên n
Tính độ dài của một chuỗi – strlen()

Nội dung chính

  • Đề bài
  • Lời giải
  • 1. Sử dụng thuật toán
  • 2. Chuyển số thành chuỗi, so sánh chuỗi đảo ngược với chuỗi ban đầu

Đề bài

Viết chương trình PHP tìm các số thuận nghịch có 6 chữ số.

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ó 4 chữ số.

Tính tổng của các chữ số của môt số nguyên n trong php

Lời giải

  • Sử dụng thuật toán.
  • Chuyển số thành chuỗi, so sánh chuỗi đảo ngược với chuỗi ban đầu.

1. Sử dụng thuật toán

Kiểm tra các số đối nhau từ vị trí đầu tiên và từ vị trí cuối cùng vào số chình giữa.


<?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) {
    // phân tích số n thành các chữ số và lưu vào $arrNumbers
    $arrNumbers = array ();
    $count = 0;

    do {
        $arrNumbers [$count] = $n % DEC_10;
        $count ++;
        $n = floor ( $n / DEC_10 );
    } while ( $n > 0 );
    // kiểm tra tính thuận nghịch
    $size = count ( $arrNumbers );
    for($i = 0; $i < ($size / 2); $i ++) {
        if ($arrNumbers [$i] != $arrNumbers [$size - $i - 1]) {
            return false;
        }
    }
    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 ++) {
    if (isThuanNghich ( $i )) {
        echo ($i . "<br>");
        $count ++;
    }
}
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

2. Chuyển số thành chuỗi, so sánh chuỗi đảo ngược với chuỗi ban đầu

Chuyển đổi số đã cho thành chuỗi, đảo ngược chuỗi thành chuỗi nghịch đảo, nếu 2 chuỗi bằng nhau thì số đã cho là số thuận nghịch.


<?php
/**
 * 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) {
    // sử dụng hàm strrev() đảo ngược số n
    $m = strrev($n);
    // so sanh nếu n với m
    if (strcmp($n, $m) == 0) {
        return true;
    }
    return false;
}

// 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 ++) {
    if (isThuanNghich ( $i )) {
        echo ($i . "<br>");
        $count ++;
    }
}
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

Tính tổng của các chữ số của môt số nguyên n
Tính độ dài của một chuỗi – strlen()

Recent Updates

Sắp Tết 2024 Rồi! - Còn bao nhiêu ngày nữa là đến tết 2024?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

VietTuts on facebook

Học Lập Trình Online Miễn Phí - VietTuts.Vn
Danh Sách Bài Học

Học Java | Hibernate | Spring
Học Excel | Excel VBA
Học Servlet | JSP | Struts2
Học C | C++ | C#
Học Python
Học SQL

Bài Tập Có Lời Giải

Bài tập Java
Bài tập C
Bài tập C++
Bài tập C#
Bài tập Python
Ví dụ Excel VBA

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

Scroll back to top

Copyright © 2016 VietTuts.Vn all rights reserved. | Liên hệ | Chính sách - riêng tư | sitemap.html | sitemap_index.xml