#!/usr/bin/perl # [c]piotao, 20070123 # Normalizacja ciagu liczb use strict; use warnings; # liczby bedziemy trzymac w tablicy o rozmiarze N my $N = 200; # liczba elementow my @T = (0) x $N; # tablica 200 liczb rownych 0 # losowanie liczb tak, zeby byly rzeczywiste i wieksze od 1 @T = map{ rand(10) + 1 } @T; # wyszukiwanie wartosci najwiekszej sposrod liczb my $max = $T[0]; # poczatkowa wartosc max to pierwsza z liczb # dla każdej liczby wykonujemy przypisanie tej samej max lub nowej map{ $max = $max < $_ ? $_ : $max } @T; # obliczamy nowe wartosci dla kazdej z liczb dzielac je przez wartosc max: my @NORM = map{ $_ / $max } @T; # wypisujemy nowa tablice liczb z formatowaniem 1.3f: map{ printf "%1.3f ",$_ } @NORM; print "\n";