Programación Python

Python – Calcula Almacenamiento

Lenguaje: Python
Categoría: POC
Cubre: Condicionales, If, división, entera, modulo, división entera, módulo
Nombre:  calcula_almacenamiento.py
Repositorio:  https://github.com/carlosgbr/PythonBasico/blob/main/calcula_almacenamiento.py
Compilado en: OnlineGdb

Enunciado

Si un sistema de archivos tiene un tamaño de bloque de 4096 bytes, esto significa que un archivo compuesto por un solo byte seguirá usando 4096 bytes de almacenamiento. Un archivo compuesto por 4097 bytes usará 4096 * 2 = 8192 bytes de almacenamiento. Sabiendo esto, ¿Puede completar los espacios en la función calcula_almacenamiento a continuación, que calcula el tamaño de almacenamiento necesario para un tamaño de archivo determinado?

Código fuente

""" Funciones y condicionales: calcula_almacenamiento.py
  Se ilustra el uso de funciones y la estructura if en Python
 Por https://about.me/carlosgbr
 Fecha: 02/01/2025
 Versión 1
 Actualizado: 02/01/2025
 Para Python 3.11 y superior
"""
def calcula_almacenamiento(tamanoarchivo):
    tamano_bloque = 4096
    # Use la división de piso para calcular cuántos bloques están completamente ocupados
    bloques_completos = tamanoarchivo // tamano_bloque
    # Use el operador de módulo para verificar si hay algún resto
    residuo_parcial_bloque = tamanoarchivo % tamano_bloque
    # Dependiendo de si hay un resto o no, devuelva el número correcto.
    if residuo_parcial_bloque > 0:
        return bloques_completos * tamano_bloque + tamano_bloque
    return bloques_completos * tamano_bloque
print(calcula_almacenamiento(1))    # Debiera ser 4096
print(calcula_almacenamiento(4096)) # Debiera ser 4096
print(calcula_almacenamiento(4097)) # Debiera ser 8192
print(calcula_almacenamiento(6000)) # Debiera ser 8192

Salida del programa

Uso de funciones en Python
Uso de funciones en Python

Ejecuta el programa

Pulsa el botón Exec para ejecutar el programa, ¡también puedes modificar el código y comprobar la salida!

Notas

Ninguna.

Informar de errores

Si encuentras algún error o aporte a la información proporcionada por favor dirígela a soporte@ehack.mx

Otras consideraciones

Si deseas que desarrollemos un ejemplo en particular, escríbelo en los comentarios.

Si tienes alguna duda que no se responde en este documento, por favor plantea tu pregunta para poder responderte. O escribe directamente a soporte@ehack.mx



Referencias

Fuente Imágenes

  • Todas las imágenes de esta sección cortesía by Nala Systems

Pruebas de concepto (PoC) en Python


Licencia Creative Commons
  
POC - Python para Ethical Hack, por Roberto C. González. Se distribuye bajo una Licencia Creative Commons Atribución-NoComercial-CompartirIgual 4.0 Internacional. 

Ⓟ 2025, Ethical Hack, Todos los derechos reservados sobre el contenido propio.


                    

eHack Blog

About Author

Leave a comment

También te podría gustar...

C++ Programación

Presentación: Tutorial de C++

Bienvenido a este tutorial de lenguaje C++, está pensado para usuarios que nunca han programado y para usuarios que no
C++ Programación

Lenguaje C++ – Introducción

Presento algunas razones porqué empezar con C++ y una breve descripción histórica del lenguaje. Además algunos compiladores de C++