Tipus simples i strings(1) P56724


Statement
 

pdf   zip

Es demanen els codis de diverses funcions. En cada cas hi ha prou amb unes poques línies de codi. Seguiu el format dels exemples que es mostren a sota.

  1. Programeu una funció @drawH(n) @ que donat un enter imparell n3n \ge 3 escrigui la lletra H de mida nn formada pel símbol . Seguiu el patró de l’exemple que es mostra a sota.

  2. Programeu una funció @area_circle(r) @ que donat un float r0r \ge 0 retorna, arrodonit a la centèsima, l’àrea del cercle de radi rr. Feu servir la constant pi definida en el mòdul math.

  3. Programeu una funció @slow_pi_aprox(n) @ que donat un enter no negatiu nn retorna 4k=0n(1)k2k+14 \sum_ {k = 0} ^ n \frac {(- 1) ^ k} {2k + 1} arrodonit a la centèsima.

  4. Programeu una funció @is_univariate_number(n) @ que donat un enter no negatiu nn retorna un booleà que indica si la representació (decimal) de nn està formada per un únic dígit. Per exemple 2222222222 és univariada però 22322 no ho és.

  5. Programeu una funció @is_univariate_word(s) @ que donat un string ss retorna True si i només si totes les lletres de ss són la mateixa. Per exemple, el string xxXxXXx és univariada però xxXxy no ho és. Suposem que ss és no buit i que tots els caràcters de ss són lletres.

Puntuació

Cada funció val 20 punts.

Exemple de sessió

Sample session
>>> drawH(5)
*   *
*   *
*****
*   *
*   *
>>> area_circle(2.5)
19.63
>>> slow_pi_aprox(50)
3.16
>>> is_univariate_number(22322)
False
>>> is_univariate_word("xxXxXXx")
True
Information
Author
Jorge Castro
Language
Catalan
Other languages
English Spanish
Official solutions
Python
User solutions