From 68c882dadc90c61bb61c2ba47482a9afc8552f22 Mon Sep 17 00:00:00 2001 From: lakpatashi Date: Mon, 10 May 2021 13:34:52 +0530 Subject: Finished challenge-019 ch-1 only with perl --- challenge-019/lakpatashi/README | 1 + challenge-019/lakpatashi/perl/ch-2.pl | 24 ++++++++++++++++++++++++ 2 files changed, 25 insertions(+) create mode 100644 challenge-019/lakpatashi/README create mode 100755 challenge-019/lakpatashi/perl/ch-2.pl diff --git a/challenge-019/lakpatashi/README b/challenge-019/lakpatashi/README new file mode 100644 index 0000000000..bc153bd576 --- /dev/null +++ b/challenge-019/lakpatashi/README @@ -0,0 +1 @@ +Solution by lakpatashi diff --git a/challenge-019/lakpatashi/perl/ch-2.pl b/challenge-019/lakpatashi/perl/ch-2.pl new file mode 100755 index 0000000000..ed7e298875 --- /dev/null +++ b/challenge-019/lakpatashi/perl/ch-2.pl @@ -0,0 +1,24 @@ +#!/usr/bin/perl + +use warnings; +use strict; +use Data::Dumper; +use List::Util qw(sum); +use feature qw(switch); + +#part 2 +my $str = "This is random string to be formatted and wrap to given length"; +my $LineWidth = 10; +my $SpaceLeft = $LineWidth; +my $SpaceWidth = 1; + +for my $word (split / /,$str){ + if ( length($word) + $SpaceWidth > $SpaceLeft ){ + #insert line break before Word in Text + print "\n$word"; + $SpaceLeft = $LineWidth - length($word); + }else{ + print " $word"; + $SpaceLeft -= (length($word) + $SpaceWidth); + } +} -- cgit