none
Como se crea y se le asignan datos por teclado a un arreglo en python? RRS feed

  • Pregunta

  • Ayuda, estoy trabado, tengo una calculadora en c y quiero pasar el mismo proceso a python pero no me sale, me puedan ayudar a indicar mi problema?, el primer bloque de codigo es en python que es donde estoy batallando en la parte de hacer la division ya que no se como crear y meterle datos flotantes al arreglo sin que me de error, justo como en el codigo de c 


    menu = """
      1.-SUMA
      2.-RESTA
      3.-MULTIPLICACION
      4.-DIVISION
      """
    continuar = 0
    j = 1
    resultado = 0
    resultado1 = 1
    x = []
    
    while True:
      print("CALCULADORA")
      print(menu)
      op = int(input("Eliga una opcion"))
      if op is 1:
        numeros = int(input("Cuantos numeros vas a sumar?"))
        for i in range(numeros): 
          num1 = float(input("Ingresa el numero "+ str(j) + " a sumar" ))
          resultado += num1
          j+=1
        print("El resultado es: ",resultado)     
      elif op is 2:
        numeros = int(input("Cuantos numeros vas a restar?"))
        for i in range(numeros): 
          num1 = float(input("Ingresa el numero "+ str(j) + " a restar" ))
          resultado -= num1
          j+=1
        print("El resultado es: ",resultado) 
      elif op is 3:
        numeros = int(input("Cuantos numeros vas a multiplicar?"))
        for i in range(numeros): 
          num1 = float(input("Ingresa el numero "+ str(j) + " a multiplicar" ))
          resultado1 *= num1
          j+=1
        print("El resultado es: ",resultado1) 
      elif op is 4:
        numeros = int(input("Cuantos numeros vas a dividir?"))
        for i in range(numeros): 
          x[i] = float(input("Ingresa el numero "+ str(j) + " a dividir" ))
          j+=1
        r = x[0]
        c = 1
        for c in range(numeros):
          r = r / x[c]
    
          
        print("El resultado es: ",resultado1) 
    
      else:
        print("Error")
      
    
    
    
    
    
      continuar = int(input("Escribe 1 para repetir o cualquier otra tecla para salir"))
      if (continuar != 1):
        break 
    

    				printf("Division\n\n");
    				printf("Escriba la cantidad de numeros a dividir:");
    				scanf("%d",&n);
    				for(c=0;c<n;c++)
    				{
    					printf("Escriba el %d numero a dividir:",i);
    					scanf("%f",&x[c]);
    					i++;
    				}
    				r=x[0];
    				for(c=1;c<n;c++)
    				{
    					r=r/x[c];
    				}
    				printf("El resultado de la division es: %.2f",r);	
    				break;


    Gibran Trujillo Mtz

    lunes, 27 de julio de 2020 3:16

Respuestas

  • Hola Gibran Trujillo,

    Le comento eso a todos los hilos que pienso responder para poder llevar el control de ellos, lamento si eso te parece abusivo de alguna manera. Los arreglos están representados por la clase list en Python, para más información puedes consultar esta referencia. Algunas consecuencias de esto son:

    • el acceso aleatorio es realmente barato (arr [6653] es igual a arr [0]).
    • la operación append es 'gratis' mientras exista espacio adicional.
    • la operación insert es costosa.

    Ya en código:

    # arreglo vacío
    arr = [] 
    
    # init con valores (puede contener tipos mixtos)
    arr = [1, "eels"]
    
    # obtener elemento por índice (puede ser negativo para acceder al final de la matriz)
    arr = [1, 2, 3, 4, 5, 6]
    arr[0]  # 1
    arr[-1] # 6
    
    # obtener longitud
    length = len(arr)
    
    #  append e insert
    arr.append(8)
    arr.insert(6, 7)

    Gracias por levantar tu consulta en los foros de msdn.

     

    Saludos cordiales

    Gabriel Castro

     ____________________________ 

    Por favor recuerde "Marcar como respuesta" las respuestas que hayan resuelto su problema, es una forma común de reconocer a aquellos que han ayudado, y hace que sea más fácil para los otros visitantes encontrar la solución más tarde.  


    lunes, 27 de julio de 2020 19:15
    Moderador

Todas las respuestas

  • Hola,

     

    Voy a investigar tu consulta.

     

    Saludos Cordiales

    Gabriel Castro

    lunes, 27 de julio de 2020 16:23
    Moderador
  • Muchas gracias


    Gibran Trujillo Mtz

    lunes, 27 de julio de 2020 18:18
  • Hola Gibran Trujillo,

    Le comento eso a todos los hilos que pienso responder para poder llevar el control de ellos, lamento si eso te parece abusivo de alguna manera. Los arreglos están representados por la clase list en Python, para más información puedes consultar esta referencia. Algunas consecuencias de esto son:

    • el acceso aleatorio es realmente barato (arr [6653] es igual a arr [0]).
    • la operación append es 'gratis' mientras exista espacio adicional.
    • la operación insert es costosa.

    Ya en código:

    # arreglo vacío
    arr = [] 
    
    # init con valores (puede contener tipos mixtos)
    arr = [1, "eels"]
    
    # obtener elemento por índice (puede ser negativo para acceder al final de la matriz)
    arr = [1, 2, 3, 4, 5, 6]
    arr[0]  # 1
    arr[-1] # 6
    
    # obtener longitud
    length = len(arr)
    
    #  append e insert
    arr.append(8)
    arr.insert(6, 7)

    Gracias por levantar tu consulta en los foros de msdn.

     

    Saludos cordiales

    Gabriel Castro

     ____________________________ 

    Por favor recuerde "Marcar como respuesta" las respuestas que hayan resuelto su problema, es una forma común de reconocer a aquellos que han ayudado, y hace que sea más fácil para los otros visitantes encontrar la solución más tarde.  


    lunes, 27 de julio de 2020 19:15
    Moderador
  • Muchas gracias! me sirvio mucho, y lamento el mal entendido.

    Gibran Trujillo Mtz


    lunes, 27 de julio de 2020 19:48