0% encontró este documento útil (0 votos)
19 vistas4 páginas

Procesamiento de matrices y verbos

El documento contiene varias funciones en Python para procesar matrices, contar verbos en infinitivo y calcular promedios de ventas. Las funciones incluyen validaciones de entrada y cálculos específicos como suma y multiplicación de elementos en diagonales de matrices, así como el conteo de verbos que terminan en 'ar', 'er' o 'ir'. También se evalúa si un vendedor comisiona basado en su promedio de ventas.

Cargado por

sbolanosa
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
19 vistas4 páginas

Procesamiento de matrices y verbos

El documento contiene varias funciones en Python para procesar matrices, contar verbos en infinitivo y calcular promedios de ventas. Las funciones incluyen validaciones de entrada y cálculos específicos como suma y multiplicación de elementos en diagonales de matrices, así como el conteo de verbos que terminan en 'ar', 'er' o 'ir'. También se evalúa si un vendedor comisiona basado en su promedio de ventas.

Cargado por

sbolanosa
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

4

def procesar_matriz():
entrada = input().strip()

# Separar la entrada por 'x' y convertir a enteros


partes = [Link]('x')
filas = int(partes[0])
columnas = int(partes[1])

# Validar que la matriz sea cuadrada e impar


if filas != columnas or filas % 2 == 0:
print("El numero de filas debe ser igual al numero de columnas y este valor debe ser
impar")
return

# Leer la matriz
matriz = []
for _ in range(filas):
fila = list(map(int, input().strip().split()))
[Link](fila)

n = filas
suma_diag_principal = sum(matriz[i][i] for i in range(n))
mult_diag_secundaria = 1
for i in range(n):
mult_diag_secundaria *= matriz[i][n - 1 - i]

fila_mitad = n // 2
suma_fila_mitad = sum(matriz[fila_mitad])

columna_mitad = n // 2
mult_columna_mitad = 1
for i in range(n):
mult_columna_mitad *= matriz[i][columna_mitad]

# Imprimir resultados
print(suma_diag_principal)
print(mult_diag_secundaria)
print(suma_fila_mitad)
print(mult_columna_mitad)

# Ejecutar la función
procesar_matriz()

5
def contar_infinitivos():
n = int(input()) # Número de casos
for _ in range(n):
linea = input().strip().split()
conteo = 0
for verbo in linea:
if [Link]('ar') or [Link]('er') or [Link]('ir'):
conteo += 1
print(conteo)

# Ejecutar la función
contar_infinitivos()
6
def calcular_promedio_ventas():
# Diccionario con las ventas
ventas = {
"Natalia": [150000, 235000, 100000, 460000, 213000],
"Hugo": [125000, 98000, 133000, 75000, 113000],
"Laura": [213000, 250000, 138000, 265600, 112350],
"Lizeth": [115000, 260000, 56000, 270000, 85000],
"María": [250000, 375800, 222331, 160000, 123500],
"Rafael": [96000, 13000, 60500, 101000, 31500]
}

# Entrada: nombre del vendedor


nombre = input()

# Calcular promedio
lista_ventas = ventas[nombre]
promedio = sum(lista_ventas) / len(lista_ventas)

# Imprimir resultados
print(f"{promedio:.1f}")
if promedio >= 130000:
print("Comisiona")
else:
print("No comisiona")

# Ejecutar función
calcular_promedio_ventas()

4G
def procesar_matriz():
try:
tamaño_str = input()
filas_str, columnas_str = tamaño_str.split('x')
n_filas = int(filas_str)
n_columnas = int(columnas_str)

if n_filas != n_columnas or n_filas % 2 == 0 or n_columnas % 2 == 0:


print("El número de filas debe ser igual al número de columnas y este valor debe ser
impar")
return

matriz = []
for _ in range(n_filas):
fila_elementos = []
for _ in range(n_columnas):
fila_elementos.append(int(input()))
[Link](fila_elementos)

suma_diagonal_principal = 0
for i in range(n_filas):
suma_diagonal_principal += matriz[i][i]
print(suma_diagonal_principal)

multiplicacion_diagonal_secundaria = 1
for i in range(n_filas):
multiplicacion_diagonal_secundaria *= matriz[i][n_columnas - 1 - i]
print(multiplicacion_diagonal_secundaria)

fila_central_idx = n_filas // 2
suma_fila_central = 0
for elemento in matriz[fila_central_idx]:
suma_fila_central += elemento
print(suma_fila_central)

columna_central_idx = n_columnas // 2
multiplicacion_columna_central = 1
for i in range(n_filas):
multiplicacion_columna_central *= matriz[i][columna_central_idx]
print(multiplicacion_columna_central)

except ValueError:
print("Error: Entrada inválida.")
except IndexError:
print("Error: La matriz no se pudo construir correctamente.")

procesar_matriz()

5G
def contar_verbos_infinitivo():
try:
n_casos = int(input())
resultados = []

for _ in range(n_casos):
linea_verbos = input()
verbos = linea_verbos.split()
contador_infinitivos = 0
for verbo in verbos:
verbo_lower = [Link]()
if verbo_lower.endswith(('ar', 'er', 'ir')):
contador_infinitivos += 1
[Link](contador_infinitivos)

for resultado in resultados:


print(resultado)

except ValueError:
print("Error: La primera línea debe ser un número entero que indique la cantidad de
casos.")
except Exception as e:
print(f"Ocurrió un error inesperado: {e}")

contar_verbos_infinitivo()

6G
def calcular_comision():
ventas_vendedores = {
"Natalia": [150000, 235000, 100000, 460000, 213000],
"Hugo": [120000, 98000, 135000, 75000, 113000],
"Laura": [215000, 150000, 138000, 206000, 12310],
"Lizeth": [115000, 260000, 56000, 27000, 85000],
"María": [250000, 175600, 222331, 169000, 123500],
"Rafael": [95000, 10000, 98000, 101000, 92000]
}

nombre_vendedor = input()

ventas = ventas_vendedores[nombre_vendedor]
promedio_ventas = sum(ventas) / len(ventas)

print(f"{promedio_ventas:.1f}")

if promedio_ventas >= 130000:


print("Comisiona")
else:
print("No comisiona")

calcular_comision()

También podría gustarte