Está en la página 1de 12

Fundamentos en Programación

PRUEBA EXTEMPORÁNEA

Este trabajo ha sido realizado por: JUAN SEBASTIÁN OLIVOS MONTENEGRO


- JENIFER BLANDÓN ARANDA - KEVIN SANTAMARÍA TRIANA

Primera Parte:

Incluya la URL del video con la presentación del proyecto de aula


“Autómata celular bidimensional”.

YouTube: https://www.youtube.com/watch?v=gORUZZRtF7w

Google Drive:
https://drive.google.com/file/d/17doPINTsN5XE5tXg6Sx04dpskPCHt_RQ/view?usp=shari
ng

Nota: Recuerde probar el enlace en una ventana de incógnito antes de


incluirla en el documento.

Segunda Parte:

Realice de manera individual1 los siguientes ejercicios, disponibles en el sitio


Web CodingBat.

Logic-2: String-2: List-2:

1) make_bricks, 8) double_char, 14)count_evens,


2) lone_sum, 9) count_hi, 15)big_diff,
3) lucky_sum, 10)cat_dog, 16)centered_average,
4) no_teen_sum, 11)count_code, 17)sum13,
5) round_sum, 12)end_other 18)sum67,
6) close_far, 13)xyz_there 19)has22
7) make_chocolate

Para indicar el desarrollo de esta prueba, utilice la siguiente tabla por cada
ejercicio, como se muestra a continuación:

1 Se pueden desarrollar los ejercicios con los compañeros que desarrolló el proyecto y que también presenten la prueba
extemporánea.

1
Fundamentos en Programación
PRUEBA EXTEMPORÁNEA

Este trabajo ha sido realizado por: JUAN SEBASTIÁN OLIVOS MONTENEGRO


- JENIFER BLANDÓN ARANDA - KEVIN SANTAMARÍA TRIANA

1. diff21
Código fuente Casos de pruebas exitosos

def diff21(n):
if n <= 21:
return 21 - n
else:
return (n - 21) * 2

2
Fundamentos en Programación
PRUEBA EXTEMPORÁNEA

Este trabajo ha sido realizado por: JUAN SEBASTIÁN OLIVOS MONTENEGRO


- JENIFER BLANDÓN ARANDA - KEVIN SANTAMARÍA TRIANA

Logic-2:

1. make_bricks

def make_bricks(small,
big, goal):
if goal >= 5 * big:
remainder = goal -
(5 * big)
else:
remainder = goal %
5

return small >=


remainder

2. lone_sum

def lone_sum(*args):

sum=0

for x in args:

if args.count(x)==1:

sum+=x

return sum

3
Fundamentos en Programación
PRUEBA EXTEMPORÁNEA

Este trabajo ha sido realizado por: JUAN SEBASTIÁN OLIVOS MONTENEGRO


- JENIFER BLANDÓN ARANDA - KEVIN SANTAMARÍA TRIANA

3. lucky_sum

def lucky_sum(a, b, c):


total = 0

for n in (a, b, c):


if n != 13:
total += n
else:
break

return total

4. no_teen_sum

def no_teen_sum(a, b,
c):
nums = (a, b, c)
return sum(fix_teen(n)
for n in nums)

def fix_teen(n):
return 0 if n not in (15,
16) and 13 <= n <= 19
else n

4
Fundamentos en Programación
PRUEBA EXTEMPORÁNEA

Este trabajo ha sido realizado por: JUAN SEBASTIÁN OLIVOS MONTENEGRO


- JENIFER BLANDÓN ARANDA - KEVIN SANTAMARÍA TRIANA

5. round_sum

def round_sum(a, b, c):


return round10(a) +
round10(b) + round10(c)

def round10(num):
if num % 10 < 5:
return num - (num %
10)

return num + (10 - num


% 10)

6. close_far,

def close_far(a, b, c):


a_b = abs(a - b)
a_c = abs(a - c)
b_c = abs(b - c)

return (
(a_b <= 1 and a_c
>= 2 and b_c >= 2) !=
(a_c <= 1 and
a_b>= 2 and b_c >= 2))

5
Fundamentos en Programación
PRUEBA EXTEMPORÁNEA

Este trabajo ha sido realizado por: JUAN SEBASTIÁN OLIVOS MONTENEGRO


- JENIFER BLANDÓN ARANDA - KEVIN SANTAMARÍA TRIANA

7. make_chocolate

def
make_chocolate(small,
big, goal):

gr = big * 5
pe = small * 1

if goal > gr + pe:


return -1
if goal % 5 > pe: return
-1
if goal > gr: return
goal-gr

return goal%5

String-2:
8. double_char,

def double_char(str):
val = []
for c in str:
val.append(2*c)

return "".join(val)

6
Fundamentos en Programación
PRUEBA EXTEMPORÁNEA

Este trabajo ha sido realizado por: JUAN SEBASTIÁN OLIVOS MONTENEGRO


- JENIFER BLANDÓN ARANDA - KEVIN SANTAMARÍA TRIANA

9. count_hi,

def count_hi(str):
cont= 0
for i in range(len(str)-
1):
if str[i:i+2] == "hi":
cont += 1

return cont

10. cat_dog,
def cat_dog(str):
count_cat = 0
count_dog = 0
for i in range(len(str)-2):
if str[i:i+3] == 'dog':
count_dog += 1
if str[i:i+3] == 'cat':
count_cat += 1

return count_cat ==
count_dog

7
Fundamentos en Programación
PRUEBA EXTEMPORÁNEA

Este trabajo ha sido realizado por: JUAN SEBASTIÁN OLIVOS MONTENEGRO


- JENIFER BLANDÓN ARANDA - KEVIN SANTAMARÍA TRIANA

11. count_code,

def count_code(str):
count = 0
for i in range(0, len(str)-
3):
if str[i:i+2] == 'co' and
str[i+3] == 'e':
count += 1
return count

12. end_other

def end_other(s1, s2):


s1 = s1.lower()
s2 = s2.lower()
return s1.endswith(s2)
or s2.endswith(s1)

8
Fundamentos en Programación
PRUEBA EXTEMPORÁNEA

Este trabajo ha sido realizado por: JUAN SEBASTIÁN OLIVOS MONTENEGRO


- JENIFER BLANDÓN ARANDA - KEVIN SANTAMARÍA TRIANA

13. xyz_there

def xyz_there(str):
return str.count('.xyz')
!= str.count('xyz')

List-2:

14. count_evens,

def count_evens(nums):
count = 0
for i in nums:
if i % 2 == 0:
count = count + 1

return count

9
Fundamentos en Programación
PRUEBA EXTEMPORÁNEA

Este trabajo ha sido realizado por: JUAN SEBASTIÁN OLIVOS MONTENEGRO


- JENIFER BLANDÓN ARANDA - KEVIN SANTAMARÍA TRIANA

15. big_diff,

def big_diff(nums):
return max(nums) -
min(nums)

16. centered_average,

def
centered_average(num
s):
sum = 0
for element in nums:
sum += element
return (sum - min(nums)
- max(nums)) /
(len(nums)-2)

10
Fundamentos en Programación
PRUEBA EXTEMPORÁNEA

Este trabajo ha sido realizado por: JUAN SEBASTIÁN OLIVOS MONTENEGRO


- JENIFER BLANDÓN ARANDA - KEVIN SANTAMARÍA TRIANA

17. sum13,
def sum13(nums):
if len(nums) == 0:
return 0

for i in range(0,
len(nums)):
if nums[i] == 13:
nums[i] = 0
if i+1 < len(nums):
nums[i+1] = 0
return sum(nums)

18. sum67,
def sum67(nums):
for i in range(0,
len(nums)):
if nums[i] == 6:
nums[i] = 0
for p in range(i+1,
len(nums)):
temp = nums[p]
nums[p] = 0
if temp == 7:
i=p+1
break
return sum(nums)

11
Fundamentos en Programación
PRUEBA EXTEMPORÁNEA

Este trabajo ha sido realizado por: JUAN SEBASTIÁN OLIVOS MONTENEGRO


- JENIFER BLANDÓN ARANDA - KEVIN SANTAMARÍA TRIANA

19. has22
def has22(nums):
for i in range(0,
len(nums)-1):
#if nums[i] == 2 and
nums[i+1] == 2:
if nums[i:i+2] == [2,2]:
return True
return False

12

También podría gustarte