Lógica - ayuda para este ejercicio de logica

 
Vista:

ayuda para este ejercicio de logica

Publicado por juan (1 intervención) el 05/07/2017 01:15:45
1- Dado un grupo de N Números (Diferentes a uno), realice un algoritmo que permita determinar y dar como salida lo siguiente:

ü Número Mayor y número menor encontrado en el grupo
ü Cantidad de Números Negativos Encontrados
ü Cantidad de Números Mayores a 25
ü Promedio de los Positivos y Negativos Encontrados.
(Utilizar el Ciclo Para-Hacer)

2- Un Tecnológico, ofrece un curso “Computación” y desea realizar un algoritmo que permita determinar y dar como salida la cantidad de dinero recaudado por concepto del curso además del total de sexo femenino y masculino, teniendo en cuenta que se tiene por cada participante la siguiente información:

ü Cedula de Identidad
ü Edad del participante
ü Sexo del participante
ü Nombre del Participante
ü Procedencia (At = Alumno del Tecnológico, Dt = Docente del Tecnológico, Tt= Trabajador del tecnológico, Pg = Público en General).

Tomando en cuenta que la procedencia se cobra de la siguiente tarifa:
ü At = 100.000 Bsf.
ü Dt = 150.000 Bsf.
ü Tt= 200.000 Bsf.
ü Pg= 250.00000 Bsf.
(Realizar este algoritmo Utilizando menú)
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Resolución de problemas de números y recaudación de un curso

Publicado por Alejandro (49 intervenciones) el 26/01/2024 23:44:11
1

Dado un grupo de n números (diferentes a uno), realiza un algoritmo que permita determinar y dar como salida lo siguiente:

- Número mayor y número menor encontrado en el grupo
- Cantidad de números negativos encontrados
- Cantidad de números mayores a 25
- Promedio de los positivos y negativos encontrados.
(Utilizar el ciclo para-hacer)

Solución

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# Inicializar variables
n = int(input("Ingrese la cantidad de números: "))
numeros = []
 
# Ciclo para-hacer para ingresar los números al grupo
for i in range(n):
    num = float(input(f"Ingrese el número {i + 1}: "))
    numeros.append(num)
 
# Encontrar el número mayor y menor
numero_mayor = max(numeros)
numero_menor = min(numeros)
 
# Contar números negativos y mayores a 25
negativos = sum(1 for num in numeros if num < 0)
mayores_a_25 = sum(1 for num in numeros if num > 25)
 
# Calcular promedio de positivos y negativos
positivos = [num for num in numeros if num > 0]
negativos = [num for num in numeros if num < 0]
promedio_positivos = sum(positivos) / len(positivos) if positivos else 0
promedio_negativos = sum(negativos) / len(negativos) if negativos else 0
 
# Mostrar resultados
print(f"Número mayor: {numero_mayor}")
print(f"Número menor: {numero_menor}")
print(f"Cantidad de números negativos: {negativos}")
print(f"Cantidad de números mayores a 25: {mayores_a_25}")
print(f"Promedio de positivos: {promedio_positivos}")
print(f"Promedio de negativos: {promedio_negativos}")

2

Un tecnológico, ofrece un curso “computación” y desea realizar un algoritmo que permita determinar y dar como salida la cantidad de dinero recaudado por concepto del curso además del total de sexo femenino y masculino, teniendo en cuenta que se tiene por cada participante la siguiente información:

- Cédula de identidad
- Edad del participante
- Sexo del participante
- Nombre del participante
- Procedencia (AT = Alumno del tecnológico, DT = Docente del tecnológico, TT = Trabajador del tecnológico, PG = Público en general).

Tomando en cuenta que la procedencia se cobra de la siguiente tarifa:
- AT = 100.000 bsf.
- DT = 150.000 bsf.
- TT = 200.000 bsf.
- PG= 250.00000 bsf.
(Realizar este algoritmo utilizando menú)

Solución

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
# Inicializar variables
total_dinero_recaudado = 0
total_femenino = 0
total_masculino = 0
 
while True:
    # Menú
    print("\n1. Registrar participante")
    print("2. Mostrar resultados")
    print("3. Salir")
 
    opcion = int(input("Seleccione una opción: "))
 
    if opcion == 1:
        # Ingresar datos del participante
        cédula = input("Ingrese la cédula de identidad: ")
        edad = int(input("Ingrese la edad del participante: "))
        sexo = input("Ingrese el sexo del participante (F/M): ").upper()
        nombre = input("Ingrese el nombre del participante: ")
        procedencia = input("Ingrese la procedencia (AT/DT/TT/PG): ").upper()
 
        # Calcular tarifa según procedencia
        if procedencia == "AT":
            tarifa = 100000
        elif procedencia == "DT":
            tarifa = 150000
        elif procedencia == "TT":
            tarifa = 200000
        elif procedencia == "PG":
            tarifa = 250000
        else:
            print("Procedencia no válida. Intente de nuevo.")
            continue
 
        # Actualizar total de dinero recaudado
        total_dinero_recaudado += tarifa
 
        # Actualizar total de sexo femenino y masculino
        if sexo == "F":
            total_femenino += 1
        elif sexo == "M":
            total_masculino += 1
        else:
            print("Sexo no válido. Intente de nuevo.")
            continue
 
        print("Participante registrado exitosamente.")
    elif opcion == 2:
        # Mostrar resultados
        print(f"\nTotal dinero recaudado: {total_dinero_recaudado} Bsf.")
        print(f"Total femenino: {total_femenino}")
        print(f"Total masculino: {total_masculino}")
    elif opcion == 3:
        # Salir del programa
        break
    else:
        print("Opción no válida. Intente de nuevo.")

Estos son los algoritmos propuestos para las dos situaciones que has planteado. Puedes ajustar y modificar según tus necesidades específicas, Juan.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar