Jak dynamicznie generować listę w Perlu
Lista Perla jest zbiorem elementów w sekwencji. Aby utworzyć listę, musisz użyć symbolu "@" przed deklaracją nazwy. Możesz tworzyć dynamiczne listy podczas działania programu, pisząc kod, aby na to zezwolić. Na przykład można poprosić użytkownika o kilka informacji początkowych, a następnie generuje listę numerów, aby pasowały do kryteriów.
Monity użytkownika
Aby wiedzieć, jakie wartości chce użytkownik na jej dynamicznie tworzonej liście, musisz poprosić ją o trochę informacji. Co najmniej, musisz wiedzieć, ile liczb chce na liście, a zakres wartości dla tych liczb. Użyj funkcji "print", aby zapytać użytkownika o liczbę przedmiotów i wpisz "$ num =;" aby zapisać tę wartość w zmiennej $ num. Następnie zapytaj o zakres i wpisz "$ range =;" aby zapisać tę wartość w zmiennej $ range.
Funkcja Rand
Funkcja "rand" dynamicznie generuje losową liczbę z pewną elastycznością. Domyślnie tworzy liczbę dziesiętną między zero a jeden. Łącząc ją z funkcją "int", można tworzyć liczby całkowite, a jako parametr można również podać wartość zakresu. Na przykład, jeśli użytkownik zapisuje "50" jako zakres, do którego go poprosiłeś, wpisz "$ random = int (rand ($ range + 1));" tworzy losową liczbę od zera do 50. Musisz dodać "+1" do instrukcji, inaczej zakres będzie wynosił od zera do 49.
Funkcja push
Korzystasz z funkcji "push", aby dodać nowy element na końcu listy Perla. Ma dwa parametry: listę do dodania i nową wartość. Na przykład wpisując "push (@list, $ random);" dodaje wartość zapisaną w zmiennej losowej $ do listy. Alternatywnie możesz użyć funkcji "unshift", aby dodać element na początku tablicy, ale gdy tworzysz dynamiczną tablicę od początku, nie ma znaczenia, z której strony dodasz nowe elementy.
Dla pętli
Aby wygenerować listę, użyj pętli "for". Dla zmiennej licznika, zacznij od jednej, miej ją, aż będzie równa zmiennej $ num, i zwiększ ją o jeden. Na przykład wpisz "for ($ i = 1; $ i <= $ num; $ i ++)", aby utworzyć pętlę. Wewnątrz wystarczy użyć dwóch linii kodu: wywołania funkcji rand i funkcji wypychania. Po zakończeniu pętli otrzymasz dynamicznie generowaną listę numerów.