SlideShare une entreprise Scribd logo
1  sur  24
Introducción a la Computación

Programa: Análisis de Sistemas
Profesora: Erys Piñero
Profesor: Vladimir Camacaro

1
Ejercicio
Una compañía distribuidora de gas, recibe de cada uno de sus vendedores la
información referente a sus ventas. Los datos disponibles son:
 Código del vendedor
 Precio de la bombona de gas
 Tipo de bombona de gas (Grande o pequeña)
 Cantidad de bombona
Cada vendedor tiene tantas entradas como ventas realizadas
Se requiere de un informe que contenga:
Por vendedor:
 Monto total facturado
 Promedio de lo facturado
 Mayor monto facturado por el vendedor
Por distribuidora:
 Código del vendedor con mayor facturación
 Total monto facturado
 Que tipo de bombona de gas se vendió en mayor cantidad

2
Análisis del problema:
Lista
Clasificación
Venta ---------------------------------------- Clase
Código -------------------------------------- Atributo/Vendedor
TipoBombona------------------------------ Atributo/Vendedor
Precio---------------------------------------- Atributo/Vendedor
Cantidad ------------------------------------ Atributo/Vendedor
Vendedor--------------------------------------------------- Clase
Calcular monto total facturado------------------------ Método/Vendedor
Calcular promedio de lo facturado------------------- Método/Vendedor
Calcular mayor monto facturado por vendedor - Método/Vendedor
Distribuidora----------------------------------------------- Clase
Calcular vendedor con mayor facturación --------- Método/Distribuidora
Calcular tipo de bombona de gas que se vendió en mayor cant Método/Distribuidora

Calcular total monto facturado----------------------- Método/Distribuidora

3
f.u. (1) 1) Inicializar (Mayor, AcumMontoF, ContGrande, ContPequeña)
f.m.(2) 2) Inicializar (AcumMF, ContVenta, Mayor Vend)
f.m.(2) 3) Leer(Codigo)
f.m.(3) 4) Leer (TipoBombona, Precio, Cantidad)
f.m.(3) 5) Determinar mayor monto facturado por vendedor
si (MayorVend<Precio*Cantidad)
MayorVend ← Precio*Cantidad
f.m.(3) 6) Acumular Monto Facturado:
AcumMF AcumMF + Precio*Cantidad
f.m.(3) 7) Contar venta:
ContVenta  ContVenta + 1
f.m.(3) 8) Acumular según tipo de bombona
si(TipoBombona=”Grande”)
Se escribe lo solicitado
ContGrande← ContGrande + Cantidad
por la Vendedor
sino
(9,10,11)
si(TipoBombona=”Pequeña”)
ContPequeña← ContPequeña + Cantidad
f.m.(4) 9) Imprimir monto total facturado por vendedor (AcumMF)
f.m.(4) 10) Calcula e imprime Promedio facturado del vendedor Promedio ← AcumMF/ContVenta
f.m.(4) 11) Imprimir mayor monto facturado por vendedor (MayorVend)
f.m.(4) 12) Determinar vendedor con mayor facturación
si (Mayor<AcumMF)
inicio
Mayor ← AcumMF
MayorVen ← Código
fin
f.m(4) 13) Acumular monto facturado por Distribuidora AcumMontoF ← AcumMontoF + AcumMF
4
f.u. (5) 14) Imprimir Código del vendedor con mayor facturación (MayorVen)
f.u. (5) 15) Imprimir tipo de venta con mayor facturación
si(ContGrande > ContPequeña)
Mensaje ← “Las bombonas Grandes se vendieron en mayor cantidad”
si(ContGrande< ContPequeña)
Mensaje ← “Las bombonas Pequeñas se vendieron en mayor cantidad”
sino Mensaje ← “Las bombonas Pequeñas y grandes se vendieron en igual cantidad”
f.u. (5) 16) Imprimir el total facturado de la empresa (AcumMontoF)

Se escribe lo solicitado
por la Distribuidora

5
1

2
3

HayDato←”Si”
repetir mientras (HayDato=“si”)

Resp←”Si”

4
5
6
7
8

repetir mientras (Resp=“Si”)

leer Resp

4

9
10
11
12
13

leer HayDato

14
15
16

6
Venta
alfanumérico Código
alfanumérico TipoBombona
real Precio
entero Cantidad
AsignarCódigo(alfanumerico ↓ Cod)
AsignarTipoBombona(alfanumerico ↓ TB)
AsignarPrecio(real ↓ Pc)
AsignarCantidad(entero ↓ Cant)
alfanumerico SacarCodigo()
alfanumerico SacarTipoBombona()
real SacarPrecio()
entero SacarCantidad()

7
Vendedor
real AcumMF
entero ContVenta
real MayorVend
Inicial()
real SacarAcumMF()
entero SacarContVenta()
real SacarMayorVend()
Acumular (Venta ↓ Vent)
Contar()
real CalcMayorVenta(Venta ↓ Vent)
real CalcPromedio()
8
Distribuidora
real Mayor
alfanumérico MayorVen
entero ContGrande
entero ContPequeña
real AcumMontoF
Inicializar()
real SacarMayor()
alfanumérico SacarMayorVend()
entero SacarContGrande()
entero SacarContPequeña()
real SacarAcumMontoF()
DetMayor TipoBombona()
AcumularMontoF(Inf)
DetMayor(Vend,Inf)
AcumularTB(Vend)

9
// Definición de la estructura de la clase Venta
clase Venta
inicio
privado:
alfanumérico Código, TipoBombona
real Precio
entero Cantidad
publico:
AsignarCódigo(alfanumérico ↓ Cod)
AsignarTipoBombona(alfanumérico ↓ TB)
AsignarPrecio (real ↓ Pc)
AsignarCantidad (entero ↓ Cant)
alfanumérico SacarCodigo()
alfanumérico SacarTipoBombona()
real SacarPrecio()
entero SacarCantidad()
fin// Venta

10
//Definición de la estructura de la clase Vendedor
clase Vendedor
inicio
privado:
real AcumMF
entero ContVenta
real MayorVend
publico:
Inicial ()
real SacarAcumMF()
entero SacarContVenta()
real SacarMayorVend()
Acumular(Venta↓ Vent)
Contar ()
real CalcMayorVenta(Venta↓ Vent)
real CalcPromedio ()
fin // Vendedor
11
//Métodos propios de la clase Vendedor
Vendedor Inicial ()
inicio
AcumMF ← 0
ContVenta ← 0
MayorVend ← 0
fin

12
real Vendedor SacarAcumMF()
inicio
retornar AcumMF
fin
entero Vendedor SacarContVenta()
inicio
retornar ContVenta
fin
Vendedor Acumular(Venta ↓ Vent)
inicio
AcumMF ← AcumMF +Vent. SacarPrecio()* Vent. SacarCantidad()
fin
Vendedor Contar()
Inicio
ContVenta ← ContVenta + 1
fin

13
real Vendedor CalcPromedio()
inicio
real Promedio
si (contVenta =0)
Promedio ← 0
sino Promedio ← AcumMF/ContVenta
retornar Promedio
fin

14
real Vendedor SacarMayorVend()
inicio
retornar MayorVend
fin
Vendedor CalcMayorVenta(Venta↓ Vent)
inicio
si (MayorVend< Vent. SacarPrecio()* Vent. SacarCantidad())
MayorVend ← Vent. SacarPrecio()* Vent.
SacarCantidad()
fin

15
//Definición de la estructura de la clase Distribuidora
clase Distribuidora
inicio
privado:
alfanumérico MayorVen
real Mayor, AcumMontoF
entero ContPequeña, ContGrande
publico:
Inicializar ()
alfanumérico SacarMayorVen()
real SacarMayor()
entero ContPequeña()
entero ContGrande()
real SacarAcumMontoF()
DetMayor (Venta ↓ Vent, Vendedor ↓ Vend)
AcumularTB(Venta ↓ Vent)
DetMayorTipoBombona()
AcumularMontoF(Vendedor ↓ Vend)
fin//clase Distribuidora
16
//Método propio de la clase Distribuidora
Distribuidora Inicializar ()
inicio
Mayor ← 0
ContGrande ← 0
ContPequeña ← 0
AcumMontoF ← 0
fin

17
alfanumérico Distribuidora SacarMayorVen()
inicio
retornar MayorVen
fin
real Distribuidora SacarMayor()
inicio
retornar Mayor
fin
entero Distribuidora SacarContGrande()
inicio
retornar ContGrande
fin
entero Distribuidora SacarContPequeña
inicio
retornar ContPequeña
fin
real Distribuidora SacarAcumMontoF()
inicio
retornar AcumMontoF
fin
18
Distribuidora DetMayor (Venta↓ Vent, Vendedor ↓ Vend)
inicio
si ( Mayor < Vend. SacarAcumMF)
inicio
Mayor ← Vend. SacarAcumMF()
MayorVen ← Vent. SacarCodigo ()
fin
fin
Distribuidora AcumularTB (Venta↓ Vent)
inicio
si (Vent. SacarTipoBombona = “Grande”)
ContGrande ← ContGrande + Vent. SacarCantidad()
sino
si (Vent. SacarTipoBombona = “Pequeña”)
ContPequeña ← ContPequeña + Vent. SacarCantidad()
fin

19
alfanumérico Distribuidora DetMayorTipoBombona()
inicio
alfanumérico Fact
si ContGrande> ContPequeña)
Fact ← “Las de tamaño grande”
sino
si ContGrande< ContPequeña)
Fact ← “Las de tamaño pequeña”
sino
Fact ← “Las pequeñas y grandes se vendieron en igual cantidad”
retornar Fact
fin
Distribuidora AcumularMontoF(Vendedor↓ Vend)
inicio
AcumMontoF ← AcumMontoF + Vend.SacarAcumMF()
fin

20
f.u. (1) 1) Inicializar (Mayor, AcumMontoF, ContGrande,
ContPequeña)
f.m.(2) 2) Inicializar (AcumMF, ContVenta, Mayor Vend)
f.m.(2) 3) Leer(Codigo)
f.m.(3) 4) Leer (TipoBombona, Precio, Cantidad)
f.m.(3) 5) Determinar mayor monto facturado
por vendedor
si (MayorVend<Precio*Cantidad)
MayorVend ← Precio*Cantidad
f.m.(3) 6) Acumular Monto Facturado:
AcumMF AcumMF + Precio*Cantidad
f.m.(3) 7) Contar venta:
ContVenta  ContVenta + 1
f.m.(3) 8) Acumular según tipo de bombona
si(TipoBombona=”Grande”)
ContGrande← ContGrande + Cantidad
sino
si(TipoBombona=”Pequeña”)
ContPequeña← ContPequeña + Cantidad
f.m.(4) 9) Imprimir monto total facturado por vendedor
(AcumMF)
f.m.(4) 10) Calcula e imprime Promedio facturado del
vendedor Promedio ← AcumMF/ContVenta
f.m.(4) 11) Imprimir mayor monto facturado por vendedor
(MayorVend)
f.m.(4) 12) Determinar vendedor con mayor facturación
si (Mayor<AcumMF)
inicio
Mayor ← AcumMF
MayorVen ← Código
fin
f.m(4) 13) Acumular monto facturado por Distribuidora
AcumMontoF ← AcumMontoF + AcumMF

//Programa de aplicación
principal()
inicio
Venta Vent
Vendedor Vend
Distribuidora Dist
Dist.Inicializar()
alfanumérico HayDato ← “S”
repetir mientras HayDato = “S”
inicio
Vend. Inicial()
InterfazEntradaCodigo(Vent)
alfanumérico Resp ← “S”
repetir mientras (Resp = “S”)
inicio
InterfazEntradaVenta(Vent)
Vend. CalcMayorVenta(Vent)
Vend.Acumular(Vent)
Vend.Contar()
Dist.AcumularTB(Vent)
escribir “Procesar otra venta S/N)”
leer Resp
fin
InterfazSalidaVenta()
Dist.DetMayor(Vent, Vend)
Dist.AcumularMontoF(Vend)
escribir”Desea procesar otro vendedor S/N”
leer HayDato
fin
InterfazSalidaDistribuidora(Dist)
fin

21
f.u. (5) 14) Imprimir Código del vendedor con mayor
facturación (MayorVen)
f.u. (5) 15) Imprimir tipo de venta con mayor facturación
si(ContGrande > ContPequeña)
Mensaje ← “Las bombonas Grandes se
vendieron en mayor cantidad”
si(ContGrande< ContPequeña)
Mensaje ← “Las bombonas Pequeñas se
vendieron en mayor cantidad”
sino Mensaje ← “Las bombonas Pequeñas y
grandes se vendieron en igual cantidad”

f.u. (5) 16) Imprimir el total facturado de la empresa
(AcumMontoF)

//Programa de aplicación
principal()
inicio
Venta Vent
Vendedor Vend
Distribuidora Dist
Dist.Inicializar()
alfanumérico HayDato ← “S”
repetir mientras HayDato = “S”
inicio
Vend. Inicial()
InterfazEntradaCodigo(Vent)
alfanumérico Resp ← “S”
repetir mientras (Resp = “S”)
inicio
InterfazEntradaVenta(Vent)
Vend. CalcMayorVenta(Vent)
Vend.Acumular(Vent)
Vend.Contar()
Dist.AcumularTB(Vent)
escribir “Procesar otra venta S/N)”
leer Resp
fin
InterfazSalidaVenta()
Dist.DetMayor(Vent, Vend)
Dist.AcumularMontoF(Vend)
escribir”Desea procesar otro vendedor S/N”
leer HayDato
fin
InterfazSalidaDistribuidora(Dist)
fin

22
InterfazEntradaCodigo(Venta ↑ Vent)
inicio
alfanumérico Cod,
escribir “Ingrese el código del Vendedor”
leer cod
Vent. AsignarCodigo(Cod)
fin
InterfazEntradaVenta(Venta↑ Vent)
inicio
alfanumérico TB
real Pc
entero Cant
escribir “Ingrese el tipo de bombona (Grande/Pequeña)”
leer TB
Vent.AsignarTipoBombona(TB)
escribir “Ingrese el precio”
leer Pc
Vent.AsignarPrecio(Pc)
escribir “Ingrese el precio”
leer Cant
Vent.AsignarCantidad(Cant)
fin
23
InterfazSalidaVenta(Venta ↓ Vent, Vendedor ↓ Vend)
inicio
escribir”El monto total facturado por el Vendedor”, Vent. SacarCodigo (), “es de BsF.”, Vend. Sacar AcumMF()
escribir “El promedio de lo facturado fue de BsF. “,Vend. CalcPromedio()
escribir “El mayor monto facturado fue de BsF. “,Vend.SacarMayorVend()

fin
InterfazSalidaDistribuidora(Distribudora ↓ Dist)
inicio
escribir “El vendedor con mayores ventas fue”, Dist. SacarMayorVen()
escribir ”El tipo de bombona que se vendió en mayor cantidad ”, Dist.DetMayorTipoBombona()
escribir “El total facturado por la empresa fue de BsF”, Dist.SacarAcumMontoF()

fin

24

Contenu connexe

Similaire à Solucion distribuidora de gas. doble ciclo.

desarrollo de funciones en sistemasn informatico
desarrollo de funciones en sistemasn informaticodesarrollo de funciones en sistemasn informatico
desarrollo de funciones en sistemasn informatico
jenifferroxana
 
Taller informatica
Taller informaticaTaller informatica
Taller informatica
claudia
 

Similaire à Solucion distribuidora de gas. doble ciclo. (20)

Ejercicio combos
Ejercicio combosEjercicio combos
Ejercicio combos
 
Ejercicio botas botines 1 clase
Ejercicio botas botines 1 claseEjercicio botas botines 1 clase
Ejercicio botas botines 1 clase
 
5 clase el_mercado_de_competencia_perfecta
5 clase el_mercado_de_competencia_perfecta5 clase el_mercado_de_competencia_perfecta
5 clase el_mercado_de_competencia_perfecta
 
Ejercicio secuenciales
Ejercicio secuencialesEjercicio secuenciales
Ejercicio secuenciales
 
Unidad 5.pdf
Unidad 5.pdfUnidad 5.pdf
Unidad 5.pdf
 
00 Modulo 3.pptx
00 Modulo 3.pptx00 Modulo 3.pptx
00 Modulo 3.pptx
 
4. filminas produccion y costos y mercados competitivos
4. filminas produccion y costos y mercados competitivos4. filminas produccion y costos y mercados competitivos
4. filminas produccion y costos y mercados competitivos
 
Trabajos de gambas
Trabajos de gambasTrabajos de gambas
Trabajos de gambas
 
Juanita
JuanitaJuanita
Juanita
 
Mcroeconomía Cap. 5 Competencia perfecta
Mcroeconomía Cap. 5 Competencia perfectaMcroeconomía Cap. 5 Competencia perfecta
Mcroeconomía Cap. 5 Competencia perfecta
 
Contaduria Publica
Contaduria PublicaContaduria Publica
Contaduria Publica
 
Apoyo semana 5 competencia perfecta
Apoyo semana 5 competencia perfectaApoyo semana 5 competencia perfecta
Apoyo semana 5 competencia perfecta
 
Archivo 5 : Revisión de competencia perfecta
Archivo 5 : Revisión de competencia perfectaArchivo 5 : Revisión de competencia perfecta
Archivo 5 : Revisión de competencia perfecta
 
desarrollo de funciones en sistemasn informatico
desarrollo de funciones en sistemasn informaticodesarrollo de funciones en sistemasn informatico
desarrollo de funciones en sistemasn informatico
 
Modelo de Competencia Perfecta
Modelo de Competencia PerfectaModelo de Competencia Perfecta
Modelo de Competencia Perfecta
 
La maximización de los beneficios y la oferta competitiva 08
La maximización de los beneficios y la oferta competitiva  08La maximización de los beneficios y la oferta competitiva  08
La maximización de los beneficios y la oferta competitiva 08
 
tema 7. economía. Diapositivas.pptx
tema 7. economía. Diapositivas.pptxtema 7. economía. Diapositivas.pptx
tema 7. economía. Diapositivas.pptx
 
tema7-220910162609-0b756ccgvhhhhj5a6.pdf
tema7-220910162609-0b756ccgvhhhhj5a6.pdftema7-220910162609-0b756ccgvhhhhj5a6.pdf
tema7-220910162609-0b756ccgvhhhhj5a6.pdf
 
Practica 05
Practica 05Practica 05
Practica 05
 
Taller informatica
Taller informaticaTaller informatica
Taller informatica
 

Plus de Erys_Introduccion

Plus de Erys_Introduccion (18)

Ejercicio propuesto de sillas
Ejercicio propuesto de sillasEjercicio propuesto de sillas
Ejercicio propuesto de sillas
 
Ejercicio propuesto de cosmeticos
Ejercicio propuesto de cosmeticosEjercicio propuesto de cosmeticos
Ejercicio propuesto de cosmeticos
 
Ejercicio propuesto de las galletas slideshare 1c
Ejercicio propuesto de las galletas slideshare 1cEjercicio propuesto de las galletas slideshare 1c
Ejercicio propuesto de las galletas slideshare 1c
 
Doble ciclo. Parte I
Doble ciclo. Parte IDoble ciclo. Parte I
Doble ciclo. Parte I
 
Ejercicios resuelto del restaurant. un ciclo
Ejercicios resuelto del restaurant. un cicloEjercicios resuelto del restaurant. un ciclo
Ejercicios resuelto del restaurant. un ciclo
 
Unidad VI. Ciclo B
Unidad VI. Ciclo BUnidad VI. Ciclo B
Unidad VI. Ciclo B
 
Ejercicio de las calculadoras.. Un ciclo
Ejercicio de las calculadoras.. Un cicloEjercicio de las calculadoras.. Un ciclo
Ejercicio de las calculadoras.. Un ciclo
 
Unidad VI. Un ciclo
Unidad VI. Un cicloUnidad VI. Un ciclo
Unidad VI. Un ciclo
 
Ejercicios resueltos con estructuras secuenciales y pseudolenguaje
Ejercicios resueltos con estructuras secuenciales y pseudolenguajeEjercicios resueltos con estructuras secuenciales y pseudolenguaje
Ejercicios resueltos con estructuras secuenciales y pseudolenguaje
 
Solucion del ejercicio zapateria
Solucion del ejercicio zapateriaSolucion del ejercicio zapateria
Solucion del ejercicio zapateria
 
Pseudolenguaje
PseudolenguajePseudolenguaje
Pseudolenguaje
 
Ejercicio tienda x dept secuencial
Ejercicio tienda x dept  secuencialEjercicio tienda x dept  secuencial
Ejercicio tienda x dept secuencial
 
Sistemas numericos y conversiones entre ellos
Sistemas numericos y conversiones entre ellosSistemas numericos y conversiones entre ellos
Sistemas numericos y conversiones entre ellos
 
Metodologia para la resolucion de problemas bajo el enfoque orientado a objetos
Metodologia para la resolucion de problemas bajo el enfoque orientado a objetosMetodologia para la resolucion de problemas bajo el enfoque orientado a objetos
Metodologia para la resolucion de problemas bajo el enfoque orientado a objetos
 
Ejercicio resuelto mermeladas
Ejercicio resuelto  mermeladasEjercicio resuelto  mermeladas
Ejercicio resuelto mermeladas
 
Enunciado de la distribuidora de gas. Uso de doble ciclo
Enunciado de la distribuidora de gas. Uso de doble cicloEnunciado de la distribuidora de gas. Uso de doble ciclo
Enunciado de la distribuidora de gas. Uso de doble ciclo
 
Unidad VI un ciclo parte II
Unidad VI un ciclo parte IIUnidad VI un ciclo parte II
Unidad VI un ciclo parte II
 
Unidad VI. Estructuras repetitivas
Unidad VI. Estructuras repetitivasUnidad VI. Estructuras repetitivas
Unidad VI. Estructuras repetitivas
 

Dernier

2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
RigoTito
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
EliaHernndez7
 
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
El Fortí
 
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docxTALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
NadiaMartnez11
 

Dernier (20)

La Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración AmbientalLa Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración Ambiental
 
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxPLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
 
Infografía EE con pie del 2023 (3)-1.pdf
Infografía EE con pie del 2023 (3)-1.pdfInfografía EE con pie del 2023 (3)-1.pdf
Infografía EE con pie del 2023 (3)-1.pdf
 
SESION DE PERSONAL SOCIAL. La convivencia en familia 22-04-24 -.doc
SESION DE PERSONAL SOCIAL.  La convivencia en familia 22-04-24  -.docSESION DE PERSONAL SOCIAL.  La convivencia en familia 22-04-24  -.doc
SESION DE PERSONAL SOCIAL. La convivencia en familia 22-04-24 -.doc
 
Tema 17. Biología de los microorganismos 2024
Tema 17. Biología de los microorganismos 2024Tema 17. Biología de los microorganismos 2024
Tema 17. Biología de los microorganismos 2024
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
 
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSOCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
 
Abril 2024 - Maestra Jardinera Ediba.pdf
Abril 2024 -  Maestra Jardinera Ediba.pdfAbril 2024 -  Maestra Jardinera Ediba.pdf
Abril 2024 - Maestra Jardinera Ediba.pdf
 
SEPTIMO SEGUNDO PERIODO EMPRENDIMIENTO VS
SEPTIMO SEGUNDO PERIODO EMPRENDIMIENTO VSSEPTIMO SEGUNDO PERIODO EMPRENDIMIENTO VS
SEPTIMO SEGUNDO PERIODO EMPRENDIMIENTO VS
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
 
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
 
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
 
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
 
Análisis de los Factores Externos de la Organización.
Análisis de los Factores Externos de la Organización.Análisis de los Factores Externos de la Organización.
Análisis de los Factores Externos de la Organización.
 
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
 
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docxTALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
 
FUERZA Y MOVIMIENTO ciencias cuarto basico.ppt
FUERZA Y MOVIMIENTO ciencias cuarto basico.pptFUERZA Y MOVIMIENTO ciencias cuarto basico.ppt
FUERZA Y MOVIMIENTO ciencias cuarto basico.ppt
 
Power Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptxPower Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptx
 
EL HABITO DEL AHORRO en tu idea emprendedora22-04-24.pptx
EL HABITO DEL AHORRO en tu idea emprendedora22-04-24.pptxEL HABITO DEL AHORRO en tu idea emprendedora22-04-24.pptx
EL HABITO DEL AHORRO en tu idea emprendedora22-04-24.pptx
 

Solucion distribuidora de gas. doble ciclo.

  • 1. Introducción a la Computación Programa: Análisis de Sistemas Profesora: Erys Piñero Profesor: Vladimir Camacaro 1
  • 2. Ejercicio Una compañía distribuidora de gas, recibe de cada uno de sus vendedores la información referente a sus ventas. Los datos disponibles son:  Código del vendedor  Precio de la bombona de gas  Tipo de bombona de gas (Grande o pequeña)  Cantidad de bombona Cada vendedor tiene tantas entradas como ventas realizadas Se requiere de un informe que contenga: Por vendedor:  Monto total facturado  Promedio de lo facturado  Mayor monto facturado por el vendedor Por distribuidora:  Código del vendedor con mayor facturación  Total monto facturado  Que tipo de bombona de gas se vendió en mayor cantidad 2
  • 3. Análisis del problema: Lista Clasificación Venta ---------------------------------------- Clase Código -------------------------------------- Atributo/Vendedor TipoBombona------------------------------ Atributo/Vendedor Precio---------------------------------------- Atributo/Vendedor Cantidad ------------------------------------ Atributo/Vendedor Vendedor--------------------------------------------------- Clase Calcular monto total facturado------------------------ Método/Vendedor Calcular promedio de lo facturado------------------- Método/Vendedor Calcular mayor monto facturado por vendedor - Método/Vendedor Distribuidora----------------------------------------------- Clase Calcular vendedor con mayor facturación --------- Método/Distribuidora Calcular tipo de bombona de gas que se vendió en mayor cant Método/Distribuidora Calcular total monto facturado----------------------- Método/Distribuidora 3
  • 4. f.u. (1) 1) Inicializar (Mayor, AcumMontoF, ContGrande, ContPequeña) f.m.(2) 2) Inicializar (AcumMF, ContVenta, Mayor Vend) f.m.(2) 3) Leer(Codigo) f.m.(3) 4) Leer (TipoBombona, Precio, Cantidad) f.m.(3) 5) Determinar mayor monto facturado por vendedor si (MayorVend<Precio*Cantidad) MayorVend ← Precio*Cantidad f.m.(3) 6) Acumular Monto Facturado: AcumMF AcumMF + Precio*Cantidad f.m.(3) 7) Contar venta: ContVenta  ContVenta + 1 f.m.(3) 8) Acumular según tipo de bombona si(TipoBombona=”Grande”) Se escribe lo solicitado ContGrande← ContGrande + Cantidad por la Vendedor sino (9,10,11) si(TipoBombona=”Pequeña”) ContPequeña← ContPequeña + Cantidad f.m.(4) 9) Imprimir monto total facturado por vendedor (AcumMF) f.m.(4) 10) Calcula e imprime Promedio facturado del vendedor Promedio ← AcumMF/ContVenta f.m.(4) 11) Imprimir mayor monto facturado por vendedor (MayorVend) f.m.(4) 12) Determinar vendedor con mayor facturación si (Mayor<AcumMF) inicio Mayor ← AcumMF MayorVen ← Código fin f.m(4) 13) Acumular monto facturado por Distribuidora AcumMontoF ← AcumMontoF + AcumMF 4
  • 5. f.u. (5) 14) Imprimir Código del vendedor con mayor facturación (MayorVen) f.u. (5) 15) Imprimir tipo de venta con mayor facturación si(ContGrande > ContPequeña) Mensaje ← “Las bombonas Grandes se vendieron en mayor cantidad” si(ContGrande< ContPequeña) Mensaje ← “Las bombonas Pequeñas se vendieron en mayor cantidad” sino Mensaje ← “Las bombonas Pequeñas y grandes se vendieron en igual cantidad” f.u. (5) 16) Imprimir el total facturado de la empresa (AcumMontoF) Se escribe lo solicitado por la Distribuidora 5
  • 6. 1 2 3 HayDato←”Si” repetir mientras (HayDato=“si”) Resp←”Si” 4 5 6 7 8 repetir mientras (Resp=“Si”) leer Resp 4 9 10 11 12 13 leer HayDato 14 15 16 6
  • 7. Venta alfanumérico Código alfanumérico TipoBombona real Precio entero Cantidad AsignarCódigo(alfanumerico ↓ Cod) AsignarTipoBombona(alfanumerico ↓ TB) AsignarPrecio(real ↓ Pc) AsignarCantidad(entero ↓ Cant) alfanumerico SacarCodigo() alfanumerico SacarTipoBombona() real SacarPrecio() entero SacarCantidad() 7
  • 8. Vendedor real AcumMF entero ContVenta real MayorVend Inicial() real SacarAcumMF() entero SacarContVenta() real SacarMayorVend() Acumular (Venta ↓ Vent) Contar() real CalcMayorVenta(Venta ↓ Vent) real CalcPromedio() 8
  • 9. Distribuidora real Mayor alfanumérico MayorVen entero ContGrande entero ContPequeña real AcumMontoF Inicializar() real SacarMayor() alfanumérico SacarMayorVend() entero SacarContGrande() entero SacarContPequeña() real SacarAcumMontoF() DetMayor TipoBombona() AcumularMontoF(Inf) DetMayor(Vend,Inf) AcumularTB(Vend) 9
  • 10. // Definición de la estructura de la clase Venta clase Venta inicio privado: alfanumérico Código, TipoBombona real Precio entero Cantidad publico: AsignarCódigo(alfanumérico ↓ Cod) AsignarTipoBombona(alfanumérico ↓ TB) AsignarPrecio (real ↓ Pc) AsignarCantidad (entero ↓ Cant) alfanumérico SacarCodigo() alfanumérico SacarTipoBombona() real SacarPrecio() entero SacarCantidad() fin// Venta 10
  • 11. //Definición de la estructura de la clase Vendedor clase Vendedor inicio privado: real AcumMF entero ContVenta real MayorVend publico: Inicial () real SacarAcumMF() entero SacarContVenta() real SacarMayorVend() Acumular(Venta↓ Vent) Contar () real CalcMayorVenta(Venta↓ Vent) real CalcPromedio () fin // Vendedor 11
  • 12. //Métodos propios de la clase Vendedor Vendedor Inicial () inicio AcumMF ← 0 ContVenta ← 0 MayorVend ← 0 fin 12
  • 13. real Vendedor SacarAcumMF() inicio retornar AcumMF fin entero Vendedor SacarContVenta() inicio retornar ContVenta fin Vendedor Acumular(Venta ↓ Vent) inicio AcumMF ← AcumMF +Vent. SacarPrecio()* Vent. SacarCantidad() fin Vendedor Contar() Inicio ContVenta ← ContVenta + 1 fin 13
  • 14. real Vendedor CalcPromedio() inicio real Promedio si (contVenta =0) Promedio ← 0 sino Promedio ← AcumMF/ContVenta retornar Promedio fin 14
  • 15. real Vendedor SacarMayorVend() inicio retornar MayorVend fin Vendedor CalcMayorVenta(Venta↓ Vent) inicio si (MayorVend< Vent. SacarPrecio()* Vent. SacarCantidad()) MayorVend ← Vent. SacarPrecio()* Vent. SacarCantidad() fin 15
  • 16. //Definición de la estructura de la clase Distribuidora clase Distribuidora inicio privado: alfanumérico MayorVen real Mayor, AcumMontoF entero ContPequeña, ContGrande publico: Inicializar () alfanumérico SacarMayorVen() real SacarMayor() entero ContPequeña() entero ContGrande() real SacarAcumMontoF() DetMayor (Venta ↓ Vent, Vendedor ↓ Vend) AcumularTB(Venta ↓ Vent) DetMayorTipoBombona() AcumularMontoF(Vendedor ↓ Vend) fin//clase Distribuidora 16
  • 17. //Método propio de la clase Distribuidora Distribuidora Inicializar () inicio Mayor ← 0 ContGrande ← 0 ContPequeña ← 0 AcumMontoF ← 0 fin 17
  • 18. alfanumérico Distribuidora SacarMayorVen() inicio retornar MayorVen fin real Distribuidora SacarMayor() inicio retornar Mayor fin entero Distribuidora SacarContGrande() inicio retornar ContGrande fin entero Distribuidora SacarContPequeña inicio retornar ContPequeña fin real Distribuidora SacarAcumMontoF() inicio retornar AcumMontoF fin 18
  • 19. Distribuidora DetMayor (Venta↓ Vent, Vendedor ↓ Vend) inicio si ( Mayor < Vend. SacarAcumMF) inicio Mayor ← Vend. SacarAcumMF() MayorVen ← Vent. SacarCodigo () fin fin Distribuidora AcumularTB (Venta↓ Vent) inicio si (Vent. SacarTipoBombona = “Grande”) ContGrande ← ContGrande + Vent. SacarCantidad() sino si (Vent. SacarTipoBombona = “Pequeña”) ContPequeña ← ContPequeña + Vent. SacarCantidad() fin 19
  • 20. alfanumérico Distribuidora DetMayorTipoBombona() inicio alfanumérico Fact si ContGrande> ContPequeña) Fact ← “Las de tamaño grande” sino si ContGrande< ContPequeña) Fact ← “Las de tamaño pequeña” sino Fact ← “Las pequeñas y grandes se vendieron en igual cantidad” retornar Fact fin Distribuidora AcumularMontoF(Vendedor↓ Vend) inicio AcumMontoF ← AcumMontoF + Vend.SacarAcumMF() fin 20
  • 21. f.u. (1) 1) Inicializar (Mayor, AcumMontoF, ContGrande, ContPequeña) f.m.(2) 2) Inicializar (AcumMF, ContVenta, Mayor Vend) f.m.(2) 3) Leer(Codigo) f.m.(3) 4) Leer (TipoBombona, Precio, Cantidad) f.m.(3) 5) Determinar mayor monto facturado por vendedor si (MayorVend<Precio*Cantidad) MayorVend ← Precio*Cantidad f.m.(3) 6) Acumular Monto Facturado: AcumMF AcumMF + Precio*Cantidad f.m.(3) 7) Contar venta: ContVenta  ContVenta + 1 f.m.(3) 8) Acumular según tipo de bombona si(TipoBombona=”Grande”) ContGrande← ContGrande + Cantidad sino si(TipoBombona=”Pequeña”) ContPequeña← ContPequeña + Cantidad f.m.(4) 9) Imprimir monto total facturado por vendedor (AcumMF) f.m.(4) 10) Calcula e imprime Promedio facturado del vendedor Promedio ← AcumMF/ContVenta f.m.(4) 11) Imprimir mayor monto facturado por vendedor (MayorVend) f.m.(4) 12) Determinar vendedor con mayor facturación si (Mayor<AcumMF) inicio Mayor ← AcumMF MayorVen ← Código fin f.m(4) 13) Acumular monto facturado por Distribuidora AcumMontoF ← AcumMontoF + AcumMF //Programa de aplicación principal() inicio Venta Vent Vendedor Vend Distribuidora Dist Dist.Inicializar() alfanumérico HayDato ← “S” repetir mientras HayDato = “S” inicio Vend. Inicial() InterfazEntradaCodigo(Vent) alfanumérico Resp ← “S” repetir mientras (Resp = “S”) inicio InterfazEntradaVenta(Vent) Vend. CalcMayorVenta(Vent) Vend.Acumular(Vent) Vend.Contar() Dist.AcumularTB(Vent) escribir “Procesar otra venta S/N)” leer Resp fin InterfazSalidaVenta() Dist.DetMayor(Vent, Vend) Dist.AcumularMontoF(Vend) escribir”Desea procesar otro vendedor S/N” leer HayDato fin InterfazSalidaDistribuidora(Dist) fin 21
  • 22. f.u. (5) 14) Imprimir Código del vendedor con mayor facturación (MayorVen) f.u. (5) 15) Imprimir tipo de venta con mayor facturación si(ContGrande > ContPequeña) Mensaje ← “Las bombonas Grandes se vendieron en mayor cantidad” si(ContGrande< ContPequeña) Mensaje ← “Las bombonas Pequeñas se vendieron en mayor cantidad” sino Mensaje ← “Las bombonas Pequeñas y grandes se vendieron en igual cantidad” f.u. (5) 16) Imprimir el total facturado de la empresa (AcumMontoF) //Programa de aplicación principal() inicio Venta Vent Vendedor Vend Distribuidora Dist Dist.Inicializar() alfanumérico HayDato ← “S” repetir mientras HayDato = “S” inicio Vend. Inicial() InterfazEntradaCodigo(Vent) alfanumérico Resp ← “S” repetir mientras (Resp = “S”) inicio InterfazEntradaVenta(Vent) Vend. CalcMayorVenta(Vent) Vend.Acumular(Vent) Vend.Contar() Dist.AcumularTB(Vent) escribir “Procesar otra venta S/N)” leer Resp fin InterfazSalidaVenta() Dist.DetMayor(Vent, Vend) Dist.AcumularMontoF(Vend) escribir”Desea procesar otro vendedor S/N” leer HayDato fin InterfazSalidaDistribuidora(Dist) fin 22
  • 23. InterfazEntradaCodigo(Venta ↑ Vent) inicio alfanumérico Cod, escribir “Ingrese el código del Vendedor” leer cod Vent. AsignarCodigo(Cod) fin InterfazEntradaVenta(Venta↑ Vent) inicio alfanumérico TB real Pc entero Cant escribir “Ingrese el tipo de bombona (Grande/Pequeña)” leer TB Vent.AsignarTipoBombona(TB) escribir “Ingrese el precio” leer Pc Vent.AsignarPrecio(Pc) escribir “Ingrese el precio” leer Cant Vent.AsignarCantidad(Cant) fin 23
  • 24. InterfazSalidaVenta(Venta ↓ Vent, Vendedor ↓ Vend) inicio escribir”El monto total facturado por el Vendedor”, Vent. SacarCodigo (), “es de BsF.”, Vend. Sacar AcumMF() escribir “El promedio de lo facturado fue de BsF. “,Vend. CalcPromedio() escribir “El mayor monto facturado fue de BsF. “,Vend.SacarMayorVend() fin InterfazSalidaDistribuidora(Distribudora ↓ Dist) inicio escribir “El vendedor con mayores ventas fue”, Dist. SacarMayorVen() escribir ”El tipo de bombona que se vendió en mayor cantidad ”, Dist.DetMayorTipoBombona() escribir “El total facturado por la empresa fue de BsF”, Dist.SacarAcumMontoF() fin 24