Irgendwie verstehe ich die ganze Problematik nicht so ganz.
Einmal wird ein "print" immer innerhalb der for Schleife aufgerufen. print wird also öfters aufgerufen, und bei jeden Schleifendurchlauf wird das Ergebnis geprinted. Also print wird 3-5 mal aufgerufen.
Und bei der zwei zeilenversion kommt das print erst nach der for Schleife. Also wenn der String bereits fertig zusammen gesetzt ist, erst dann wird der String geprinted. ...
Ist ja auch klar das dann dabei etwas anderes heraus kommt. Du machst ja auch etwas anderes. Und trivial finde ich es ebenso. ???
Vielleicht wird es mit einem zusätzlichen Newline ersichtlicher...
print $name .= chr 65 + int rand 26, "\n" for 1..3 + int rand 3;
Ausgabe:
\n\n
<!--EDIT|sid burn|1149545736-->
Nicht mehr aktiv. Bei Kontakt: ICQ: 404181669 E-Mail: perl@david-raab.de