M33作业

1:编写函数实现两个数字做为参数,返回最大值

#!/bin/bash

pd() {
N1=`echo "$1-$2"|bc`
if [ $# -eq 2 ];then
if (echo "$1 $2"|grep -o "[^[:digit:]\.[:space:]]">/dev/null);then
        echo "必须是纯数字"
else
if (echo $N1| grep -o "^-">/dev/null);then
        echo "Max: $2"
else
        echo "Max: $1"
fi
fi
else
        echo "只能输入2个数为参数:"
fi
}
pd $1 $2

2:斐波那契数列又称黄金分割数列,因数学家列昂纳多·斐波那契以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:0、1、1、2、3、5、8、13、21、34、……,斐波纳契数列以如下被以递归的方法定义:F(0)=0,F(1)=1,F(n)=F(n-1)+F(n-2)(n≥2)

#!/bin/bash
sz(){
for n in $(seq 3 $1);do
f[$n]=$[${f[$n-1]}+${f[$n-2]}]
echo ${f[$n]}
done
}
sz $1

3:1.)执行时会询问,请输入要创建的用户名称(当用户超时8秒不输入,提示超时并退出),脚本会检测用户名是否已经存在,若已存在,则提示用户已存在,是否要为其设置密码,如否,则继续回到第1步,询问用户另一个用户名。如是,进入第3步。
2.)如第1步完成,则会创建指定用户,然后脚本继续问用户是否为新用户设置密码,如否,则返回第1步继续创建其他用户,如是,则进入第3步
3.)为用户设置密码,要求密码要验证2次,2次一致才可通过。同时密码要满足复杂性要求,要求如下:
密码至少8个字符长度,密码必须包含 大写,小写字母,数字,和#@!,._ 这之中的三种字符。 如不满足,则提示用户密码太短或太简单,返
回第3步。
且密码不能是 /usr/share/dict/words 已存在的字符,或是,则提示用户密码是个常见单词,然后返回第3步。
用户只能尝试设置新密码3次,若超过3次仍然没有设置出满足要求的密码,则直接返回第1步。
4.)在任何步骤,只要输入exit均可退出脚本。

#!/bin/bash
hs() {
read  -t 8 -p "输入用户名: " Name
if [ "$Name" = "" ];then
echo "限定时间已到"
exit
else
tc
if ( id $Name>/dev/null);then
mmsz
else
useradd $Name
mmsz
fi
#------密码设置---------------
fi
}
mmsz(){

read -p "是否设置密码:(y/n) " pas
tc
case $pas in
        y)

                mmyz;;
        n)
                hs;;

esac
}
#----密码样式---------
mmyz(){
let n++
if [ $n -eq 4 ];then
echo "密码错误输入超过上限"
hs
else
read -p "输入密码8个字符的大小写数字及特殊字符(最少含有其中3类): " pass
tc
gs=`echo $pass|grep -o -e "[[:lower:]]" -e"[[:upper:]]" -e "[0-9]" -e "[@_,.\!]"|tr "[:upper:]" "L"| tr "[:lower:]" "X"|tr "[0-9]" "S"|tr "[@_,.\!]" "T"|grep -o "[[:upper:]]"|sort|uniq|wc -l`
c=`echo $pass|wc -c`
if (grep "$pass" /usr/share/dict/words >/dev/null);then
mmyz
else
if [ $gs -ge 2 -a $c -ge 9 ];then
    read -p "确认密码: " repass
tc
if [ "$pass" = "$repass" ];then
echo $pass | passwd --stdin $Name
echo "密码设置成功"
else
echo "两次输入的密码不一致,请重新输入"
mmyz
fi
else
echo "密码不符合条件"
mmyz
fi
fi
fi
}
tc(){
if [ "$Name" = "exit" -o "$pas" = "exit" -o "$pass" = "exit" -o "$repass" = "exit" ];then
exit
fi
}
hs
Python网络爬虫与推荐算法新闻推荐平台:网络爬虫:通过Python实现新浪新闻的爬取,可爬取新闻页面上的标题、文本、图片、视频链接(保留排版) 推荐算法:权重衰减+标签推荐+区域推荐+热点推荐.zip项目工程资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松复刻,拿到资料包后可轻松复现出一样的项目,本人系统开发经验充足(全领域),有任何使用问题欢迎随时与我联系,我会及时为您解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(如有)等。答辩评审平均分达到96分,放心下载使用!可轻松复现,设计报告也可借鉴此项目,该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的。 【提供帮助】:有任何使用问题欢迎随时与我联系,我会及时解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 下载后请首先打开README文件(如有),项目工程可直接复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值