@@ -160,29 +160,49 @@ abys v tom měl{{a}} lepší přehled:
160160
161161## Cvičení
162162
163- Zkus napsat funkci ` zamen(retezec, pozice, znak) ` .
164-
165- Tato funkce vrátí řetězec, který má na dané pozici
166- daný znak; jinak je stejný jako původní ` retezec ` . Například:
163+ Zkus napsat program ` zamen.py ` , který umí zaměnit jedno písmeno ve slově za
164+ jiné. Například:
167165
168166``` python
169- # Zaměň třetí znak ve slově "čokoláda"
170- print (zamen(' čokoláda' , 3 , ' u' )) # → čokuláda
167+ slovo = input (' Slovo: ' )
168+ pozice = int (input (' Které písmeno zaměnit (od nuly)? ' ))
169+ novy_znak = input (' Nové písmeno: ' )
170+
171+ ... # sem doplň kód
172+
173+ print (nove_slovo)
171174```
172175
176+ Příklad použití:
177+
178+ <pre >
179+ Slovo: <strong >čokoláda</strong >
180+ Které písmeno zaměnit (od nuly)? <strong >3</strong >
181+ Nové písmeno: <strong >u</strong >
182+ <strong >čokuláda</strong >
183+ </pre >
184+
185+ <pre >
186+ Slovo: <strong >kočka</strong >
187+ Které písmeno zaměnit (od nuly)? <strong >1</strong >
188+ Nové písmeno: <strong >a</strong >
189+ <strong >kačka</strong >
190+ </pre >
191+
173192Pozor na to, že řetězce v Pythonu nelze měnit.
174193Nemůžeš v existujícím řetězci zaměnit jeden znak za jiný;
175194musíš vytvořit nový řetězec poskládaný z částí toho starého.
176195
177196{% filter solution %}
178197``` python
179- def zamen (retezec , pozice , znak ):
180- """ Zamění znak na dané pozici
198+ slovo = input (' Slovo: ' )
199+ pozice = int (input (' Které písmeno zaměnit (od nuly)? ' ))
200+ novy_znak = input (' Nové písmeno: ' )
181201
182- Vrátí řetězec, který má na dané pozici daný znak;
183- jinak je stejný jako vstupní retezec
184- """
202+ zacatek_slova = slovo[:pozice]
203+ konec_slova = slovo[pozice + 1 :]
204+ nove_slovo = zacatek_slova + novy_znak + konec_slova
185205
186- return retezec[:pozice] + znak + retezec[pozice + 1 :]
206+ print (nove_slovo)
187207```
188208{% endfilter %}
0 commit comments