Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
witam,
czy ktoś wie czy istnieje jakaś funkcja w rubym, która potrafi sczytać kilka liczb napisanych w jednej linii do kilku osobnych zmiennych?
coś jak scanf("%d %d..", &a1 &a2...); w c?
Czy trzeba to załatwić np poprzez pocięcie stringa i powrzucanie tego do odpowiednich zmiennych?
Ostatnio edytowany przez Zolnierzu (2009-11-12 01:17:25)
Offline
Może funkcja scanf? http://linuksowo.pl/index.php?t=msg&goto=26334
Ewentualnie jeśli dobrze pamiętam to można użyć funkcji split (ostatecznie scan) [obiekt string] i skonwertować typy... Kiedyś jak pamiętam działało np. pomnożenie przez 1 stringa by stawał się liczbą, ale to było kiedyś.
Offline
#!/bin/ruby print "Podaj liczby, ktore maja zostac zsumowane(oddzielajac je znakiem spacji): " line = gets sum = 0 while(line != nil) #a, line = line.chomp.split(/\s* \s*/) a, line = line.chomp.split(/\s* +\s*/) sum += Integer(a) end puts "Twoja suma to ", sum, "\n"
NIC, coś takiego zrobiłem ale moje wyrażenie regularne chyba raczej napewno jest nieprawidłowe bo sumuje tylko 2 pierwsze liczby a reszta łańcucha znika..
EDIT
Rozwiązane. splitem usuwamy spacje, string w ruby jest traktowany jako tablica więc wystarcza prosta pętelka .each do i po krzyku ;) Może komuś się przyda.
Ostatnio edytowany przez Zolnierzu (2009-11-12 01:17:04)
Offline