作业帮 > 综合 > 作业

free pascal 语言中的不明飞行物怎么做?急求!谢谢1

来源:学生作业帮 编辑:搜搜做题作业网作业帮 分类:综合作业 时间:2024/04/28 12:45:15
free pascal 语言中的不明飞行物怎么做?急求!谢谢1
问题描述:
一颗彗星的后面有一个不明飞行物(UFO),这个UFO经常到地球上来寻找忠实的追随者,把他们带到宇宙中去.但由于舱内空间有限,它们每一趟只能带一组追随者.尽管如此,外星人仍然想出了一个妙法来决定带谁走:以A代表1,B代表2,……Z代表26,USACO即21*19*1*3*15=17955,倘若此组人的组名所代表的数字与彗星的名字所代表的数字分别除以47,余数相同,则彗星名与组名相匹配,UFO带此组人飞向宇宙,余数不同则不匹配,故不带.
编程任务:
写一程序,打印出彗星名与组名是否相匹配,是打印"GO",否打印"STAY";同时打印出两者的余数.
输入:
输入文件包含两行,第一行为慧星名,第二行为组名.
输出:
由屏幕显示是否匹配的信息,下一行显示两者的余数.
输入输出样例1:
输入:
COMETHALEBOPP
HEAVENSGATE
输出:
GO
r1=r2=17
输入输出样例2:
输入:
SHOEMAKERLEVY
USACO
输出:
STAY
r1=21 r2=1
free pascal 语言中的不明飞行物怎么做?急求!谢谢1
简答题,不解释,不懂再问我
var
i,j,k,l,l1,m,n:longint;
s,s1:string;
begin
readln(s);
read(s1);
l:=length(s);
l1:=length(s1);
m:=1; n:=1;
for i:=1 to l do
m:=(m*(ord(s[i])-64))mod 47;
for i:=1 to l1 do
n:=(n*(ord(s1[i])-64))mod 47;
if(m mod 47)=(n mod 47) then begin
writeln('GO');
write('r1=r2=',n mod 47);
end;
else begin
writeln('STAY');
write('r1=',m mod 47,' ','r2=',n mod 47);
end;
end.
望采纳!