Python - PROGRAMA CONTADOR PYTHON CON CLASES Y OBJETOS

 
Vista:
sin imagen de perfil

PROGRAMA CONTADOR PYTHON CON CLASES Y OBJETOS

Publicado por pipe87 (8 intervenciones) el 06/04/2021 20:53:07
Un instituto de idiomas ofrece cursos de inglés, francés y mandarín.
Necesita un programa que le permita al estudiante elegir uno de los 3
cursos que desee estudiar. La aplicación mostrará después de cada
registro la cantidad de estudiantes que tiene cada curso.
Condiciones:
 Utilizar clases
 La clase creada debe tener atributos
 La clase creada debe tener como mínimo los métodos para
ingresar datos, calcular cuántos estudiantes ingresaron al instituto
e imprimir resultados.


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
class curso:
    def __init__(self,nombre,can):#DEFINIMOS LOS ATRIBUTOS DE LA CLASE
                                  #EN EL INICIALIZADOR
            self.nombre=nombre
            self.can=can
 
 
    def imprimir(self):#FUNCION IMPRMIR
 
 
    def calcular(self):#FUNCION CALCULAR
 
 
 
    def ingresar(self):#FUNCION INGRESAR
 
 
 
 
ing = curso('[INGLES  ]',0)#CREAMOS LAS INSTANCIAS CON NOMBRE Y CANTIDAD
fra = curso('[FRANCES ]',0)
man = curso('[MANDARIN]',0)
 
 
 
 
#BLOQUE PRINCIPAL


Quisiera que me ayudaran con este código yo lo construí y funciono pero usando contadores en vez de instanciar objetos pero creo que instanciando objetos es mejor técnicamente

asi funciona utilizando contadores

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
class curso:
    def __init__(self,nombre,cing,cfra,cman):#DEFINIMOS LOS ATRIBUTOS DE LA CLASE
                                                      #EN EL INICIALIZADOR
            self.nombre=nombre
            self.cing=0
            self.cfra=0
            self.cman=0
 
 
 
 
    def ingresar(self):#FUNCION INGRESAR
 
                print("SELECCIONA UN CURSO")#MENU DE OPCIONES
                print("1.INGLES")
                print("2.FRANCES")
                print("3.MANDARIN")
                print("Digite opcion: ")
 
    def calcular(self):#FUNCION CALCULAR
                 opcion=int(input())
 
                 if opcion==1:
                  self.cing=self.cing+1
                 if opcion==2:
                  self.cfra=self.cfra+1
                 if opcion==3:
                  self.cman=self.cman+1
                 if opcion==0 or opcion>=3:
                   print("opcion invalida")
 
 
 
 
    def imprimir(self):#FUNCION IMPRMIR
        print("[CURSO]"      "[MATRICULADOS]")
        print("INGLES:-------",self.cing)
        print("FRANCES:------",self.cfra)
        print("MANDARIN:-----",self.cman)
 
 
#FUNCION PRINCIPAL  DESDE DONDE LLAMAMOS ALOS METODOS
registro=curso("nombre","cing","cfra","cman")
continua=True
while(continua):#HACEMOS UN WHILE PARA QUE SE EJECUTE HASTA QUE QUERAMOS
     registro.ingresar()
     registro.calcular()#LLAMADO ALOS METODOS
     registro.imprimir()
     print("Quieres continuar (s/n)? ")
     if(input()=="s" or input()=="S"):
        continua=True
     else:
        continua=False
        print("Fin del programa")
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 Joel
Val: 3.475
Oro
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

PROGRAMA CONTADOR PYTHON CON CLASES Y OBJETOS

Publicado por Joel (901 intervenciones) el 07/04/2021 08:01:08
Haber si te sirve algo así:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
class curso:
    estudiantes={}
 
    def imprimir(self):#FUNCION IMPRMIR
        print("estudiantes:")
        for i in self.estudiantes:
            print(i, self.estudiantes[i])
 
 
    def ingresar(self, idioma):#FUNCION INGRESAR
        if idioma in self.estudiantes:
            self.estudiantes[idioma]+=1
        else:
            self.estudiantes[idioma]=1
        self.imprimir()
 
curso = curso()
curso.ingresar("INGLES")
curso.ingresar("FRANCES")
curso.ingresar("MANDARIN")
curso.ingresar("FRANCES")

Va mostrando por pantalla la cantidad de estudiantes en cada lenguaje:
1
2
3
4
5
6
7
8
9
10
11
12
13
estudiantes:
INGLES 1
estudiantes:
INGLES 1
FRANCES 1
estudiantes:
INGLES 1
FRANCES 1
MANDARIN 1
estudiantes:
INGLES 1
FRANCES 2
MANDARIN 1
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
sin imagen de perfil

PROGRAMA CONTADOR PYTHON CON CLASES Y OBJETOS

Publicado por CONTADOR CLASES OBJETOS (8 intervenciones) el 07/04/2021 14:14:34
Amigo lo que pasa es que es obligatorio utilizar los objetos el programa debe capturar la selección que haga el usuario y el profesor me dice que solo debo llamar los métodos por fuera de la clase.
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
Imágen de perfil de joel
Val: 3.475
Oro
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

PROGRAMA CONTADOR PYTHON CON CLASES Y OBJETOS

Publicado por joel (901 intervenciones) el 07/04/2021 16:03:30
si, no te lo he puesto, porque seria copiar tu código de arriba y ponerlo en este... simplemente copia el while(continua) que tienes arriba y vas haciendo llamadas a la clase como te he mostrado...

No se si me he sabido explicar...
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
sin imagen de perfil

PROGRAMA CONTADOR PYTHON CON CLASES Y OBJETOS

Publicado por PROGRAMA CONTADOR PYTHON CLASES Y OBJETOS (8 intervenciones) el 07/04/2021 19:17:06
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
class curso:
    def __init__(self,nombre,cing,cfra,cman):#DEFINIMOS LOS ATRIBUTOS DE LA CLASE
                                                      #EN EL INICIALIZADOR
            self.nombre=nombre
            self.cing=0
            self.cfra=0
            self.cman=0
 
 
 
 
    def ingresar(self):#FUNCION INGRESAR
 
                print("SELECCIONA UN CURSO")#MENU DE OPCIONES
                print("1.INGLES")
                print("2.FRANCES")
                print("3.MANDARIN")
                print("Digite opcion: ")
 
    def calcular(self):#FUNCION CALCULAR
                 opcion=int(input())
 
                 if opcion==1:
                  self.cing=self.cing+1
                 if opcion==2:
                  self.cfra=self.cfra+1
                 if opcion==3:
                  self.cman=self.cman+1
                 if opcion==0 or opcion>=3:
                   print("opcion invalida")
 
 
 
 
    def imprimir(self):#FUNCION IMPRMIR
        print("[CURSO]"      "[MATRICULADOS]")
        print("INGLES:-------",self.cing)
        print("FRANCES:------",self.cfra)
        print("MANDARIN:-----",self.cman)
 
 
#FUNCION PRINCIPAL  DESDE DONDE LLAMAMOS ALOS METODOS
registro=curso("nombre","cing","cfra","cman")
continua=True
while(continua):#HACEMOS UN WHILE PARA QUE SE EJECUTE HASTA QUE QUERAMOS
     registro.ingresar()
     registro.calcular()#LLAMADO ALOS METODOS
     registro.imprimir()
     print("Quieres continuar (s/n)? ")
     if(input()=="s" or input()=="S"):
        continua=True
     else:
        continua=False
        print("Fin del programa")



Quiero que funciones como este pero en vez de contadores haga uso de los objetos creados para la clase el que me enviaste lo que hace es cargar un alumno pero a cada materia y asi no es debe ser cargar un alumno dependiento la opcion del usuario pero gracias por tu intencion
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
Imágen de perfil de Damian
Val: 45
Ha disminuido 1 puesto en Python (en relación al último mes)
Gráfica de Python

PROGRAMA CONTADOR PYTHON CON CLASES Y OBJETOS

Publicado por Damian (6 intervenciones) el 09/04/2021 07:07:44
Esta es mi version de la solucion con una interfaz gráfica
Es mi primer codigo escrito en python, me gusto como quedo.
Espero que les sea util y si ven algo que se pueda mejorar o cambiar agradeceria que me lo comentaran, si andan con ganas por supuesto.

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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
# -*- coding: utf-8 -*-
"""
Created on Thu Apr  8 21:01:56 2021
@author: Damian
"""
'''
Un instituto de idiomas ofrece cursos de inglés, francés y mandarín.
Necesita un programa que le permita al estudiante elegir uno de los 3 cursos que desee estudiar.
**La aplicación mostrará después de cada registro la cantidad de estudiantes que tiene cada curso.
Condiciones:  Utilizar clases  La clase creada debe tener atributos
 La clase creada debe tener como mínimo los métodos para ingresar datos,
        calcular cuántos estudiantes ingresaron al instituto
        e imprimir resultados.
extra: guarda todo lo ingresado en un fichero en el disco para poder volver a cargarlo la proxima vez
'''
from tkinter import *
from tkinter import messagebox
import tkinter.scrolledtext as scrolledtext
 
#para guardar y habrir ficheros en el disco
import io #supuestamente se necesita para open(fichero) pero el compilador marca que no se usa nada de esta libreria
from pickle import load
from pickle import dump
 
#para agregar detalles en imprimir_listado en el archivo de texto
from datetime import datetime
 
 
 
class Estudiante():
 
    def __init__ (self, nombre_est, apellido_est):
        self.nombre=nombre_est
        self.apellido=apellido_est
 
#--fin Estudiante
 
 
class CursoIdioma():
 
    def __init__ (self):
        self.listaCurso=[]
 
    def ingresar(self,nodoEstudiante):         # ingresa un estudiante al curso
        self.listaCurso.append(nodoEstudiante)
 
    def lista_para_imprimir(self):         #retorna un string con todos los estudiantes en lineas diferentes
        cadena=""
 
        for i in self.listaCurso:
            cadena=cadena + "Nombre: {} Apellido: {}\n".format(i.nombre, i.apellido)
 
        return cadena
 
    def calcularCant(self):                     #Retorna la cantidad de alumnos en este curso
        return len(self.listaCurso)
 
#-fin CursoIdiomas
 
class TodosLosCursos():
    def __init__ (self):
        self.ingles=CursoIdioma()
        self.frances=CursoIdioma()
        self.mandarin=CursoIdioma()
 
 
def agrega_nuevo_alumno(): #es llamada por el boton "Agregar nuevo"
    obj_curso=curso
 
    nombre=entrada_nomb.get()
    apellido=entrada_apell.get()
    valor_radio=val_radio.get() #1 = Ingles  2 = Frances  3 = Mandarin
 
    if  nombre == "":
        print(messagebox.showinfo(message="Igrese un nombre", title="Advertencia") )
    else:
        if apellido =="":
            print(messagebox.showinfo(message="Igrese un apellido", title="Advertencia") )
        else:
            if valor_radio == 0:
                print(messagebox.showinfo(message="Seleccione un curso", title="Advertencia") )
            else:
                # agrega el estudiante
                alumno_nuevo=Estudiante(nombre,apellido)
 
                if valor_radio == 1:
                    obj_curso.ingles.ingresar(alumno_nuevo)
                    var_etiq_ing.set(obj_curso.ingles.calcularCant()) #actualiza la etiqueta de cantidad
                    radio_ingles.deselect()
                else:
                    if valor_radio == 2:
                        obj_curso.frances.ingresar(alumno_nuevo)
                        var_etiq_fran.set(obj_curso.frances.calcularCant() )
                        radio_frances.deselect()
                    else:
                        if valor_radio == 3:
                            obj_curso.mandarin.ingresar(alumno_nuevo)
                            var_etiq_mand.set(obj_curso.mandarin.calcularCant() )
                            radio_mandarin.deselect()
 
                print(messagebox.showinfo(message="Alumno ingresado", title="Notificacion") )
                texto_nombre.set("")
                texto_apellido.set("")
                val_radio.set(0)
 
#--fin agrega_nuevo_alumno
 
 
#Cuando se apreta el boton "Imprimir"
#imprime toda la informacion de los cursos con sus alumnos en la caja de texto texto_impresion
 
def imprimir_listado():
    obj_curso=curso
 
    c_i =obj_curso.ingles.calcularCant()
    c_f =obj_curso.frances.calcularCant()
    c_m =obj_curso.mandarin.calcularCant()
 
    txt="En total hay {} estudiantes ingresados.\n".format(c_i+c_f+c_m)
    if c_i > 0: #si hay registros
        txt=txt+"Para el curso de Ingles se anotaron {} alumnos y son los siguientes:\n".format(c_i)
        txt=txt+obj_curso.ingles.lista_para_imprimir()+"\n"
    if c_f > 0:
        txt=txt+"Para el curso de Frances se anotaron {} alumnos y son los siguientes:\n".format(c_f)
        txt=txt+obj_curso.frances.lista_para_imprimir()+"\n"
    if c_m > 0:
        txt=txt+"Para el curso de Mandarin se anotaron {} alumnos y son los siguientes:\n".format(c_m)
        txt=txt+obj_curso.mandarin.lista_para_imprimir()+"\n"
 
    texto_impresion.delete("1.0","end")
    texto_impresion.insert(END, txt)
 
    #imprime en un archivo de texto,
    #se habre el fichero en modo "append" agregando la fecha y hora como cabecera para el nuevo registro
    archivo_txt=open(ruta_fichero_texto,'a')
    tx='**************************** \n' #cabecera de cada
    tx=tx+'Registro tomado el '+ str(now.date()) + "\n" +'a las '+ str(now.time()) + "\n\n" + txt + "\n\n"
 
    archivo_txt.write(tx)
    archivo_txt.close()
    del(archivo_txt)
 
 
 
 
 
 
##-imprime_listado
 
 
def habrir_fichero():
    try:
        fichero_binario=open(ruta_fichero_binario,"rb")
        bol=messagebox.askyesno(message="Si ya cargo datos, se sobreescribiran\n ¿Desea continuar?", title="Cargar nuevos")
 
        if bol:
 
            obj_curso=load(fichero_binario)
            global curso  #de esta forma puedo modificar una variable global desde una funcion
            curso=obj_curso
 
#actualiza las etiquetas de cantidad
            var_etiq_ing.set(obj_curso.ingles.calcularCant() )
            var_etiq_fran.set(obj_curso.frances.calcularCant() )
            var_etiq_mand.set(obj_curso.mandarin.calcularCant())
 
            fichero_binario.close()
            del(fichero_binario)
 
            print(messagebox.showinfo(message="Fichero cargado", title="Notificacion") )
 
    except FileNotFoundError:
        messagebox.showinfo(message="No se ha guardado ningun fichero todavia", title="Alerta")
 
 
#guarda en archivo binario
def guardar_fichero(obj_curso):
 
 
    fichero_binario=open(ruta_fichero_binario,"wb")
    dump(obj_curso, fichero_binario)
 
    fichero_binario.close()
    del(fichero_binario)
 
    print(messagebox.showinfo(message="Fichero guardado", title="Notificacion") )
 
 
 
# inicializacion de variables----------------
 
root = Tk()
root.title("Alta de alumnos")
root.geometry("510x400")
#root.resizable(0, 0)
 
 
texto_nombre = StringVar()
texto_apellido = StringVar()
 
 
curso=TodosLosCursos()
#curso.ingles, curso.frances, curso.mandarin
 
val_radio= IntVar()
 
var_etiq_ing= StringVar()
var_etiq_fran= StringVar()
var_etiq_mand= StringVar()
 
#al no especificar una ruta se guarda en el mismo directorio donde esta el codigo
#si se usa anaconda, usa directorios virtuales C:\VTRoot\HarddiskVolume2\
 
ruta_fichero_binario="lista_cursos.bin"
ruta_fichero_texto="lista_cursos.txt"
 
now = datetime.now()
 
# inicializacion de variables----------------
 
 
 
#caja de texto donde se guarda lo que se imprimira
 
texto_impresion = scrolledtext.ScrolledText(root, undo=True, width=60, height=15, wrap='word')
texto_impresion['font'] = ('consolas', '10')
texto_impresion.place(x=40, y=140)
 
 
 
 
#----   En algun momento tendria q tratar de usar frames para ordenar los objetos
 
etiqueta_nomb = Label(root, text="Nombre:")
etiqueta_nomb.place(x=20, y=20)
 
etiqueta_apell = Label(root, text="Apellido:")
etiqueta_apell.place(x=20, y=40)
 
entrada_nomb = Entry(root, textvariable=texto_nombre)
entrada_nomb.place(x=80, y=20)
entrada_nomb.focus()
 
entrada_apell = Entry(root, textvariable=texto_apellido)
entrada_apell.place(x=80, y=40)
 
#-
 
boton_agregar = Button(root, text="Agregar nuevo", command=lambda:[agrega_nuevo_alumno()] )
boton_agregar.place(x=40, y=60)
 
 
 
boton_imprimir = Button(root, text="Imprimir", command=lambda:[imprimir_listado()] )
boton_imprimir.place(x=40, y=100)
 
 
boton_abrir_fichero = Button(root, text="Abrir un fichero", command=lambda:[habrir_fichero()] )
boton_abrir_fichero.place(x=170, y=100)
 
boton_guardar_fichero = Button(root, text="Guardar en un fichero", command=lambda:[guardar_fichero(curso)] )
boton_guardar_fichero.place(x=290, y=100)
 
 
 
 
#-----botones para elegir a que carrera se anota
 
radio_ingles = Radiobutton(root, text="Ingles", value=1, variable=val_radio)
radio_ingles.deselect()
radio_ingles.place(x=220, y=20)
 
radio_frances = Radiobutton(root, text="Frances", value=2, variable=val_radio)
radio_frances.deselect()
radio_frances.place(x=220, y=40)
 
radio_mandarin = Radiobutton(root, text="Mandarin", value=3, variable=val_radio)
radio_mandarin.deselect()
radio_mandarin.place(x=220, y=60)
 
 
#---etiquetas que guardan la cantidad de alumnos anotados en cada curso
 
etiqueta_cantidad = Label(root, text="Cantidad por curso:")
etiqueta_cantidad.place(x=300, y=0)
 
etiqueta_cantidad_ing = Label(root, textvariable=var_etiq_ing)
var_etiq_ing.set("0")
etiqueta_cantidad_ing.place(x=340, y=20)
 
etiqueta_cantidad_fra = Label(root, textvariable=var_etiq_fran)
var_etiq_fran.set("0")
etiqueta_cantidad_fra.place(x=340, y=40)
 
etiqueta_cantidad_man = Label(root, textvariable=var_etiq_mand)
var_etiq_mand.set("0")
etiqueta_cantidad_man.place(x=340, y=60)
 
 
#-----
 
root.mainloop()
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

PROGRAMA CONTADOR PYTHON CON CLASES Y OBJETOS

Publicado por CONTADOR CLASES OBJETOS (8 intervenciones) el 09/04/2021 17:31:43
Gracias por tu respuesta pero no no entiendes es algo muy basico que se debe hacer sin estructuras solo utilizar metodos y clases y usar los objetos que es la forma como deseo que se escriba el codigo.
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
Imágen de perfil de Damian
Val: 45
Ha disminuido 1 puesto en Python (en relación al último mes)
Gráfica de Python

PROGRAMA CONTADOR PYTHON CON CLASES Y OBJETOS

Publicado por Damian (6 intervenciones) el 10/04/2021 03:09:43
Volvi a escribir otro codigo mas sencillo que perece cumplir con la consigna:

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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
class NodoAlumno():
 
    def __init__(self, nombre_est, apellido_est):
        self.nombre = nombre_est
        self.apellido = apellido_est
 
#retorna cadena con los atributos de esta clase
    def imprimir(self):
        cad = "Nombre: {}  Apellido: {} \n".format(self.nombre, self.apellido)
        return cad
 
#  --fin NodoAlumno
 
class CursoIdioma():
 
    def __init__(self, nombre_del_curso):
        self.nombre = nombre_del_curso
        self.listaCurso = []
 
# ingresa un estudiante al curso
    def ingresar(self, nodo):
        self.listaCurso.append(nodo)
 
# retorna un string con todos los estudiantes en lineas diferentes
    def imprimir(self):
 
        if self.calculaCant() == 0:
            cad = "No hay alumnos anotados en."+self.nombre + "\n \n"
        else:
            cad = self.informa_inscriptos()
            for i in self.listaCurso:
                cad = cad + i.imprimir()
 
        return cad
 
#  Retorna la cantidad de alumnos en este curso
    def informa_inscriptos(self):
        return "En el curso de {} hay {} inscriptos: \n".format(self.nombre, self.calculaCant())
 
    def calculaCant(self):
        return len(self.listaCurso)
 
#  --------fin CursoIdioma
 
#  opcion en el menu principal
def menu_ingreso_de_alumnos():
    continuar=""
    while continuar !="y" :
        nombre = input("ingresa nombre: " )
        apellido = input ("ingresa apellido: ")
        alumno = NodoAlumno(nombre, apellido)
 
        sig=True
        print("elija la clase donde se anotara: \n 0: ingles \n 1: italiano \n 2:mandarin")
        while sig:
            try:
                opcion_clase = int(input())
                cursos[opcion_clase].ingresar(alumno)
 
                print(cursos[opcion_clase].informa_inscriptos() )
                sig=False
            except:
                print("ingresar numeros validos")
 
        continuar =input("Para terminar el registro presione la 'y' ")
 
 
 
curso_ingles=CursoIdioma("Ingles")
curso_italiano=CursoIdioma("Italiano")
curso_mandarin=CursoIdioma("Mandarin")
 
cursos=[curso_ingles, curso_italiano, curso_mandarin ]
                    # 0                    1                         2
 
# ingreso algunos datos para que ya tenga
 
alumno = NodoAlumno("nom_ing1", "ape_ing1")
cursos[0].ingresar(alumno) #  ingles
 
alumno= NodoAlumno("nom_ing2", "ape_ing2")
cursos[0].ingresar(alumno) #  ingles
 
 
alumno= NodoAlumno("nom_ita1", "ape_ita1")
cursos[1].ingresar(alumno) # italiano
 
alumno= NodoAlumno("nom_ita2", "ape_ita2")
cursos[1].ingresar(alumno) #italiano
 
 
#  inicio del menu
seguir=True
while seguir:
    print(" Presione:\n 1: para ingresar alumnos \n 2: imprimir todo el registro \n Otro caracter para salir")
 
    op = input()
 
    if op == "1":
        menu_ingreso_de_alumnos()
    else:
        if op == "2":
            str=""
            for i in cursos:
                str=str+ i.imprimir()+"\n"
            print(str)
        else:
            seguir=False
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