Étant donné 2 entrées, une chaîne et un nombre décimal, sortez la chaîne multipliée par ce nombre.
Le hic, c'est que le nombre peut être un flottant ou un entier.
Vous devez sortir l' floor(n)
heure de la chaîne , puis à nouveau les premières floor((n-floor(n))*len(string))
lettres.
Autres notes:
- L'entrée ne sera pas toujours un flottant, elle peut être un entier. Donc, 1.5, 1 et 1.0 sont tous possibles. Cependant, il sera toujours en base 10, et si vous souhaitez une exception, veuillez commenter.
- L'entrée de chaîne peut contenir des espaces, des guillemets et d'autres caractères. Pas de nouvelles lignes ni de caractères de contrôle.
- Aucune fonction intégrée pour la répétition directe de chaînes, même la multiplication de chaînes comme le python
'a'*5
n'est autorisée. Cependant, l' ajout de chaînes est autorisé.
Cas de test:
La virgule et l'espace séparent les entrées.
test case, 1 -> test case
case, 2.5 -> casecaseca
(will add more later), 0.3333 -> (will(space)
cats >= dogs, 0.5 -> cats >
Note finale:
Je vois beaucoup de réponses qui utilisent des fonctions de multiplication ou de répétition de chaînes intégrées. Ce n'est pas permis. La réponse de @ VTC est cependant valide, car elle ne multiplie pas la chaîne, seule l'entrée flottante. La règle définitive est donc la suivante: s'il multiplie directement la chaîne, vous ne pouvez pas le faire.
join "", ("case") x 2
vs "case" x 2
, en Perl 6 [~] "case" xx 2
vs le même"case" x 2
direct
la répétition de la chaîne (qu'est-ce que cela signifie?). Mais dans l'ensemble, vous avez raison