aboutsummaryrefslogtreecommitdiff
path: root/challenge-070/javier-luque/raku/ch-1.p6
blob: 41086439c089662b8e4c3460c33686368be81bfb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# Test: perl6 ch-1.p6
sub MAIN() {
	say swap-chars('perlandraku', 3, 4);
}

sub swap-chars( Str $S, Int $C, Int $O) {
	my $N = $S.chars;
	my @s = $S.split('', :skip-empty);

	loop (my $i = 1; $i <= $C; $i++) {
		my $temp           = @s[$i % $N];
		@s[$i % $N]        = @s[($i + $O) % $N];
		@s[($i + $O) % $N] = $temp;
	}

	return @s.join('');
}