Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Ejercicio1 PSP 0 Dzul Gonzalez Marcos
Ejercicio1 PSP 0 Dzul Gonzalez Marcos
9° “A”
Asignatura:
Procesos Personales para el Desarrollo de Software
Docente:
MEE. César Zenet López Cruz
Trabajo:
Ejercicio 1_PSP 0
Alumno:
Dzul González Marcos Adalberto
Ciclo Escolar:
2023- A
Fecha de entrega:
29 DE AGOSTO DEL 2023
PLANEACION INICIAL
DISEÑO
CODIFICACIÓN
from PyQt5.uic import loadUi
from PyQt5.QtWidgets import QApplication, QMainWindow, QFileDialog
from statistics import mean, median, mode, StatisticsError
from PyQt5.QtCore import *
from PyQt5.QtWidgets import QApplication, QMainWindow, QFileDialog,
QMessageBox
from PyQt5.QtGui import QFont
import sys
class ObjectScreen(QMainWindow):
def __init__(self):
super(ObjectScreen, self).__init__()
loadUi("gui_mtcc.ui", self)
self.archivo.clicked.connect(self.cargar_archivo)
self.clear.clicked.connect(self.limpiar)
def cargar_archivo(self):
archivo, _ = QFileDialog.getOpenFileName(self, "Cargar archivo de
números", "", "Archivos de texto (*.txt)")
if archivo:
self.numeros = self.leer_numeros_desde_archivo(archivo)
if self.numeros:
media = self.calcular_media()
mediana = self.calcular_mediana()
moda = self.calcular_moda()
self.label_media.setText(str(media))
self.label_mediana.setText(str(mediana))
self.label_moda.setText(str(moda))
else:
self.label_mensaje.setText("No se pudieron leer números
del archivo.")
def limpiar(self):
self.label_media.clear()
self.label_mediana.clear()
self.label_moda.clear()
self.label_mensaje.clear()
def calcular_media(self):
return mean(self.numeros)
def calcular_mediana(self):
return median(self.numeros)
def calcular_moda(self):
try:
return mode(self.numeros)
except StatisticsError:
return "No hay moda"
def main():
app = QApplication(sys.argv)
welcome = ObjectScreen()
welcome.show()
sys.exit(app.exec_())
if __name__ == '__main__':
main()
BITÁCORA DE TIEMPO
BITÁCORA DE DEFECTOS
PLANEACIÓN FINAL