伪代码——基础语法入门

1、简介

  • 伪代码是一种用来描述算法或程序逻辑的抽象化编码方式,它不依赖于任何特定的编程语言语法,而是使用类似自然语言的形式来描述算法步骤。通常用于算法设计、教学和沟通,伪代码可以更直观地表达问题的解决方案,而不必受限于具体编程语言的语法结构。
  • 通过伪代码,程序员可以在实现代码之前更清晰地思考算法的逻辑和流程。
  • 伪代码可以和流程图相互转换,它们是对算法的描述。

2、基本语法

  • 算法用 Begin 开始,以 End 结束(如果只表示算法的中间部分可以不要)。
  • 每一条指令,占一行。指令结束不使用任何符号。
  • 注释用 // 表示。
    • int a  // 定义整形变量a
  • print input 表示输出和输入。
  • 表示赋值
    • a ← 3
      a = 3
  • 用缩进表示代码块的结构,如果if、while、for等语句有多个子语句需要用 { }
  • 条件分支
    • if n > 0 thenprint
      else if n < 0 thenprint
      elseprint
      end if
  • 循环语句
    • (1)while循环
      n ← 10
      while n > 0 doprint ("n =" + n)n ← n-1
      end while(2)for循环
      for i ← 0 to 100 doprint ("hello, world!")
      end for(3)遍历某个集合
      // A是一个集合
      for each i in A doprint i
      end for
  • [ ] 表示数组。
    • a[1...10]  // a[上界...下界]
  • 函数
    • //必要情况下,附上说明函数功能以及返回值类型,格式如下
      //返回值类型:功能说明
      function func_name(x, y)...return x + y
      end func
    • 复杂的函数和算法可以用文字描述。
  • 运算符
    • 幂运算 ^
      取模 mod
      逻辑与 and
      逻辑或 or
      逻辑非 not
      逻辑异或 xor
      (其他与C语言符号相同)

3、案例

  • python代码
    • # 求1-100的和
      sum = 0
      for i in range(1, 101):sum = sum + i
      print(sum)
  • 伪代码
    • Beginsum ⬅ 0for i ⬅ 1 to 100sum ⬅ sum + iprint sum
      End

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

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

相关文章

Ubuntu 22.04 配置VirtualBox安装Windows 10虚拟机

Ubuntu 22.04 配置VirtualBox安装Windows 10虚拟机 文章目录 Ubuntu 22.04 配置VirtualBox安装Windows 10虚拟机1.安装virtualbox2.下载Window.iso文件并载入3.问题解决3.1 Kernel driver not installed (rc-1908)3.2 VT-x is disabled in the BIOS for all CPU modes 4.安装Wi…

【python】python 模块学习之--Fabric

基础一&#xff1a; #!/usr/bin/env pythonfrom fabric.api import *env.userrootenv.hosts[218.78.186.162,125.208.12.56]env.passwords{ root218.78.186.162:22:XXX,root125.208.12.56:22:XXXX0}runs_once ####runs_once代表只执行一次def local_tas…

在开源框架使用自有数据集的方法-以增量学习工具箱PyCIL为例

回答多位朋友提出的&#xff0c;如何在开源框架使用自有数据集。思路是理解开源代码的设计方法&#xff0c;根据其设计方法增加相应的代码。 具体方法如下&#xff1a; 1.查看开源代码提供者的说明 https://github.com/G-U-N/PyCIL#datasets&#xff0c;这里提供了入手的起点…

带你实现一个github注册页面的星空顶

带你实现一个github注册页面的星空顶 github的注册页面可以说是非常的好看&#xff0c;如果没有看过的可以看下面的图片&#xff1a; 那么要如何实现下面的这个效果呢&#xff1f; 首先我们研究一下他的这个官网 首先我看到的后面的这个背景&#xff0c;是不是一个纯色的背景…

Linux安装Docker完整教程及配置阿里云镜像源

官网文档地址 安装方法 1、查看服务器内核版本 Docker要求CentOS系统的内核版本高于3.10 uname -r #通过 uname -r 命令查看你当前的内核版本2、首先卸载已安装的Docker&#xff08;如果有&#xff09; 2.1 确保yum包更新到最新 yum update2.2 清除原有的docker&#xff0c…

02_Fixture定位,Caliper卡尺工具,几何学工具

Fixture定位工具 需求: 测量工件的尺寸 使用Caliper(卡尺)工具 这个时候需要借助Fixture工具 VisionPro中的图像空间 “” 图像的当前空间&#xff0c;即CogImage中的“SelectedSpaceName”表示的名字空间 “#” 像素空间&#xff0c;即坐标原点为图片左上角的坐标空间&am…

TCP/IP协议—MQTT

TCP/IP协议—MQTT MQTT协议MQTT协议特点MQTT通信流程MQTT协议概念 MQTT报文固定报头可变报头有效载荷 MQTT协议 消息队列遥测传输&#xff08;Message Queuing Telemetry Transport&#xff0c;MQTT&#xff09;是一个基于客户端-服务器的消息发布/订阅传输协议。它的设计思想…

windows上安装make

下载地址 https://sourceforge.net/projects/gnuwin32/ 点击框中的下载&#xff0c;下载后安装。把安装路径添加到环境变量 PATH 中. 打开cmd&#xff0c;验证是否生效 安装包下载地址&#xff1a; https://download.csdn.net/download/qq_36314864/89163210

python读取DBF数据

DBF文件通常是由数据库软件&#xff08;如FoxPro或dBASE&#xff09;创建的数据库文件。Python中并没有直接读取DBF文件的内置库&#xff0c;但你可以使用第三方库如dbfread来读取DBF文件。 首先&#xff0c;你需要安装dbfread库。你可以使用pip来安装&#xff1a; pip insta…

【人工智能书籍分享】从ChatGPT到AIGC:人工智能重塑千行百业

今天又来给大家推荐一本人工智能方面的书籍<从ChatGPT到AIGC&#xff1a;人工智能重塑千行百业>。本书介绍了ChatGPT的前世今生&#xff0c;重点聚焦普通人如何使用ChatGPT获得工作和生活效率的提升&#xff0c;各行各业如何通过ChatGPT来改变自己的赛道状态。 使用Chat…

vue中params和query的区别

用法&#xff1a;query要用path来引入&#xff0c;params要用name来引入&#xff0c;接收参数都是类似的&#xff0c;分别是 this.$route.query.name 和 this.$route.params.name 。 url地址显示&#xff1a;query更加类似于ajax中get传参&#xff0c;params则类似于post&…

免费SSL证书的不香吗?四步轻松搞定

随着技术的发展和普及&#xff0c;现在有许多机构提供免费的SSL证书&#xff0c;使得即便是拥有有限预算的网站也能够享受到基本的加密服务。几乎所有的公有云服务商都提供了免费版ssl&#xff0c;如阿里云曾推出免费型DV SSL证书&#xff0c;腾讯云和百度云也有类似的免费SSL证…

平衡车设计——硬件篇

在本文开始之前我忍不住想吐槽一个事情&#xff0c;就在前两天晚上&#xff0c;我满意地装完平衡车&#xff0c;给他取了个名字叫瓦力&#xff08;没错&#xff0c;就是机器人总动员里的瓦力&#xff09;&#xff0c;他长这个样子。 把他放到桌子上放了一夜&#xff0c;第二天早…

ffmpeg buffer管理

除了内存管理之外&#xff0c;数据的前后级流转也涉及到buffer管理. 个人觉得ffmpeg里面的buffer管理实现极为巧妙&#xff0c;也很值得借鉴. 概述 重要数据结构 AVBufferPool 在libavutil/buffer_internal.h中定义&#xff0c;为内部数据结构&#xff0c;不能在应用程序中直…

基于Java的XxlCrawler网络信息爬取实战-以中国地震台网为例

目录 前言 一、信息网站介绍 1、网站介绍 2、 地震历史信息 3、 历史信息接口分析 二、XxlCrawler组件 1、关于XxlCrawler 2、核心概念介绍 三、实际信息爬取 1、新建maven项目 2、新建model层对象 3、实际爬取 总结 前言 如今&#xff0c;只要谈起网络信息爬取也就…

TCP/IP协议—HTTP

TCP/IP协议—HTTP HTTP协议HTTP通讯特点HTTP通讯流程 HTTP请求报文请求方法 HTTP应答报文状态码 HTTP协议 超文本传输协议&#xff08;Hypertext Transfer Protocol&#xff0c;HTTP&#xff09;是一种请求-响应的协议&#xff0c;用户可以通过HTTP向服务器上传、下载数据。HT…

JavaScript防抖函数执行多个事件处理函数,监听浏览器窗口拖拽事件(Vue防抖函数执行多个事件处理函数)

简介&#xff1a;当用户调整浏览器窗口大小时&#xff0c;浏览器会触发 resize 事件。通常&#xff0c;我们希望在窗口大小改变时执行一些操作&#xff0c;但是如果用户频繁调整窗口大小&#xff0c;可能会导致这些操作被频繁触发&#xff0c;影响页面性能和用户体验。这时候&a…

Java调用WebServices接口

当拿到一个WebServices接口时&#xff0c;首先用接口测试工具调用一下接口&#xff0c;看是否可以正常发送请求和获取返回接口&#xff0c;确保接口是没有问题的&#xff0c;可以用SoapUI工具进行测试。 下面以一个免费的天气预报接口为例&#xff0c;记录整个接口的调用过程。…

初学python记录:力扣2007. 从双倍数组中还原原数组

题目&#xff1a; 一个整数数组 original 可以转变成一个 双倍 数组 changed &#xff0c;转变方式为将 original 中每个元素 值乘以 2 加入数组中&#xff0c;然后将所有元素 随机打乱 。 给你一个数组 changed &#xff0c;如果 change 是 双倍 数组&#xff0c;那么请你返…

Python基础:【练手小实验系列】面向对象编程

文章目录 题目练习题1: 定义一个点类练习题2: 创建一个矩形类练习题3: 银行账户类练习题4: 学生信息管理练习题5: 车辆管理系统参考答案练习题1: 定义一个点类练习题2: 创建一个矩形类练习题3: 银行账户类练习题4: 学生信息管理练习题5: 车辆管理系统题目 练习题1: 定义一个点…