Получить наибольшее число массива [закрыто]

-2
13.04.2017, 15:36
1 ответ

Вам действительно нужно изменить эту часть кода. Проблема в том, что теперь вам нужно сохранить два значения: самое высокое из найденных до сих пор и соответствующий элемент (1,2).

#!/usr/bin/perl
use warnings;
use strict;

my $close_to = 6.1937;

my ($close, $highest, $corr_highest);

$/ = q();
while (<>) {
    my @arr = split;
    if ((! defined $close || abs($arr[1] - $close_to) < abs($close - $close_to))
        && $arr[2] > $arr[3]
        ) {
        $close = $arr[1];
    }
    if (! defined $highest || $arr[3] > $highest) {
        ($highest, $corr_highest) = @arr[3, 1];

    }
    if (eof) {
        print "$close $corr_highest\n";
        undef $_ for $close, $highest, $corr_highest;
    }
}
1
28.01.2020, 05:17

Теги

Похожие вопросы