用for循环算出1-100的和
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用for循环算出1-100的和相关的知识,希望对你有一定的参考价值。
<?php
for($i=1;$i<=100;$i++)
$h=$h+$i;
echo $h;
?>
知道这么写,但是不明白$h=$h+$i;这个式子,还有为什么能得到5050这个数呢
希望能详细的解释下
至于这个式子。我解释一个:
$h = $h + $i;它的意思是$h + $i,然后赋与$h,
这个"="是赋值的意思,并不是我们平常数学中的“等于”意思
$h初始值为0, $i的初始值为1。相加以后等于1,然后赋与$h,
这个代码的累加方式是这样的。
$h = 0 + 1; 结果$h为1;
$h = 1 + 2; 结果$h为3;
$h = 3 + 3; 结果$h为6;
$h = 6 + 4; 结果$h为10;
$h = 10 + 5; 结果$h为15;
$h = 15 + 6; 结果$h为21;
$h = 21 + 7; 结果$h为28;
$h = 28 + 8; 结果$h为36;
$h = 36 + 9; 结果$h为45;
$h = 45 + 10; 结果$h为55;
$h = 55 + 11; 结果$h为66;
,,,,,, 结果$h为4950;
$h = 4950 + 100;
最后累加为5050
以此类推。最后累加$h为5050 参考技术A $h=$h+$i就是说让$h重新赋值,
$i=1时,$h=0+1;$h=1;
$i=2时,这个时候$h=1,进行运算,$h=1+2, 因此$h又被重新赋值了,这时候$h=3;
$i的值在这里就是循环的次数,也就是说循环了2遍,$h做了这么个运算 $h=0+1+2,
如此类推,,$i=100的时候,$h=0+1+2...+99+100本回答被提问者采纳 参考技术B
php 不需要在程序里预先声明变量或者定义变量的值,变量的值将会在运算时,根据上下文来定义它的值。参与运算时,会根据运算符进行类型的转变。
// 例子1var_dump( $a ); // NULL
var_dump( $b + 0 ); // int(0)
var_dump( $c + 1 ); // int(1)
// 例子2
$a = $a + 1;
// (int) $a + 1
// (int) NULL + 1
// 0 + 1
// 1 表达式运算结束,最后,赋值给 $a,即 $a = 1
// 例子3
for($i = 1; $i<=100; $i++)
$h = $h + $i;
// 演示第一次运算:
// 因为 $i = 1 是一个整形,所以会对 $h 进行类型转换,这个是自动完成的
// 由于 $h 参与表达式运算时为声明,所以,$h = NULL,而 $i = 1
// $h = (int) $h + $i
// $h = (int) NULL + 1,(int) NULL = 0
// $h = 0 + 1 = 1,第一次运算结束,$h = 1,$i = 1
// 第二次运算,$i = 2,$h = 1,然后参与 $h = $h + $i 运算,以此类推。
对于程序而言,还是比较简单的,主要是变量赋值和类型的自动转换是关键,这个 php 手册里有比较详细的说明,建议多看下,加深理解。
在js中循环结构for循环求1-100之间能所有能被3整除的数字的和
参考技术A var sum = 0for (var i = 0; i <= 100; i++)
if (i % 3 == 0)
sum += i
console.log(sum); //1683 参考技术B var sum = 0;
for(i=1;i<=100 ;i++)
if(i%3 == 0)
sum = sum+i;//奇数
console.log("被3整除的数的和:" + sum); 参考技术C int sum = 0;
int i;
for(i=1;i<=100;i++)
if(i%3==0)
sum+=i;
System.out.println(sum);
以上是关于用for循环算出1-100的和的主要内容,如果未能解决你的问题,请参考以下文章