Czylinie kilku liczb z jednej linii

Witam,

jak na razie w Ruby największe trudności sprawia mi czytanie liczb z konsoli ;). Jeżeli mam jedną liczbę w linii to nic prostrzego - używam gets.to_i, jednak problem pojawia się jak mam kilka liczb w linii (np. 2 3 5 7 11), wtedy getc.to_i odpada, bo czyta tylko jedną liczbę (przeczyta 11 jako 1 i 1). Szukałem w API języka, ale nic nie znalazłem dlatego zdecydowałem się napisać

Pozdrawiam
daimyo

gets.split(' ')

W C robiło się to dziś już kanonicznym scanf i chyba każdy nowszy od C język ma jakąś implementację czytania sformatowanego wejścia
http://www.ruby-doc.org/stdlib/libdoc/scanf/rdoc/index.html

sharlik: wybacz, ale to już próbowałem… nie działa

Tomash: a o tym czytałem… tylko nie wiem jak użyć ;). wrzucam w kodzie linie np. scanf("%d ", &a), a interpreter mówi, że: undefined method `scanf’ for main:Object (NoMethodError)

też mnie to zdziwiło, bo testowalem printf i działał bez zarzutu - zupełnie jak C :smiley:

jakby co to daimyo@katie:~/ruby$ ruby --version ruby 1.8.6 (2007-09-24 patchlevel 111) [i486-linux]

hmm, mi jednak to działa:

[code]>>a = gets.split(’ ')

1 2 3 4 11 12 13

=> [“1”, “2”, “3”, “4”, “11”, “12”, “13”]

a.each{ |e|; puts e; }

1
2
3
4
11
12
13[/code]

OK, przepraszam. Już zrozumiałem swój błąd :).