Есть ли одна строка в жемчуге, который делает некоторое волшебство как это.
Array = [100,200,300,400,500];
percent = 50%
new_Array = [50,100,150,200,250];
Таким образом, я даю массив и указываю процент. И это должно дать мне новый массив с данным процентом значений исходного массива.
должен заботиться о нечетных числах и дать мне или потолок или этаж того значения.
Я знаю, как сделать это вручную. Просто удивление, если жемчуг имеет что-то удивляющее в хранилище?
Спасибо.
Если вы хотите преобразовать список, используйте map
. Вот пример:
my @list = ( 100, 200, 300, 400, 500 );
my @new = map { int( $_ * 0.5 ) } @list;
print "@new";
Вывод:
50 100 150 200 250
map позволит вам преобразовать каждый элемент списка.
my $percent = 50;
my @original = qw/100 200 300 400 500/;
my @manipulated = map { $_ * $percent / 100 } @original;
Как вы просили одну строчку perl, которая творит чудеса, вот она:
print join " ", map { int( $_ * 0.5) } (qw(100 200 300 400 500));
это дает
50 100 150 200 250