当前位置: 首页 > news >正文

运维高级-day01

shell回顾

1、快速生成版权控制信息,具体的内容自己替换

[root@ scripts]# cat ~/.vimrc
autocmd BufNewFile *.py,*.cc,*.sh,*.java exec ":call SetTitle()"
func SetTitle()
if expand("%:e") == 'sh'
call setline(1,"#!/bin/bash")
call setline(2,
"##############################################################")
call setline(3, "# File Name: ".expand("%"))
call setline(4, "# Version: V1.0")
call setline(5, "# Author: kongd")
call setline(6, "# Email: kongd@163.com")
call setline(7, "# Organization: http://www.cnblogs.com/kongd/")
call setline(8, "# Created Time : ".strftime("%F %T"))
call setline(9, "# Description:")
call setline(10,
"##############################################################")
call setline(11, "")
endif
endfunc

2、题型复习

案例一:输入网卡的名字,来输出网卡的IP

  1. 问题:参数后判断要加“”名字为空时显示ip

  2. 分析:把本机的所有网卡名列出来,来引导用户输入。使用命令列出所有网卡信息:ifconfig/ip a

    设计一个函数,把网卡名作为参数,函数返回网卡的IP

    在获取某个网卡IP时,考虑网卡有多个IP地址(或为空IP的网卡)

  3. 流程图:

  1. 实现:

  1. 实现解析:

    1. ) grep awk,反复运行和推敲命令,来分析执行结果

    2. ) 死循环。当输入错误或者为空,继续输入–>输入正确。

    3. ) while循环continue、break(逻辑性) 逻辑判断参数

    4. ) get_ip函数调用

  2. 结果验证

案例二:提示用户输入年份后判断该年是否为闰年

  1. 问题:判断闰年

  2. 分析

    1. 提示用户输入年份

    2. 判断用户输入年份

    3. 考虑用户输入年份是否为空(或是否为数字)

    4. 输入为数字时,进行计算

    5. 被四整除 但不能被 一百整除的是闰年,或者能被四百整除的是闰年

  3. 流程图:

  1. 实现:

  1. 实现解析:

    1. 用户输入为非数字时,提示输入不准确,退出

    2. 用户输入是数字时,判断是否是闰年

  2. 结果验证

案例三:求水仙花数

"水仙花数"是指一个三位数, 其各位数字立方和等于该数 本身。例如:153是一个"水仙花数", 因为153=1的三次方+5的三次方+3的三次方。

案例四:鸡兔同笼

一只笼子里有好多鸡和兔子,看头数有35只头,看腿有94只腿,问各有鸡和兔多少只?

案例五:一元钱

把一元钱换成一分,二分,五分硬币(每种至少用一枚),问有多少种换法?并且把每种换法输出

分析:

1、一分钱范围:x: 最小1,最大为100-2-5=93

2、二分钱范围:y: 最小1,最大(100-1-5)/2=47

3、五分钱范围z: 最新1,最大(100-1-2)/5=19

三层循环解决问题:

案例六:素数判断

判断 101-200 之间有多少个素数,并输出在此范围内的所有素数。

分析:素数(质数):只能被1和其本身整除的整数

判断素数的方法:用一个数分别去除以 2 到这个数的平方根(sqrt)。如果能被整除,则表明此数不是素数,反之是素数。

思路:本题目有两个所求的目标,一为 101-200 之内的素数个数,二为输出所有素数。

案例七:大小排序

题目输入三个整数 x、y、z,请把这三个数由小到大输出。

程序分析从三个数中分别比较某两个数,将大的数换到后面。

c语言函数交换数据

案例八:猴子吃桃

题目猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少个桃子?

程序分析采取逆向思维的方法,从后往前推断,列出通项公式。

思路通过题干我们可以得到基本信息是若有 n 个桃子,第一天则吃了 n/2 + 1 个桃子,即剩下 n/2 - 1 个桃子。若假设某一天剩下的桃子数为 x,前一天剩下的桃子数为 y,根据上面的关系我们可以得到:( x + 1 ) ∗ 2 = y

简单计算一下,我们已知最后一天剩 1 个,根据推算的公式可以得到倒数第二天剩下 4 个,同理根据递归算法即可求出第一天剩下多少个。在这里需要注意的是,猴子是到第十天想吃(还没吃)的时候发现只剩一个了,所以循环的次数要注意是 9 次。循环递归计算之后输出结果即可。若想查看每天的结果也可输出查看

c语言递归实现

案例九:打印菱形

题目打印出如下图案(菱形)

程序分析先把图形分成两部分来看待,前四行一个规律,后三行一个规律,利用双重 for循环,第一层控制行,第二层控制列。我们要决定每一层循环的次数:外层不必多说是 4 次(i = 4)内层空格部分,空格数是随着行数的增加而减少的,规律为行数 + 1,空格数 - 1,所以循环次数是从 0到 (4 - i)次。内层星号部分,星号数是随着行数的增加而增加的,规律为行数 + 1,星号数 + 2,所以循环次数是从 0到 (i * 2)次。下三行同理,注意循环的次数和初始值即可。


案例十:冒泡排序

题目任意输入 10 个数,并对这 10 个数进行从小到大的排序。

程序分析对于这种数字排序问题,我们一般用冒泡排序的方法来进行排序。

思路首先我们应该知道什么是冒泡排序,冒泡排序是依次比较两个相邻的元素,如果顺序(如从大到小、首字母从Z到A)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素列已经排序完成。这里我们需要分别以每个数为基准和其他的数依次进行比较,所以要用双重 for 循环,外层控制被比较的数,内层循环控制轮换比较数。由于要从小到大排序,判断条件是第一层的数若大于第二层的数,则将两个数交换。

 

 

相关文章:

运维高级-day01

shell回顾 1、快速生成版权控制信息,具体的内容自己替换 [root scripts]# cat ~/.vimrc autocmd BufNewFile *.py,*.cc,*.sh,*.java exec ":call SetTitle()" func SetTitle() if expand("%:e") sh call setline(1,"#!/bin/bash")…...

含分布式电源的配电网可靠性评估matlab程序

微❤关注“电气仔推送”获得资料(专享优惠) 参考文献: 基于仿射最小路法的含分布式电源配电网可靠性分析——熊小萍 主要内容: 通过概率模型和时序模型分别进行建模,实现基于概率模型最小路法的含分布式电源配电网…...

k8s docker总结特殊点

k8s docker总结特殊点 前言一、docker 的驱动。1、cgroup:(Control Groups)2、日志驱动(log driver)3、存储驱动4、网络驱动: 二、k8s中网络插件(常用calico,次flannel)**Flannel:**…...

区块链技术与应用 【全国职业院校技能大赛国赛题目解析】第四套区块链应用后端开发

第四套区块链应用后端开发 环境 : ubuntu20 fisco : 2.8.0 springboot 2.1.1 fisco-java-sdk: 2.7.2 maven 3.8.8 前言 这套后端样题,只涉及调用fisco的系统接口,不涉及此食品溯源项目的业务接口,所以我就直接生成一个springboot项目进行完成此题目。 请提前准备好一…...

《向量数据库指南》——向量数据库Milvus Cloud搭建Excel公式编辑器助手

引言 在日常工作中,Excel是我们经常使用的办公工具,而熟练应用Excel公式对于提高工作效率非常重要。然而,有时候我们会遇到一些复杂的需求,需要用到较为专业的Excel公式,而这正是Excel公式编辑器助手的用武之地。本文将介绍如何利用向量数据库Milvus Cloud搭建GPT大模型和…...

qgis添加arcgis的FeatureServer

左侧浏览器-ArcGIS要素服务器-新建连接 http://sampleserver6.arcgisonline.com/arcgis/rest/services/ 展开-双击即可...

java进阶---多态

多态的概述 什么是多态 同一个对象,在不同时刻表现出来的不同形态 多态的前提 要有继承或实现关系要有方法的重写要有父类引用指向子类对象 多态的具体实现 对象的多态是多态的核心和重点 规则: 一个对象的编译类型与运行类型可以不一致编译类型在定义对象时,就确定了,…...

常用脚本-持续更新(文件重命名、视频抽帧、拆帧、删除冗余文件、yolo2xml、转换图片格式、修改xml)

所有代码位置:Learning-Notebook-Codes/Python/常用脚本 1. 文件重命名 脚本路径:codes/files_rename.py脚本说明:可以自动重命名某个文件夹下指定类型的文件。 修改前文件名称: img1.jpg修改后文件名称: Le0v1n-20231123-X-0001.jpg imp…...

百度文心一言(千帆大模型)聊天API使用指导

开篇不得不吐槽下百度,百度智能云平台首页跳转千帆大模型平台的按钮太多了,不同按钮跳转不同的子页面,不熟悉的,能把人找懵。入口太多,就导致用户不知道从何开始。本文就从一个前端开发人员的角度,教大家快…...

C++知识点总结(7):玩转高精度除法

一、复习高低精度 一个数分为两种类型: 1. 高精度数,即一个长度特别长的数,使用 long long 也无法存储的一类数字。 2. 低精度数,即一个普通的数,可以使用 long long 来存储。 由于高精度除法比较简单,…...

LeetCode算法题解(动态规划,背包问题)|LeetCode1049. 最后一块石头的重量 II、LeetCode494. 目标和

一、LeetCode1049. 最后一块石头的重量 II 题目链接:1049. 最后一块石头的重量 II 题目描述: 有一堆石头,用整数数组 stones 表示。其中 stones[i] 表示第 i 块石头的重量。 每一回合,从中选出任意两块石头,然后将…...

使用Pytorch从零开始构建LSTM

长短期记忆(LSTM)网络已被广泛用于解决各种顺序任务。让我们了解这些网络如何工作以及如何实施它们。 就像我们一样,循环神经网络(RNN)也可能很健忘。这种与短期记忆的斗争导致 RNN 在大多数任务中失去有效性。不过&a…...

qRT-PCR相对定量计算详解qPCR相对定量计算方式——2^-(∆∆Ct) deta t

做完转录组分析之后,一般都要求做qRT-PCR来验证二代测序得到的转录本表达是否可靠。荧光定量PCR是一种相对表达定量的方法,他的计算方法有很多,常用的相对定量数据分析方法有双标曲线法,ΔCt法,2^-ΔΔCt法(Livak法)&a…...

BART non-Cartesian 重建:并行成像 压缩感知

本文主要使用并行成像和压缩感知方法实现non-Cartesian MRI 数据的重建。 目录 1 自定义MRI kspace trajectory 2 自定义该 trajectory下的多通道MRI数据 3 使用NUFFT 直接做欠采样数据的重建...

UDP客户端使用connect与UDP服务器使用send函数和recv函数收发数据

服务器代码编译运行 服务器udpconnectToServer.c的代码如下&#xff1a; #include<stdio.h> #include<stdlib.h> #include<string.h> #include<unistd.h> #include<arpa/inet.h> #include<sys/socket.h> #include<errno.h> #inclu…...

SLAM ORB-SLAM2(9)闭环检测器

SLAM ORB-SLAM2(9)闭环检测器 1. LoopClosing2. 成员变量2.1. 系统成员变量2.2. 关键帧2.3. 共视关系2.4. 闭环检测2.5. 全局 BA(光束法平差)2.6. 其他操作3. 成员函数3.1. 构造函数3.2. 主要函数3.3. 更新操作3.4. 标识设置和查询接口1. LoopClosing 在《SLAM ORB-SLAM2(…...

目标检测YOLO系列从入门到精通技术详解100篇-【目标检测】SLAM(基础篇)(二)

目录 知识储备 概率论基础 边缘概率 联合概率和独立 独立与条件独立...

TikTok 将开源“云中和”边缘加速器

“从某种意义上说&#xff0c;我们正在努力破解云的骨干网&#xff0c;以造福于我们&#xff0c;”TikTok产品管理基础设施经理Vikram Siwach指出&#xff0c;他解释了该公司即将开源的“全球服务加速器”的好处&#xff0c;这是一个可编程的边缘平台&#xff0c;可将应用程序需…...

【通讯协议】REST API vs GraphQL

在API设计方面&#xff0c;REST和GraphQL各有缺点。下图显示了 REST 和 GraphQL 之间的快速比较。 REST 使用标准 HTTP 方法&#xff08;如 GET、POST、PUT、DELETE&#xff09;进行 CRUD 操作。当您需要在单独的服务/应用程序之间提供简单、统一的接口时&#xff0c;效果很好…...

Linux在安装epel-release时,报错epel-release-7-14.noarch.rpm 的公钥尚未安装

Linux在安装epel-release时报错&#xff1a; [rootXWDBDEV01 ~]# yum install epel-release 已加载插件&#xff1a;fastestmirror, langpacks, product-id, search-disabled-repos, subscription-managerThis system is not registered with an entitlement server. You can …...

日语AI面试高效通关秘籍:专业解读与青柚面试智能助攻

在如今就业市场竞争日益激烈的背景下&#xff0c;越来越多的求职者将目光投向了日本及中日双语岗位。但是&#xff0c;一场日语面试往往让许多人感到步履维艰。你是否也曾因为面试官抛出的“刁钻问题”而心生畏惧&#xff1f;面对生疏的日语交流环境&#xff0c;即便提前恶补了…...

前端倒计时误差!

提示:记录工作中遇到的需求及解决办法 文章目录 前言一、误差从何而来?二、五大解决方案1. 动态校准法(基础版)2. Web Worker 计时3. 服务器时间同步4. Performance API 高精度计时5. 页面可见性API优化三、生产环境最佳实践四、终极解决方案架构前言 前几天听说公司某个项…...

关于iview组件中使用 table , 绑定序号分页后序号从1开始的解决方案

问题描述&#xff1a;iview使用table 中type: "index",分页之后 &#xff0c;索引还是从1开始&#xff0c;试过绑定后台返回数据的id, 这种方法可行&#xff0c;就是后台返回数据的每个页面id都不完全是按照从1开始的升序&#xff0c;因此百度了下&#xff0c;找到了…...

生成 Git SSH 证书

&#x1f511; 1. ​​生成 SSH 密钥对​​ 在终端&#xff08;Windows 使用 Git Bash&#xff0c;Mac/Linux 使用 Terminal&#xff09;执行命令&#xff1a; ssh-keygen -t rsa -b 4096 -C "your_emailexample.com" ​​参数说明​​&#xff1a; -t rsa&#x…...

在WSL2的Ubuntu镜像中安装Docker

Docker官网链接: https://docs.docker.com/engine/install/ubuntu/ 1、运行以下命令卸载所有冲突的软件包&#xff1a; for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done2、设置Docker…...

Maven 概述、安装、配置、仓库、私服详解

目录 1、Maven 概述 1.1 Maven 的定义 1.2 Maven 解决的问题 1.3 Maven 的核心特性与优势 2、Maven 安装 2.1 下载 Maven 2.2 安装配置 Maven 2.3 测试安装 2.4 修改 Maven 本地仓库的默认路径 3、Maven 配置 3.1 配置本地仓库 3.2 配置 JDK 3.3 IDEA 配置本地 Ma…...

MFC 抛体运动模拟:常见问题解决与界面美化

在 MFC 中开发抛体运动模拟程序时,我们常遇到 轨迹残留、无效刷新、视觉单调、物理逻辑瑕疵 等问题。本文将针对这些痛点,详细解析原因并提供解决方案,同时兼顾界面美化,让模拟效果更专业、更高效。 问题一:历史轨迹与小球残影残留 现象 小球运动后,历史位置的 “残影”…...

【Nginx】使用 Nginx+Lua 实现基于 IP 的访问频率限制

使用 NginxLua 实现基于 IP 的访问频率限制 在高并发场景下&#xff0c;限制某个 IP 的访问频率是非常重要的&#xff0c;可以有效防止恶意攻击或错误配置导致的服务宕机。以下是一个详细的实现方案&#xff0c;使用 Nginx 和 Lua 脚本结合 Redis 来实现基于 IP 的访问频率限制…...

STM32标准库-ADC数模转换器

文章目录 一、ADC1.1简介1. 2逐次逼近型ADC1.3ADC框图1.4ADC基本结构1.4.1 信号 “上车点”&#xff1a;输入模块&#xff08;GPIO、温度、V_REFINT&#xff09;1.4.2 信号 “调度站”&#xff1a;多路开关1.4.3 信号 “加工厂”&#xff1a;ADC 转换器&#xff08;规则组 注入…...

轻量级Docker管理工具Docker Switchboard

简介 什么是 Docker Switchboard &#xff1f; Docker Switchboard 是一个轻量级的 Web 应用程序&#xff0c;用于管理 Docker 容器。它提供了一个干净、用户友好的界面来启动、停止和监控主机上运行的容器&#xff0c;使其成为本地开发、家庭实验室或小型服务器设置的理想选择…...