求1+2+3+4+...,和超过10000止

2015-05-21

shell,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 | 标签: |

相关日志

评论被关闭!