早教吧 育儿知识 作业答案 考试题库 百科 知识分享

用pascal写这道题宾馆里有100个房间,从1~100编号,第1个服务员把所有的房间门都打开,第2个服务员把所有编号是2的倍数的房间“相反处理”,第3个服务员把所有编号是3的倍数的房间再作

题目详情
用pascal写这道题
宾馆里有100个房间,从1~100编号,第1个服务员把所有的房间门都打开,第2个服务员把所有编号是2的倍数的房间“相反处理”,第3个服务员把所有编号是3的倍数的房间再作“相反处理”……,以后每个服务员都是如此。当第100个服务员来过后,哪几个房间门打开的。(“相反处理”是:原来开着的门关上,原来关上的门打开)急!!!!!!!跪求高手,一定要对的!好的加分!


▼优质解答
答案和解析
program shuzu11;
const n=100;
var a:array[1..n] of boolean;
i,j,k:integer;
begin
for i:=1 to n do a[i]:=true;
for i:=2 to n do
for j:=i to n do
if j mod i=0 then a[j]:=not(a[j]);
for i:=1 to n do
if a[i] then write(i:5);
readln
end.
绝对正确答案,望采纳。