Predikat je u ovom slučaju samo drugo ime za funkciju koja vraća True ili False.
> Poopćite funkciju na wordIndicesWith p s koja vraća listu pozicija
> riječi w u stringu s (1 pozicija = 1 riječ) koje zadovoljavaju predikat p.
Potrebno je poopćiti funkciju wordIndices tako da više ne vraća
pozicije onih riječi koje su jednake danoj riječi, već da vraća
pozicije onih riječi koje, kada na njih primijenimo funkciju p,
rezultiraju istinitom vrijednošću.
Kao primjer, upitajmo se koje su riječi dulje od tri slova:
let test w = length w > 3
wordIndicesWith test "Haskell has cool" => [0, 2]
Ili, zapitajmo se koje su riječi palindromi:
let jePalindrom w = w == reverse w
wordIndicesWith jePalindrom "bla rar kuk mjau" => [1, 2]
Nadam se da je pomoglo,
Siniša
jel moze neki hint/savijet oko 10c
--
You received this message because you are subscribed to the Google Groups "Haskell-FER" group.
To post to this group, send email to haske...@googlegroups.com.
To unsubscribe from this group, send email to haskell-fer...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/haskell-fer?hl=en.
--
You received this message because you are subscribed to the Google Groups "Haskell-FER" group.
To view this discussion on the web visit https://groups.google.com/d/msg/haskell-fer/-/0kIJwO_3HqwJ.
To post to this group, send email to haske...@googlegroups.com.
To unsubscribe from this group, send email to haskell-fer...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/haskell-fer?hl=en.
Hint:
U drugom svjetskom ratu saveznici su imali taktiku isprovocirati neki
čudan događaj, samo kako bi znali da će Nijemci o tome pisati u
ąifriranim porukama. Kada bi zatim presreli poruku ąifriranu Enigmom,
znali su da mogu očekivati spominjanje te riječi (dakako, na njemačkom
jeziku) u tekstu izvorne poruke. Spoznaja da se neka riječ pojavljuje
u izvornom teksu znatno je olakąavala probijanje poruke, odnosno
kriptoanalizu. Kada međutim nemamo takvu informaciju (ne znamo ąto se
u tekstu spominje), treba "nabadati" neke riječi koje su česte. U ovom
slučaju poruka je na engleskom, pa treba razmisliti (proguglati) koje
su najčeąće riječi u engleskom jeziku. Tu informaciju treba
iskoristiti da se isfiltriraju sve moguće deąifrirane varijante poruke
(jer s ključem od 3 znaka mogućih deąifriranih poruka će ih biti
previąe...), tako da ostane samo manji broj njih, koje onda treba
"očno" pregledati, i naći onu pravu.
Pomaľe?
Ako ste dobili rečenicu na engleskom, onda je to rješenje.
Možda Vam rečenica neće imati smisla, ali imat će kroz tjedan-dva. :-)
Ako niste dobili rečenicu na engleskom,
onda provjerite da:
(0) 'vigenere' i 'unvigenere' rade ispravno,
(1) isprobavate doista sve moguće ključeve duljine tri,
(2) probajte filtrirati po nekim drugim engleskim riječima... možda
nemate sreće s ovima koje ste odabrali.
Zanima me kako mogu označiti da zavrąavam s case izrazom . Ima li neka
end-case ključna riječ ili se sve radi s uvlačenjem?
od slijedećeg programa htio bih ispis "Ovo je super"
prog = "Ovo " ++ case 1 of
1 -> "je"
2 -> "nije"
++ " super"
htio bih ovakvo prelamanje case u viąe linija, ne da bude u jednoj
liniji.
Taj bi zadatak trebao biti ekvivalentan ovome:
"Napišite funkciju koja uzima listu *listi* **listi** i vraća listu
onih *listi* čija su početna tri elementa **liste** s barem jednim
elementom."
Zadatak malo uzrokuje vrtoglavicu jer je smišljen da bolje naučimo
podudaranje uzoraka. :) Evo i primjera:
let jedna = [[1, 2], [], [6], [9]] -- neće proći
let druga = [[7, 3], [1], [12], []] - proći će
f :: [[[a]]] -> [[[a]]]
f [jedna, druga] => [druga]
f [jedna] => []
2011/11/16 Ratko Šimić <trel...@gmail.com>:
> U petom zadatku pretpostavljam u signaturi treba biti Double umjesto
> Int, zar ne?
Da, tako je! Slučajna greška.
Pozdrav,
Siniša
The degree of fineness with which an image can be recorded or produced, often expressed as the number of pixels per unit of length (typically an inch).u skladu s tom definicijom, veća razlučivost bi trebala podrazumijevati "gušću" rešetku.
LP,Ratko