给定2个输入(一个字符串和一个十进制数字),输出字符串乘以该数字。
问题是数字可以是浮点数或整数。
您应该先输出字符串floor(n)
时间,然后再输出前floor((n-floor(n))*len(string))
几个字母。
其他说明:
- 输入并不总是浮点数,可能是整数。因此1.5、1和1.0都是可能的。不过,它将始终以10为底,如果您希望例外,请发表评论。
- 输入的字符串可能包含空格,引号和其他字符。没有换行符或控制字符。
- 没有内置的直接字符串重复功能,甚至
'a'*5
不允许像python这样的字符串乘法。但是,允许添加字符串。
测试用例:
逗号和空格分隔输入。
test case, 1 -> test case
case, 2.5 -> casecaseca
(will add more later), 0.3333 -> (will(space)
cats >= dogs, 0.5 -> cats >
最后说明:
我看到许多使用内置字符串乘法或重复功能的答案。这不是允许的。@VTC的答案是有效的,因为它不会乘以字符串,而只是乘以浮点输入。因此,最终的规则是:如果直接将字符串相乘,则无法执行。
join "", ("case") x 2
VS "case" x 2
,在Perl 6 [~] "case" xx 2
VS相同的"case" x 2
direct
重复的字符串(这是什么意思?)。但总而言之,您是对的