ENGG1330编程解决

kantong / 2024-03-20 / 原文

ENGG1330计算机编程课业1
ENGG 1330计算机程序设计I(第2学期23-24)重要注意事项? 在执行此任务时,应仅使用Python内置功能。它是不需要导入任何模块来完成此分配。零分到导入任何模块的程序。如果您不确定,请随时与我们联系clalifica=打开。? 虽然编程风格不分级,但强烈建议您使用func=ons要考虑您的程序,请编写clear=dy代码,例如descript=ve注释,命名简洁明了,间距适当。屈服? 将建立虚拟编程实验室(VPL)以供提交,并且tes=ng。只有最后一个提交的文件将被视为最终提交的文件。? 在截止日期前彻底测试你的程序。您的程序必须生成根据所需格式输出,例如,没有额外的文本/空间。如果你是如果对要求不确定,请随时联系我们获得clarifica=。? VPL中提供的测试用例仅检查您的程序是否符合要求。你应该通过创建更多的测试来测试你的程序的健壮性你自己处理案件。您的课程将通过另一组私人测试进行评估案例。? 每提交24小时,将从最终分数中扣除20%日期? 如果你的作品是最终作品,请不要在截止日期前提交任何程序。任何提交
aOer截止日期被视为逾期提交。

剽窃
? 已确认的抄袭案例(系统检测到)将获得零分和主题纪律处分。处罚也适用于源提供商。在其他换句话说,提交相同/高度相似课程的学生将全部得零分。学生有充分的责任保护他们的课程不被其他。在过去的每一年里,都有几个学生被发现从事剽窃活动。他们都得到了该任务的零分和部门负责人发布的警告leWer。

问题
? 如果您有任何疑问,谁监督这个分配ENGG1330计算机编程I课业1第2页,共7页问题1(20%)你经营着一家甜品店,出售慕斯蛋糕和马卡龙,价格分别为35美元和20美元,respec;操作。做慕斯蛋糕需要5分钟,做马卡龙需要8分钟。那里是堂食和外卖店;ons,在餐厅用餐需收取10%的服务费。没有外卖马卡龙,因此,任何外卖马卡龙都将从订单中删除。现在,写一个程序来读取所有的订单;dai 写 ENGG1330l输入等于-1,indica;ng条目的末尾。对于每个订单,用户在hiJng之前的一行中输入三个用空格分隔的数字“输入”键。第一个数字是慕斯蛋糕的数量,第二个数字是
马卡龙的数量,最后一个数字是“0”或“1”,其中“0”表示堂食,“1”表示代表“外卖”。a读取所有订单后,该程序生成每日销售报告汇总销售的慕斯蛋糕和马卡龙的总数、(总)销售额、(总)服务费和(总)产品;在…上我销售日报的详细格式要求:? 报告的宽度为40个字符。

? 标题位于中心,有一个前导空格和一个尾随空格,填充
两边都是“*”。

? 在每一行中,名称是leN对齐的,值是右对齐的。
? 在销售额和服务费前加上“$”符号。销售额以美元和
服务费以10%为单位(即小数点后1位)。

? 产品;在…上我是以小时和分钟为单位的。添加??s?? 当
数字是复数,不显示数字“0”及其单位。

样品

外卖马卡龙是

已从订单中删除

服务费是10%

(即小数点后1位)

添加??s?? 当

数字是复数而不是

显示数字“0”及其单位。

添加??s?? 当

数字是复数而不是

显示数字“0”及其单位。

ENGG1330计算机编程I课业1

第3页,共7页

问题2(20%)

有一个高度为h、宽度为w的矩形网格,其中嵌入了一个单词
用字符“#”填充的空格。单词要么水平存储,要么ver;ally,或
单词以一个大写字符和其他小写字符开头。所以

大写字符决定读取方向;上的单词。您需要查找并打印

整个单词都是大写的。

编写一个程序,要求用户在第一行输入高度h,在第二行输入宽度w
线,那么,网格本身是一致的;ng行字符串,每条字符串的长度为w个字符。最后一点
用大写字母打印整个单词。

样品

嵌入了“程序”一词

8 X 8网格中的水平方向

嵌入了“工程”一词

12 X 12网格中的对角线

ENGG1330计算机编程I课业1

第4页,共7页

问题3(25%)

在一个神奇的世界里,有一些家庭生活在一条水平的直线上,即。,x轴。每个家庭
具有唯一的族ID i(posi;ve integer)和唯一的坐标xi(nonnga;ve整数),并且
相邻的两个族,i和j之间的距离是|neneneba xi-xj|。
你是一个神奇的邮递员,需要将邮件从一个家庭送到另一个家庭,可能通过
其他家庭。当你从一个家庭i搬到一个家庭时,一些魔豆将被消耗如下
邻居j。你想尽量减少每个人消耗的魔豆数量

交付(当然!)。

? 如果家庭j是家庭i的最近邻居,或者家庭j是家族i的唯一邻居,则只有1
魔豆被吃掉了,因为每个家庭都有一条通往最近或唯一邻居的魔道。
? 否则,消耗的魔豆数量等于两者之间的距离

族,即|neneneba xi-xj|。

保证每个家庭都有一个唯一的近邻。但请注意,“j是

“i中最近的一个”并不一定意味着“i是j中最近的那个”,你可以思考并找到原因。
用以下输入和输出为邮递员编写一个程序。

在第一行中,计算了族的数目N。然后,在

在接下来的N行中引入了“i xi”的形式。族ID是唯一的并且在1、2、…、。。。,N
但是它们可能不按顺序出现。

接下来,计算交付数量M,然后是M行“ik”形式的交付
意味着邮件必须从家庭i递送到家庭k。

最后,您的程序必须输出M行,其中每行都包含一个整数,即
发送相应邮件所消耗的魔法豆的最小数量。

考虑以下输入因素:;五个家庭和三次分娩。

5 15

2 0

3 8

4 20

1 12

2 3

2 4

5 2

下图显示了loca;五个家庭中的一个。坐标如下所示
x轴,而族ID显示在x轴上方。

对于第一次交付2 3,由于家庭3是家庭2的唯一邻居,因此魔豆的数量
消耗为1。

ENGG1330计算机编程I课业1

第5页,共7页

对于第二次交付2 4,消耗的魔豆总数为8,细分如下
跟随。

? 从家庭2到家庭3,消耗的魔豆数量=1。

? 从家庭3到家庭1,消耗的魔豆数量=1。

? 从家庭1到家庭5,消耗的魔豆数量=1。

? 从家庭5到家庭4,消耗的魔豆数量=5。

对于第三次交付5 2,消耗的魔豆总数为13,细分如下
跟随。

? 从家庭5到家庭1,消耗的魔豆数量=1。

? 从家庭1到家庭3,消耗的魔豆数量=4。

? 从家庭3到家庭2,消耗的魔豆数量=8。

样品

ENGG1330计算机编程I课业1

第6页,共7页

问题4(35%)

你是贝勒菲尔德游戏中的一名士兵。baelefield是一个矩形网格(矩阵)M
网格中的元素是整数。如果第i行和第j列中的元素mij是posi;ve(索引i,j开始
从0开始),这意味着这个地方有mij敌人;如果mij=0,则表示该位置没有人;
WX:codehelp

你有一件特殊的武器,威力为p。你可以在选定的地点使用它1米
direc;在…上下图显示了p=3在四个方向上的损伤范围;ons(????, ????, ????,
????), respec;操作。对于功率p的其他值,损伤范围也会相应变化。
你必须找出地点和方向;使用武器,这样你就可以杀死最多的人
敌人却没有友军受伤。你杀死的每一个敌人,都会得到1个奖励。如果没有敌人
被杀,你的奖励是0。
编写一个程序来读取h+1行。在第一行中,网格的高度h和宽度w,以及
武器的威力p受到影响。那么,每行中有w个整数的h行,
repern;在贝勒菲尔德,正在接受治疗。
如果在所有地方和方向;ons,一些友军会受伤,然后程序输出“友军会受伤的!不要在任何地方使用武器!”

否则,即使您的奖励为0,程序也会以以下形式输出3行:你可以在X行Y列使用武器。”“上的方向是D。”“你的奖励是R!”其中X和Y分别是位置的行号和列号;VE,D是