求1+2+3+4+...,和超过10000止
2015-05-21shell,c,python实现思路类似。seq -f %02g 12
1、shell实现while循环
#!/bin/sh
sum=0
i=0
while [ $sum -lt 10000 ];
do
i=$(($i+1)); #or ((i++));
sum=$(($sum+$i)); #or ((sum=sum+i));
done
echo $i,$sum
2、c实现while循环
#include "stdio.h"
int main()
{
int sum=0;
int i=0;
while(sum<10000) {
i++; sum=sum+i;
}
printf("%d,%d\n",i,sum);
return 0;
}
3、shell实现for循环
#!/bin/sh
sum=0
for((i=1;;i++));
do
sum=$(($sum+$i))
#or ((sum=sum+i))
if [ $sum -gt 10000 ];then
break;
fi
done
echo $i,$sum
4、c实现for循环
#include "stdio.h"
int main() {
int sum=0;
int i;
for(i=1;;i++) {
sum=sum+i;
if(sum>10000){
break;
}
}
printf("%d\n",sum);
return 0;
}
5、do/while实现
#include "stdio.h"
int main()
{
int sum=0;
int i=0;
do
{
i++;
sum=sum+i;
}while(sum<10000);
printf("%d,%d\n",i,sum);
return 0;
}
6、python实现while循环
#!/usr/bin/python
sum=0
i=0
while sum < 10000 :
i=i+1;
sum=sum+i;
print i,sum;
7、seq
seq -f %02g 12
for x in $(seq 3 2 32);do
echo $x
done
for((x=1;x<31;x=x+2));do echo $x done
分类:Linux | 标签: shell |