viernes, 4 de junio de 2010

Proyecto Final de Programación.

Instituto Tecnológico de Tijuana

Departamento de Electrónica y Eléctrica

Programación I

Proyecto Final
“Menú Empresarial de componentes electrónicos”

Integrantes:
Camacho Avila Jose Manuel 09210894
Fomperosa Mendoza Erik Benjamín 09210813
Trujillo Hernandez Carlos Alberto 09210875

El objetivo de este proyecto es un software que proporciona al cliente un menú de componentes electrónicos básicos para que pueda elegir el que guste, la cantidad y el valor del componente (ohm Ω, amperes A, volts V, número de serie, etc.).
           

Algunas de las ventajas son:

·        Fácil uso.
·        Preciso en lo que pide el cliente.
·        Económico.
·        Compatibilidad con cualquier Sistema Operativo.
·        Usa poco espacio.
Solución

Pseudocódigo








FileStream E = new FileStream "H:\\Proyecto.txt", FileMode.Create, FileAccess.Write
StreamWriter D = new StreamWriter(E)
       
p1 = 0, p2 = 0, p3 = 0, p4 = 0, p5 = 0, p6 = 0 int
x1 = 0, x2 = 0, x3 = 0, x4 = 0, x5 = 0, x6 = 0 int
opcion = 0, pagar = 0, I int
p = "" string
total = 0, TOTAL = 0, PR = 0, PT = 0, pagara = 0, x7 = 0 double

try
{
do
{
Print"  Electrónica CAFOT S.A. de C.V."
Print " 1) Resistencias. ------------$0.50"
Print " 2) Capacitores. -------------$1.00"
Print " 3) Circuitos Integrados. ----$5.00"
Print " 4) Placa de cobre. ----------$10.00"
Print " 5) Cautin. ------------------$40.00"
Print " 6) Soldadura (tubo de 50g). -$25.00"
Print " 7) Elegir otro componente. Precio varia"
Print " Si no desea otra orden favor de declarar un cero"
Print "  Elija su No. de Componente: "

Read opcion
switch (opcion)
{
case 1:
Print "No. de resistencias: "
Read p1
total = total + (p1 * 0.50)
Print "Valor de las resistencias (ohms): "
Read x1
break
case 2:
Print "No. de capacitores: "
Read p2
total = total + (p2 * 1.00)
Print "Valor de los capacitores (faradios): "
Read x2
break
case 3:
Print "No. de circuitos integrados: "
Read p3
total = total + (p3 * 5.00)
Print "Numero de los C.I. (solo los 4 num. o 5 num.): "
Read x3
break
case 4:
Print "No. de placas de bronce: "
Read p4
total = total + (p4 * 10.00)
Print "Medida de las placas (largo cm): "
Read x4
Print "Medida de las placas (ancho cm): "
Read x5
break
case 5:
Print "No. de cautines: "
Read p5
total = total + (p5 * 40.00)
break
case 6:
Print "No. de soldaduras: "
Read p6
total = total + (p6 * 25.00)
break
case 7:
Print "Escriba el nombre del componente: "
Read p
Print "Cuantos componentes?: "
Read x6
Print "Valor o numero del componente: "
Read x7
break
case 0:
Console.Clear()

Print " Electrónica CAFOT S.A. de C.V."
Print "No. de componentes  Componente Valor Precio"
Print
if (p1 > 0)
{
Print "{0} Resistencias {1}ohms ${2}", p1, x1, p1 * 0.50
}
if (p2 > 0)
{
Print "{0} Capacitores  {1}faradios ${2}", p2, x2, p2 * 1.00
}
if (p3 > 0)
{
Print "{0} Circuito Integrado {1} ${2}", p3, x3, p3 * 5.00
}
if (p4 > 0)
{
Print "{0} Placa de Cobre {1}x{2} ${3}", p4, x4, x5, p4 * 10.00
}
if (p5 > 0)
{
Print "{0} Cautin --- ${1}", p5, p5 * 40.00
}
if (p6 > 0)
{
Print "{0} Soldadura --- ${1}", p6, p6 * 25.00
}
if (x6 > 0)
{
Print "{0} {1} {2} ---", x6,p, x7
}

Print "  Total es {0}", total + " pesos"
break


default: Print " Eleccion equivocada"
break
}
Clear
}

while (opcion != 0)

Print " Monto a Pagar: " + total + " pesos"
Print " Cómo desea pagar?"
Print
Print "1)T. Débito 2)T. Crédito 3)Efectivo: "
Read pagara

if (pagara == 1 || pagara == 2)
{
Print "Procesando su pago...."
for (I = 0; I <= 4; I++)
{
Print
Print "."
}
Print "Imprimiendo ticket...."
Print "Gracias por su Pago"
Print "Regrese Pronto"
}
else
{
Print "Introduzca su pago: "
Read pagar

TOTAL = pagar - total

if (TOTAL < 0)
{
Print "  Resta pagar: " , TOTAL
Print "  Ingrese su pago restante: "
Read PR

PT = TOTAL + PR

Clear

Print "  Su cambio es de: " , PT , " pesos"
Print "Imprimiendo ticket...."
Print " Gracias por su Preferencia "
}
else
{
Print "  Su cambio es de : " , TOTAL , " pesos"
Print " Imprimiendo ticket...."
Print "  Gracias por su Preferencia"
}
}

Print "Electrónica CAFOT S.A. de C.V."
Print "No. de componentes Componente Valor Precio"

if (p1 > 0)
{
Print "{0} Resistencias {1}ohms ${2}", p1, x1, p1 * 0.50
}
if (p2 > 0)
{
Print "{0} Capacitores  {1}faradios ${2}", p2, x2, p2 * 1.00
}
if (p3 > 0)
{
Print "{0} Circuito Integrado {1} ${2}", p3, x3, p3 * 5.00
}
if (p4 > 0)
{
Print "{0} Placa de Cobre {1}x{2} ${3}", p4, x4, x5, p4 * 10.00
}
if (p5 > 0)
{
Print "{0} Cautin --- \${1}", p5, p5 * 40.00
}
if (p6 > 0)
{
Print "{0} Soldadura --- ${1}", p6, p6 * 25.00
}
if (x6 > 0)
{
Print "{0} {1} {2} ---", x6, p, x7
}

Print “ ”
Print "Total a pagar: {0}", total
Print “ “
if (pagara == 1 || pagara == 2)
{
Print "Su pago: T. Débito o Crédito"
}
else
{
if (TOTAL < 0)
{
Print "Su cambio es de: {0}",PT
}
else
{
Print "Su cambio es de: {0}",TOTAL
}
}

Close

}





catch (IOException e)
{
Print "Error" + e.Messenger
}
finally
{
      If(D != null)
}



Fin


S
Un ejemplo del modo de uso es el siguiente:

En la siguiente imagen muestra el menú principal de algunos componentes básicos teniendo una opción para poder pedir un componente en especifico. Al elegir algún componente y terminar de llenar los datos, el programa lo regresa a la opción de poder elegir otro componente hasta que el cliente declare un cero.

clic para ampliar imagen

En esta imagen se ve como presenta el ticket con los componentes deseados por el cliente con el precio total en cada componente y el precio total a pagar.

clic sobre imagen para ampliar

Aqui se presenta la forma de pago que el cliente desee, puede ser con T. de credito o Debito o tambien en Efectivo.

clic sobre imagen para ampliar

Al final el programa imprime el ticket con la forma de pago y el cambio en un formato .txt (bloc de notas) o tambien puede imprimirse en formato .doc (Word).

clic sobre imagen para ampliar

jueves, 20 de mayo de 2010

Practica 13

Practica 13
(Modo Console & Visual)

"Modo Console Escritura"
clic sobre imagen para ampliar

"Modo Console Lectura"

clic sobre imagen para ampliar

"Modo Visual Lectura"

clic sobre imagen para ampliar

clic sobre imagen para ampliar

martes, 18 de mayo de 2010

Practica 12

Practica 12
(Leer y Escribir)

Escribiendo en el Archivo
clic sobre imagen para ampliar

Leyendo en un Archivo
clic sobre imagen para ampliar

jueves, 13 de mayo de 2010

Practica 12 1A y 1B

Practica 12 1A y 1B
"Leer y Escribir Datos del Alumno"

Escribiendo en un Archivo de Texto


clic sobre imagen para ampliar

Leyendo un Archivo de Texto


clic sobre imagen para ampliar

miércoles, 12 de mayo de 2010

Archivos de Texto

¿Qué es un Archivos de Texto?

Un archivo de texto es una secuencia de caracteres organizadas en líneas terminadas por un carácter de nueva línea. En estos archivos se pueden almacenar canciones, fuentes de programas, base de datos simples, etc.
Los archivos de texto se caracterizan por ser planos, es decir, todas las letras tienen el mismo formato y no hay palabras subrayadas, en negrita, o letras de distinto tamaño o ancho.

En c, un archivo es un concepto lógico que puede aplicarse a muchas cosas desde archivos de disco hasta
terminales o una impresora. Se asocia una secuencia con un archivo especifico realizando una operación de
apertura. Una vez que el archivo está abierto, la información puede ser intercambiada entre este y el programa.( Lic. Virginia Valero Cantú) Ir al sitio

¿Cómo se escribir en un archivo de texto?

 StreamWriter está diseñado para obtener caracteres como salida en una codificación determinada, mientras que las clases derivadas de Stream están diseñadas para entrada y salida de bytes.




StreamWriter utiliza de forma predeterminada una instancia de UTF8Encoding, a menos que se especifique lo contrario. Esta instancia de UTF8Encoding se construye de modo que el método Encoding.GetPreamble devuelva la marca de orden de bytes Unicode escrita en UTF-8. El preámbulo de la codificación se agrega a una secuencia cuando no se anexa a una secuencia existente. Esto significa que cualquier archivo de texto que se cree con StreamWriter tendrá tres marcas de orden de bytes al principio. UTF-8 utiliza todos los caracteres Unicode correctamente y ofrece resultados coherentes en versiones traducidas del sistema operativo. (Microsoft, 2010) Ir al sitio

 En la siguiente imagen se muestra un codigo de como se puede escribir en un archivo de texto.


Ir al sitio

¿Cómo se lee en un archivo de texto?
StreamReader está diseñado para la entrada de caracteres mediante una codificación determinada, mientras que la clase Stream está diseñada para la entrada y salida de bytes. Se utiliza StreamReader para leer líneas de información desde un archivo de texto estándar.


StreamReader adopta la codificación UTF-8 de forma predeterminada, a menos que se especifique otra, en lugar de utilizar la página de códigos ANSI del sistema actual. UTF-8 utiliza los caracteres Unicode correctamente y ofrece resultados coherentes en versiones traducidas del sistema operativo. (Microsoft, 2010) Ir al sitio

En la siguiente imagen se muestra un ejemplo de como leer un archivo de texto.

Ir al sitio