请高手帮小弟分析一下,下列程序,这是“百鸡”题,小弟看得不是很懂,如能逐句分析更好,叩谢!
var
a,b,c:integer;
begin
a:=0;
b:=0;
while a<=100 div 3 do
begin
a:=a+1;
b:=0;
while b<=(100-a) div 2 do
begin
b:=b+1;
c:=(100-3*a-2*b)*3;
if a+b+c=100 then writeln(a,' ',b,' ',c);
end;
end;
end.
var
a,b,c:integer;
begin
a:=0;
b:=0;
repeat
a:=a+1;
b:=0;
repeat
b:=b+1;
c:=(100-3*a-2*b)*3;
if a+b+c=100 then writeln(a,' ',b,' ',c);
until b>(100-a) div 2;
until a>100 div 3;
end.
Pascal 循环问题
循环做法:枚举女生人数x,则男生人数为50-x 然后模拟女生进来,如果最后一个女生给9个男生礼物,则x是对的。数学做法:设女生人数为x,则男生人数为50-x 据题意,(50-x)-x=(9-1),所以x=21。所以女生有21个,男生有29个。
PASCAL循环的问题
循环变量是I,如果你的循环中有I出现的话就不一样了,你给出的程序段中没有出现I,所以这个循环只控制语句的循环次数,不改变其中量。例:For i := 1 to 20 do a := i + 1;\/\/i的值从1开始到20递增变化;For i := 1 to 20 do a := i + 1;\/\/I的值从20到1递减变化;两个的循...
Pascal 排列,组合的循环表达方式
1.我不是高手,是沙茶2.纯属打酱油,随便写的,不知道满不满足你的要求3.a数组为原数,b数组存搜索的数,v数组记录是否使用过,Count是答案个数 4.如有看不清楚请BS我或问我 const maxn=100;var a,b:array[1..maxn] of longint;v:array[1..maxn] of boolean;limit,i,n,count...
pascal循环问题
第一题的算法是做过实验得出的结论---亮着的都是完全平方数.if i\/j=i div j then m:=not(m); --是用来判断i是否是完全平方数;可以证明:很容易知,通过奇数次操作的灯亮.操作的条件是N是最后亮的灯的约数,而约数是成双出现的 若X是最后亮的灯的约数,则最后亮的灯的数字 DIV X 也是最后...
关于Pascal中的什么替换,循环的问题?
S是累加器,s:=0就是给S赋初值,s:=s+i就是用s累加i,前面的i就是从1到n;s就是等于s+i(1+2+3+4+5+6)一直循环
pascal的循环问题
for i=1 to n(限定的数的分母) do 接下来说思路吧。。总之分母是i,分子就是i-1,除一除就行了。然后把每次除得的商累加到一个变量中去。能明白吧?
pascal 语言循环问题
var i,j:longint;begin j:=1; for i:=1 to 10 do j:=(j+1)*2;writeln(j);end.
pascal语言的循环语句问题
PASCAL不搞STEP,而且你的S没有初始化,正确的程序如下:vari:integer;s:longint;begin s:=0;fori:=1to50dos:=s+i*2+1;writeln('s=',s);readln;end.
pascal 循环问题
因为互质的数最大公约数是1,只要判断它们的最大公约数是不是1就可以了。var a,b,i,k:integer;begin readln(a,b);for i:=a downto 1 do if b mod i=0 then k=i;if k=1 then writeln('true')else writeln('false');end.
pascal中的这程序为什么会是死循环?
在for循环中,对循环量进行赋值从编译语法上是通过的 但是实际操作就会出现系统冲突(溢出)导致循环体不稳定或崩溃,形成死循环