PHP 课后习题解析与笔记——流程控制语句习题

news2024/11/15 8:27:27

文章目录

  • 📋前言
  • 🎯题目一
  • 🎯题目二
  • 🎯知识点回顾
    • 🧩if...else
    • 🧩switch
    • 🧩while
    • 🧩do...while
    • 🧩for
    • 🧩foreach
  • 📝最后


在这里插入图片描述

📋前言

这篇文章记录一下帮助粉丝朋友解决的 PHP 课后习题,内容很基础,是关于 PHP 流程控制语句的使用练习,题目内容如下图的两题。这里我用 vscode 编译器和 Wampserver 完成这些题目。
在这里插入图片描述
在这里插入图片描述


🎯题目一

php编写函数实现:输入一个整数,判断它能否被 3、5、7 整除,并输出以下信息之一:

  • 能同时被3、5、7整除
  • 能同时被3、5整除
  • 能同时被 3、7整除
  • 能同时被 5、7整除
  • 只能被3、5、7中的一个整除
  • 不能被3、5、7任一个整除
  • 要求:使用函数或方法实现
<?php
function func($number) {
    if ($number % 3 === 0 && $number % 5 === 0 && $number % 7 === 0) {
      return $number." 能同时被3、5、7整除";
    } elseif ($number % 3 === 0 && $number % 5 === 0) {
      return $number." 能同时被3、5整除";
    } elseif ($number % 3 === 0 && $number % 7 === 0) {
      return $number." 能同时被3、7整除";
    } elseif ($number % 5 === 0 && $number % 7 === 0) {
      return $number." 能同时被5、7整除";
    } elseif ($number % 3 === 0) {
      return $number." 只能被3整除";
    } elseif ($number % 5 === 0) {
      return $number." 只能被5整除";
    } elseif ($number % 7 === 0) {
      return $number." 只能被7整除";
    } else {
      return $number." 不能被3、5、7任一个整除";
    }
  }
  
  echo func(105); 
  echo "<br>";
  echo func(35);  
  echo "<br>";
  echo func(21);  
  echo "<br>";
  echo func(15);  
  echo "<br>";
  echo func(9);   
  echo "<br>";
  echo func(10);  
  echo "<br>";
  echo func(28);  
  echo "<br>";
  echo func(11);  
?>

在这里插入图片描述
在上述函数中,我们首先使用模运算符来判断输入的整数 $number 是否能够被 3、5、7 整除。然后根据不同情况返回不同的信息。最后,如果都不满足,则意味着该整数不能被 3、5、7 中的任何一个整除。


🎯题目二

编程实现判断一个字符串是否是 “回文串” 。所谓 “回文串” 是指一个字符串的第一位与最后一位相同,第二位与倒数第二位相同。例如:“159951”、“19891” 是回文串,而 “2011” 不是。

  • 要求:用带有一个输入参数的方法或函数实现,返回值类型为布尔类型。
<?php
function is_palindrome($str) {
    return $str == strrev($str);
 }
 
 // 测试样例
 var_dump(is_palindrome("159951")); // true
 echo "<br>";
 var_dump(is_palindrome("19891"));  // true
 echo "<br>";
 var_dump(is_palindrome("2011"));   // false
 
?>

在这里插入图片描述
这个函数使用了 PHP 内置函数 strrev() 将该字符串反转,然后与原始字符串进行比较。如果两个字符串相等,则返回 true 表示该字符串是一个回文串,否则返回 false 表示该字符串不是一个回文串。

另一种解法(符合本次课后习题的解法)

<?php
function is_Palindrome($str) {
    $len = strlen($str);
    for ($i = 0; $i < $len / 2; $i++) {
        if ($str[$i] !== $str[$len - $i - 1]) {
            return false;
        }
    }
    return true;
}

 // 测试样例
 var_dump(is_palindrome("159951")); // true
 echo "<br>";
 var_dump(is_palindrome("19891"));  // true
 echo "<br>";
 var_dump(is_palindrome("2011"));   // false
 
?>

在这里插入图片描述
这个函数接收一个字符串参数 $str。函数通过计算字符串长度,然后使用循环从头尾同时扫描字符串。如果发现有任何不匹配的字符,就返回 false。如果整个过程没有遇到不匹配的字符,就返回 true,表示该字符串是一个回文串。


🎯知识点回顾

🧩if…else

if...else 语句用于根据给定的条件选择性地执行代码块。它的基本语法如下:

if (condition) {
  // code block to be executed if the condition is true
} else {
  // code block to be executed if the condition is false
}

🧩switch

switch 语句用于根据不同的条件执行不同的代码块。它可以替代多个 if...else 语句。它的基本语法如下:

switch (expr) {
  case value1:
    // code block to be executed if expr = value1
    break;
  case value2:
    // code block to be executed if expr = value2
    break;
  ...
  default:
    // code block to be executed if none of the above conditions are true
}

🧩while

while 循环语句用于重复执行一段代码,只要指定的条件满足。它的基本语法如下:

while (condition) {
  // code block to be executed repeatedly as long as the condition is true
}

🧩do…while

do...while 循环语句与 while 循环语句类似,但是它会首先执行一次代码块,然后再判断条件是否满足。它的基本语法如下:

do {
  // code block to be executed at least once, then repeatedly as long as the condition is true
} while (condition);

🧩for

for 循环语句用于重复执行一段代码,指定循环的起始值、结束值和步长。它的基本语法如下:

for (init; condition; increment) {
  // code block to be executed repeatedly until the condition is false
}

🧩foreach

foreach 循环语句用于遍历数组中的每个元素,并执行相应的代码块。它的基本语法如下:

foreach ($array as $value) {
  // code block to be executed for each value in the array
}

📝最后

这就是 PHP 课后习题——流程控制语句习题的全部内容了,内容很基础,通过这个练习,可以熟悉 PHP 流程控制语句的使用。有其他问题和作业的可以私信或者评论区留言,有求必应!
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/658193.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

chatgpt赋能python:Python如何遍历文件中的数据

Python如何遍历文件中的数据 Python是一种优秀的编程语言&#xff0c;它在数据处理和文件操作方面非常强大。在本篇文章中&#xff0c;我们将讨论如何使用Python遍历文件中的数据。 什么是遍历文件? 在Python中&#xff0c;遍历文件意味着访问文件中的每一行&#xff0c;并…

油气成因现代模式

根据有机质的性质变化和油气生成沉积有机质的成烃演化可划分为三个阶段&#xff1a;成岩作用阶段、深成作用阶段和准变质作用阶段&#xff1b;相应地又按有机质的成熟程度将有机质成烃演化划分为未成熟阶段、成熟阶段和过成熟阶段&#xff0c;镜质体反射率Ro与有机质的成烃作用…

chatgpt赋能python:Python数据分析入门指南

Python数据分析入门指南 Python已成为数据科学和分析中使用最广泛的编程语言之一。在本指南中&#xff0c;我们将介绍如何使用Python进行数据分析并让您快速上手。 数据分析的基础知识 在开始学习Python进行数据分析之前&#xff0c;您需要了解一些基本的数据分析概念&#…

chatgpt赋能python:Python怎么选取不连续的列

Python怎么选取不连续的列 Python是一种流行的编程语言&#xff0c;可供人们进行多种不同的操作&#xff0c;如编写各种应用程序、数据分析、机器学习和Web开发等。对于Python编程人员来说&#xff0c;选取不连续的列是一项常见任务。在本文中&#xff0c;我们将探讨如何使用P…

chatgpt赋能python:Python怎么退出程序:让你轻松掌握退出Python程序的方法

Python怎么退出程序&#xff1a;让你轻松掌握退出Python程序的方法 Python是一种功能强大、易于学习且具有广泛应用的编程语言。在Python开发中&#xff0c;经常需要退出程序&#xff0c;以便在不需要时释放内存和其他资源。那么&#xff0c;Python怎么退出程序&#xff1f;本…

H.264帧结构和RTSP协议源码框架

目录 1、H264编码原理和基本概念 1.1、h.264编码原理 1.2、h.264编码相关的一些概念 2、H264的NAL单元详解 2.1、VCL和NAL的关系 2.2、H.264视频流分析工具 2.3、h264视频流总体分析 2.4、相关概念 3、H264的NAL单元---sps和pps 3.1、sps和pps详解 3.2、H264的profil…

HELLO算法笔记之散列表(哈希)

一、哈希表 建立键 key 与值 value 之间的映射&#xff0c;实现高效的元素查询。输入一个key&#xff0c;以O&#xff08;1&#xff09;获取对应的value 遍历&#xff1a; # 遍历哈希表 # 遍历键值对 key->value for key, value in mapp.items():print(key, "->&q…

REDIS缓存穿透 击穿 雪崩

一、前言 在我们日常的开发中&#xff0c;无不都是使用数据库来进行数据的存储&#xff0c;由于一般的系统任务中通常不会存在高并发的情况&#xff0c;所以这样看起来并没有什么问题&#xff0c;可是一旦涉及大数据量的需求&#xff0c;比如一些商品抢购的情景&#xff0c;或者…

chatgpt赋能python:Python小数运算:解决精度问题的最佳实践

Python小数运算&#xff1a;解决精度问题的最佳实践 在进行小数运算时&#xff0c;Python是一种十分常用的语言&#xff0c;但在进行小数运算时&#xff0c;由于二进制和十进制之间的转换不完全&#xff0c;可能会导致一些精度问题。为了避免这些问题&#xff0c;让我们一起了…

推荐工具D1

Windows右键菜单管理程序&#xff1a; 主要功能 启用或禁用文件、文件夹、新建、发送到、打开方式、自定义文件格式、IE浏览器、WinX等右键菜单项目 对上述场景右键菜单项目进行修改名称、修改图标、导航注册表位置、导航文件位置、永久删除等操作 对上述场景右键菜单自定义添…

meethigher-基于Netty的轻量级Web框架Jooby

Spring-Web的好处是&#xff0c;快速上手、快速成型&#xff0c;且成熟稳定无Bug。 但对于个人而言&#xff0c;这套框架太重了。由此探寻更好的轻量Web框架Jooby&#xff01; 本文源码地址meethigher/jooby-example: 基于Netty的轻量级Web框架Jooby使用示例 一、搭建项目 …

chatgpt赋能python:Python遍历指南:掌握5种常用方法实现高效遍历

Python遍历指南&#xff1a;掌握5种常用方法实现高效遍历 作为一种高效且易学的编程语言&#xff0c;Python在数据处理和分析方面常常被誉为行业标准。在Python中&#xff0c;遍历数据结构是处理数据的基本操作之一。它可以帮助您将大规模数据转换成可视化、文本分析、机器学习…

复杂前端组件 - 拖拽排序功能设计与实现

复杂前端组件 - 拖拽排序功能设计与实现 最终效果 原生实现原理 关于拖拽 标签的图片默认是可以拖动的&#xff08;效果如上图&#xff09; 然而其他的标签&#xff08;div等&#xff09;是不能被拖动的&#xff0c;鼠标点击选择后移动没有拖拽效果&#xff0c;需要添加属性…

dubbo源码阅读之-ExtensionLoader

dubbo源码阅读之-ExtensionLoader 概述构造方法说起extensionPostProcessors 后置处理器初始化实例策略ExtensionInjector 完成ioc 中的set注入 获取扩展点实现类getExtensionClasses 加载普通的扩展点getAdaptiveExtensionClass 加载自适应的扩展点创建Adaptive代理类 获取扩展…

算法刷题-字符串-替换空格

题目&#xff1a;剑指Offer 05.替换空格 力扣题目链接 请实现一个函数&#xff0c;把字符串 s 中的每个空格替换成"%20"。 示例 1&#xff1a; 输入&#xff1a;s “We are happy.” 输出&#xff1a;“We%20are%20happy.” 思路 如果想把这道题目做到极致&…

Python 3 | 菜鸟教程 (一)

目录 一、Python3 简介 二、Python 发展历史 三、Python 特点 &#xff08;一&#xff09;易于学习 &#xff08;二&#xff09;易于阅读 &#xff08;三&#xff09;易于维护 &#xff08;四&#xff09;一个广泛的标准库 &#xff08;五&#xff09;互动模式 &#…

【C】static关键字详解

概述 static的汉语意思是静态的&#xff0c;在C语言中static关键字可以用来修饰局部变量、全局变量和函数。 在这里给大家补充一个知识&#xff0c;我们的数据在内存中存储时&#xff0c;大概分为3个区域。 1.栈区&#xff1a;我们创建的局部变量、形参等一般就存放在这个区域…

Python3 数字(Number)与字符串 | 菜鸟教程(五)

目录 一、Python3 数字(Number) &#xff08;一&#xff09;Python 数字数据类型用于存储数值。 1、以下实例在变量赋值时 Number 对象将被创建&#xff1a; 2、您也可以使用del语句删除一些数字对象的引用。 3、您可以通过使用del语句删除单个或多个对象的引用 &#xff08;…

Golang每日一练(leetDay0100) 数据流中位数、二叉树序列化

目录 295. 数据流的中位数 Find-median-from-data-stream &#x1f31f;&#x1f31f;&#x1f31f; 297. 二叉树的序列化与反序列化 Serialize-and-deserialize-binary-tree &#x1f31f;&#x1f31f;&#x1f31f; &#x1f31f; 每日一练刷题专栏 &#x1f31f; Rus…

从零开始Vue项目中使用MapboxGL开发三维地图教程(六)加载点、线、面图层以及三维面图层(白模)

目录 1、加载点图层2、加载线和面图层3、加载三维面图层&#xff08;白模&#xff09; 1、加载点图层 开发地图应用时&#xff0c;加载POI等点状数据&#xff0c;显示文字或者图标信息&#xff0c;mapbox-gl对应使用的是符号图层&#xff08;symbol&#xff09;&#xff0c;下面…