shell 水仙花

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell 水仙花相关的知识,希望对你有一定的参考价值。

1.在linux下shell编程100-1000的水仙花数
2.输入1个数判断成绩,用case做!
注意是linux 下的 shell编程
其他语言的不要回复
水仙花数是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身。(例如:1^3 + 5^3 + 3^3 = 153)

bash 求1000以内水仙花数
#!/bin/bash

for (( a=1; a<10; a++ ))
do
for (( b=0; b<10; b++ ))
do
for (( c=0; c<10; c++ ))
do
number1=$((a*100+b*10+c))
number2=$((a**3+b**3+c**3))
if [ $number1 -eq $number2 ]; then
echo "Found number $number1"
fi
done
done
done

bash判断成绩,你的意思是要判断是否及格吗?下面的程序分别判断是小于60,大于60,满分(100),或者是无效输入。将下面的程序存入文件中,比如 my.sh, 然后用 my.sh 85 的方法来判断85分属于什么区间。

#!/bin/bash

case $1 in
[0-9]|[0-5][0-9]) echo "less than 60" ;;
100) echo "full score" ;;
[6-9][0-9]) echo "more than 60" ;;
*) echo "Invalid score $1" ;;
esac
参考技术A

忘了数仙花水是怎样的,说一下.

水仙花和变种水仙花

/***********************************************************************
目的:打印出100-999以内的“水仙花数”,所谓“水仙花数”(Narcissistic number)是指一个三位数,其各位数字立方和等于该数本身
比如:153是一个“水仙花数”,因为153 = (1 * 1 * 1)+(5 * 5 * 5)+(3 * 3 * 3)。
分析:
平台:Visual studio 2017 && windows
*************************************************************************/
📝 实现代码1

#include<stdio.h>
#include<math.h>
int main()
{
	int n = 100;
	while(n <= 999)
	{
		int i = n % 10;//个位
		int j = n / 10 % 10;//十位
		int k = n / 100;//百位
		if(n == pow(i, 3) + pow(j, 3) + pow(k, 3))//同(i * i * i) + (j * j * j) + (k * k * k)
		{
			printf("%d ", n);	
		}
		n++;
	}
	return 0;
}

/***********************************************************************
目的:变种水仙花数 - Lily Number:把任意的数字,从中间拆分成两个数字,比如1461 可以拆分成(1和461),(14和61),(146和1),如果所有拆分后的乘积之和等于自身,则是一个Lily Number:1461=1461+1461+146*1,求出5位数中的所有Lily Number
分析:
平台:Visual studio 2017 && windows
*************************************************************************/
📝 实现代码2

#include<stdio.h>
int main()
{
	int n = 0;
	for (n = 10000; n <= 99999; n++)
	{
		int m = 0;
		int sum = 0;
		for (m = 10; m <= 10000; m *= 10)//拆分
		{
			sum += ((n / m) * (n % m));
		}
		if (n == sum)
		{
			printf("%d ", n);
		}
	}
	return 0;
}

以上是关于shell 水仙花的主要内容,如果未能解决你的问题,请参考以下文章

输出所有“水仙花数”高手请进

C语言 水仙花数 编程题

C语言找出最大水仙花数(水仙花数是3位整数,且各位立方之和等于该数,如153就是水仙花数)

VB编程水仙花数

水仙花数c语言

水仙花和变种水仙花