Mashq: rot13Reader
Keng tarqalgan andoza — boshqa io.Reader ni o'rab, oqimni qandaydir tarzda o'zgartiradigan io.Reader.
Masalan, gzip.NewReader funksiyasi io.Reader (siqilgan ma'lumotlar oqimi) qabul qiladi va o'zi ham io.Reader ni (siqilmagan ma'lumotlar oqimini) amalga oshiradigan *gzip.Reader qaytaradi.
Yechimni kodning pastki qismidagi
Topshiriqlarbo'limiga yozing, so'ng Submit tugmasini bosing. Mavzu mustahkam o'zlashishi uchun ikkala topshiriqni ham bajaring.
io.Reader ni amalga oshiradigan va boshqa io.Reader dan o'qib, oqimni barcha alifbo harflariga rot13 almashtirish shifrini qo'llash orqali o'zgartiradigan rot13Reader ni amalga oshiring.
rot13Reader tipi sizga tayyor holda berilgan.
Uning Read metodini amalga oshirib, uni io.Reader ga aylantiring.
Testlar rot13Reader orqali "Lbh penpxrq gur pbqr!" o'qilganda "You cracked the code!" chiqishini tekshiradi.
Rot13(s string) string funksiyasini yozing: satrdagi lotin harflarini rot13 bilan almashtirsin (a↔n, A↔N va h.k.), boshqa belgilarni o'zgartirmasin. Masalan, Rot13("Hello") — "Uryyb". Ikki marta qo'llasangiz, asl satr qaytadi.