viernes, 31 de enero de 2025

Mostrar un mensaje si hay números repetidos o no hay de una lista en Python

Código del ejercicio:

n = int(input("Ingrese la cantidad de números a introducir: "))
lista = []
for c in range(n):
  x = int(input("Ingresar x: "))
  lista.append(x)
for i in range(0, n-1):
  for j in range(i, n):
    if lista[i] > lista[j]:
      aux = lista[i]
      lista[i] = lista[j]
      lista[j] = aux
bandera = False
for i in range(0, n-1):
  for j in range(i+1, n):
    if lista[i] == lista[j]:
      bandera = True
      break
if bandera:
  print("Existen números repetidos")
else:
  print("No existen números repetidos")

Definición de los códigos del ejercicio:

lista = [1,2,3,4] --> son variables que almacenan arrays, internamente cada posición puede ser un tipo de datos distinto.
int() --> convierte el valor especificado en un número entero.
input() --> permite obtener texto escrito por teclado.
for --> el bucle for se utiliza para recorrer los elementos de un objeto iterable (lista, tupla, conjunto, diccionario, …) y ejecutar un bloque de código.
in --> el operador in devuelve True si el valor se encuentra en una secuencia; False en caso contrario.
range --> es un tipo que se utiliza para representar una secuencia inmutable de números. Uno de sus principales usos es junto a la sentencia for, para definir un bucle sobre el que se itera un número determinado de veces.
append() --> agrega un elemento al final de la lista.
> --> el operador mayor que ( > ) devuelve true si el operando izquierdo es mayor que el operando derecho.
if --> use if para especificar un bloque de código que se ejecutará, si una condición especificada es verdadera.
else --> use else para especificar un bloque de código a ejecutar, si la misma condición es falsa.
== --> el operador de igualdad ( == ) regresa true si sus operandos son iguales, false en caso contrario.
sort() --> ordena la lista de forma ascendente por defecto.
break --> se utiliza para romper un for bucle o un while bucle.
print() --> imprime un mensaje en la pantalla.

Explicación del Código:

Este código en Python tiene como objetivo verificar si hay números repetidos en una lista. A continuación se describe su funcionamiento paso a paso:

1. Entrada de Datos

El programa solicita al usuario la cantidad de números que desea ingresar mediante la instrucción:

n = int(input("Ingrese la cantidad de números a introducir: "))

Luego, se inicializa una lista vacía llamada lista, donde se almacenarán los números que el usuario ingrese.

2. Creación de la Lista

Mediante un ciclo for, el programa solicita al usuario que ingrese cada número uno por uno, y los va agregando a la lista:


for c in range(n):
  x = int(input("Ingresar x: "))
  lista.append(x)
    

3. Ordenamiento de la Lista

El código utiliza el algoritmo de ordenación de burbuja para ordenar los números de menor a mayor. Se compara cada par de elementos en la lista y, si un número es mayor que el siguiente, se intercambian:


for i in range(0, n-1):
  for j in range(i, n):
    if lista[i] > lista[j]:
      aux = lista[i]
      lista[i] = lista[j]
      lista[j] = aux
    

4. Verificación de Números Repetidos

Después de ordenar la lista, el programa recorre la lista para verificar si hay números repetidos. Si encuentra un par de números iguales, establece la variable bandera en True y se sale del ciclo:


bandera = False
for i in range(0, n-1):
  for j in range(i+1, n):
    if lista[i] == lista[j]:
      bandera = True
      break
    

5. Mensaje de Salida

Finalmente, el programa muestra un mensaje indicando si se encontraron o no números repetidos en la lista:


if bandera:
  print("Existen números repetidos")
else:
  print("No existen números repetidos")
    

Si la variable bandera es True, significa que hay números repetidos; de lo contrario, no hay repetidos.

Código del ejercicio: Otra forma de hacer

n = int(input("Ingrese la cantidad de números a introducir: "))
lista = []
for c in range(n):
  x = int(input("Ingresar x: "))
  lista.append(x)
lista.sort()
print(lista)
bandera = False
for i in range(0, n-1):
  for j in range(i+1, n):
    if lista[i] == lista[j]:
      bandera = True
      break
if bandera:
  print("Existen números repetidos")
else:
  print("No existen números repetidos")

Definición de los códigos del ejercicio:

lista = [1,2,3,4] --> son variables que almacenan arrays, internamente cada posición puede ser un tipo de datos distinto.
int() --> convierte el valor especificado en un número entero.
input() --> permite obtener texto escrito por teclado.
for --> el bucle for se utiliza para recorrer los elementos de un objeto iterable (lista, tupla, conjunto, diccionario, …) y ejecutar un bloque de código.
in --> el operador in devuelve True si el valor se encuentra en una secuencia; False en caso contrario.
range --> es un tipo que se utiliza para representar una secuencia inmutable de números. Uno de sus principales usos es junto a la sentencia for, para definir un bucle sobre el que se itera un número determinado de veces.
append() --> agrega un elemento al final de la lista.
> --> el operador mayor que ( > ) devuelve true si el operando izquierdo es mayor que el operando derecho.
if --> use if para especificar un bloque de código que se ejecutará, si una condición especificada es verdadera.
else --> use else para especificar un bloque de código a ejecutar, si la misma condición es falsa.
== --> el operador de igualdad ( == ) regresa true si sus operandos son iguales, false en caso contrario.
sort() --> ordena la lista de forma ascendente por defecto.
break --> se utiliza para romper un for bucle o un while bucle.
print() --> imprime un mensaje en la pantalla.

Explicación del Código:

Este es un código que verifica si hay números repetidos en una lista. Aquí te explico cada parte del código:

1. Entrada de la cantidad de números:

n = int(input("Ingrese la cantidad de números a introducir: "))

Se solicita al usuario que ingrese la cantidad de números que quiere introducir en la lista.

2. Inicialización de la lista:

    lista = []
  

Se crea una lista vacía para almacenar los números ingresados por el usuario.

3. Bucle para ingresar los números:

    for c in range(n):
      x = int(input("Ingresar x: "))
      lista.append(x)
  

Se utiliza un bucle que se repite n veces. En cada iteración, el usuario ingresa un número, que luego se agrega a la lista.

4. Ordenar la lista:

    lista.sort()
  

La lista se ordena de menor a mayor para facilitar la comparación entre los números.

5. Mostrar la lista ordenada:

    print(lista)
  

Se imprime la lista ordenada para que el usuario vea los números en orden.

6. Inicialización de la bandera:

    bandera = False
  

Se inicializa una variable llamada bandera en False. Esta variable se utilizará para indicar si se encuentran números repetidos.

7. Bucle para comparar los números:

    for i in range(0, n-1):
      for j in range(i+1, n):
        if lista[i] == lista[j]:
          bandera = True
          break
  

Se usan dos bucles anidados para comparar todos los pares posibles de números en la lista. Si se encuentran dos números iguales, se cambia el valor de la bandera a True y se sale del bucle.

8. Verificación de números repetidos:

    if bandera:
      print("Existen números repetidos")
    else:
      print("No existen números repetidos")
  

Si la bandera es True, significa que se encontraron números repetidos, por lo que se imprime el mensaje "Existen números repetidos". De lo contrario, se imprime "No existen números repetidos".

No hay comentarios.:

Publicar un comentario

Ingresar un número entero y mostrar todos los números impares hasta el número ingresado en Python

Código del ejercicio: Con ciclo while numero = int ( input ( "Ingresar un número: " )) if numero ...

Copyright ©2025 Ejercicios de programación. Todos los derechos reservados. ❤️