<br><br><div class="gmail_quote">El 16 de septiembre de 2012 08:03, Oscar Aparicio Holgado <span dir="ltr"><<a href="mailto:enigma-si@hotmail.com" target="_blank">enigma-si@hotmail.com</a>></span> escribió:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr">
<div dir="ltr">
<div style="font-size:12pt;font-family:'Calibri'">
<div>He visto gente iniciada en C++ nueva en la lista de correo; incluyo este
programa sencillo (es mi primer programa y tendrá mil maneras de mejorarlo) pero
puede valer para que vean a través de ejemplos como he logrado lo que el
programa básicamente hace.</div>
<div> </div>
<div>Estableces un sueldo, conceptos de gastos (ejemplo : coche, luz, comida
etc) y luego estableces los valores de gastos de cada cosa, luego a través del
menú te ofrece un mini informe.</div>
<div> </div>
<div>Espero lo disfruten, se aceptan sugerencias.</div>
<div> </div>
<div>un saludo.</div>
<div> </div></div></div></div></blockquote><div><br></div><div><br></div><div>Para quienes estén aprendiendo es chévere. Y si lo pones en un repositorio git? En github o bitbucket? </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr"><div dir="ltr"><div style="font-size:12pt;font-family:'Calibri'">
<div> </div>
<div style="font-size:12pt;font-family:'Calibri'">
<div><font face="Courier New">#include <iostream></font></div>
<div><font face="Courier New"></font> </div>
<div><font face="Courier New">using namespace std;</font></div>
<div><font face="Courier New"></font> </div>
<div><font face="Courier New">class gastos</font></div>
<div><font face="Courier New">{</font></div>
<div><font face="Courier New"> private:</font></div>
<div><font face="Courier New"></font> </div>
<div><font face="Courier New"> int sueldo;</font></div>
<div><font face="Courier New"> int vgastos;</font></div>
<div><font face="Courier New"> int ng;</font></div>
<div><font face="Courier New"></font> </div>
<div><font face="Courier New"> struct gasto {</font></div>
<div><font face="Courier New"> char
concepto[50];</font></div>
<div><font face="Courier New"> int
valor;</font></div>
<div><font face="Courier New"> };</font></div>
<div><font face="Courier New"></font> </div>
<div><font face="Courier New"> public:</font></div>
<div><font face="Courier New"></font> </div>
<div><font face="Courier New"> gasto
losgastos[9];</font></div>
<div><font face="Courier New"></font> </div>
<div><font face="Courier New"> void menu();</font></div>
<div><font face="Courier New"> void
establecerg();</font></div>
<div><font face="Courier New"> void
establecervg();</font></div>
<div><font face="Courier New"> void informe();</font></div>
<div><font face="Courier New"> void
establecesueldo(int);</font></div>
<div><font face="Courier New"> int sueldoacero();</font></div>
<div><font face="Courier New"> int gastosacero();</font></div>
<div><font face="Courier New">};</font></div>
<div><font face="Courier New"></font> </div>
<div><font face="Courier New">void gastos::menu()</font></div>
<div><font face="Courier New">{</font></div>
<div><font face="Courier New">char eleccion;</font></div>
<div><font face="Courier New"></font> </div>
<div><font face="Courier New">cout << "Elige la opci\xa2n :" <<
endl;</font></div>
<div><font face="Courier New">cout << "---------------------" <<
endl;</font></div>
<div><font face="Courier New">cout << "1.- Establecer sueldo." <<
endl;</font></div>
<div><font face="Courier New">cout << "2.- Establecer conceptos de
gastos." << endl;</font></div>
<div><font face="Courier New">cout << "3.- Establecer valores de gastos."
<< endl;</font></div>
<div><font face="Courier New">cout << "4.- Mostrar informe." <<
endl;</font></div>
<div><font face="Courier New">cout << "5.- Salir del programa." <<
endl;</font></div>
<div><font face="Courier New"></font> </div>
<div><font face="Courier New">cout << endl;</font></div>
<div><font face="Courier New"></font> </div>
<div><font face="Courier New">cin >> eleccion;</font></div>
<div><font face="Courier New"></font> </div>
<div><font face="Courier New"> switch
(eleccion)</font></div>
<div><font face="Courier New">
{</font></div>
<div><font face="Courier New">
case '1':</font></div>
<div><font face="Courier New">
int valor;</font></div>
<div><font face="Courier New">
cout << "Introduce el valor del sueldo en euros : "; cin >> valor;
cout << endl;</font></div>
<div><font face="Courier New">
establecesueldo(valor);</font></div>
<div><font face="Courier New">
menu();</font></div>
<div><font face="Courier New">
break;</font></div>
<div><font face="Courier New">
case '2':</font></div>
<div><font face="Courier New">
if(sueldo == 0)</font></div>
<div><font face="Courier New">
{</font></div>
<div><font face="Courier New">
cout << "Error, debes establecer un sueldo primero.\n";</font></div>
<div><font face="Courier New">
menu();</font></div>
<div><font face="Courier New">
break;</font></div>
<div><font face="Courier New">
}</font></div>
<div><font face="Courier New">
else</font></div>
<div><font face="Courier New">
{</font></div>
<div><font face="Courier New">
establecerg();</font></div>
<div><font face="Courier New">
losgastos[0].valor = 1;</font></div>
<div><font face="Courier New">
menu();</font></div>
<div><font face="Courier New">
break;</font></div>
<div><font face="Courier New">
}</font></div>
<div><font face="Courier New"></font> </div>
<div><font face="Courier New">
case '3':</font></div>
<div><font face="Courier New">
if(losgastos[0].valor == 0)</font></div>
<div><font face="Courier New">
{</font></div>
<div><font face="Courier New">
cout << "Error, debes establecer un concepto de gastos
primero.\n";</font></div>
<div><font face="Courier New">
cout << losgastos[0].valor << endl;</font></div>
<div><font face="Courier New">
menu();</font></div>
<div><font face="Courier New">
break;</font></div>
<div><font face="Courier New">
}</font></div>
<div><font face="Courier New">
else</font></div>
<div><font face="Courier New">
{</font></div>
<div><font face="Courier New">
establecervg();</font></div>
<div><font face="Courier New">
menu();</font></div>
<div><font face="Courier New">
break;</font></div>
<div><font face="Courier New">
}</font></div>
<div><font face="Courier New"></font> </div>
<div><font face="Courier New">
case '4':</font></div>
<div><font face="Courier New">
if(sueldo == 0)</font></div>
<div><font face="Courier New">
{</font></div>
<div><font face="Courier New">
if(losgastos[0].valor == 0)</font></div>
<div><font face="Courier New">
{</font></div>
<div><font face="Courier New">
cout << "Error, debes establecer un sueldo, conceptos y valores
primero.\n";</font></div>
<div><font face="Courier New">
menu();</font></div>
<div><font face="Courier New">
break;</font></div>
<div><font face="Courier New">
}</font></div>
<div><font face="Courier New">
}</font></div>
<div><font face="Courier New">
else</font></div>
<div><font face="Courier New">
{</font></div>
<div><font face="Courier New">
if(losgastos[0].valor == 0 || losgastos[0].valor == 1)</font></div>
<div><font face="Courier New">
{</font></div>
<div><font face="Courier New">
cout << "Error, debes establecer un sueldo, conceptos y valores
primero.\n";</font></div>
<div><font face="Courier New">
menu();</font></div>
<div><font face="Courier New">
break;</font></div>
<div><font face="Courier New">
}</font></div>
<div><font face="Courier New">
informe();</font></div>
<div><font face="Courier New">
menu();</font></div>
<div><font face="Courier New">
break;</font></div>
<div><font face="Courier New">
}</font></div>
<div><font face="Courier New"></font> </div>
<div><font face="Courier New">
case '5':</font></div>
<div><font face="Courier New">
return;</font></div>
<div><font face="Courier New">
default:</font></div>
<div><font face="Courier New">
cout << "Escoge una opci\xa2n de las que ofrece el men\xa3..." <<
endl;</font></div>
<div><font face="Courier New">
cout << endl;</font></div>
<div><font face="Courier New">
menu();</font></div>
<div><font face="Courier New">
break;</font></div>
<div><font face="Courier New">
}</font></div>
<div><font face="Courier New">}</font></div>
<div><font face="Courier New"></font> </div>
<div><font face="Courier New">void gastos::establecesueldo(int a)</font></div>
<div><font face="Courier New">{</font></div>
<div><font face="Courier New"> sueldo = a;</font></div>
<div><font face="Courier New">}</font></div>
<div><font face="Courier New"></font> </div>
<div><font face="Courier New">void gastos::establecerg()</font></div>
<div><font face="Courier New">{</font></div>
<div><font face="Courier New"> cout << "\xa8" <<
"Cu\xa0ntos gastos quieres declarar? escoje un n\xa3mero del 1 al 10 : "; cin
>> ng;</font></div>
<div><font face="Courier New"></font> </div>
<div><font face="Courier New"> if(ng <= 10)</font></div>
<div><font face="Courier New">
{</font></div>
<div><font face="Courier New">
int i, j;</font></div>
<div><font face="Courier New">
for(i = 0, j = 1; i < ng; i++, j++)</font></div>
<div><font face="Courier New">
{</font></div>
<div><font face="Courier New">
cout << "Establece un concepto de gasto (" << j << "/10) : ";
cin >> losgastos[i].concepto; cout << endl;</font></div>
<div><font face="Courier New">
}</font></div>
<div><font face="Courier New">
}</font></div>
<div><font face="Courier New"> else</font></div>
<div><font face="Courier New"> {</font></div>
<div><font face="Courier New"> cout
<< "Error, debes introducir un numero del 1 al 10...\n";</font></div>
<div><font face="Courier New">
establecerg();</font></div>
<div><font face="Courier New"> }</font></div>
<div><font face="Courier New">}</font></div>
<div><font face="Courier New"></font> </div>
<div><font face="Courier New">void gastos::establecervg()</font></div>
<div><font face="Courier New">{</font></div>
<div><font face="Courier New"> int i;</font></div>
<div><font face="Courier New"> for(i = 0; i < ng;
i++)</font></div>
<div><font face="Courier New"> {</font></div>
<div><font face="Courier New"> cout
<< "Establece valor de gasto en euros para " <<
losgastos[i].concepto << " : "; cin >> losgastos[i].valor; cout
<< endl;</font></div>
<div><font face="Courier New"> }</font></div>
<div><font face="Courier New"> cout <<
endl;</font></div>
<div><font face="Courier New">}</font></div>
<div><font face="Courier New"></font> </div>
<div><font face="Courier New">void gastos::informe()</font></div>
<div><font face="Courier New">{</font></div>
<div><font face="Courier New"> cout << "Gastos de este
mes :" << endl;</font></div>
<div><font face="Courier New"> cout <<
"--------------------" << endl;</font></div>
<div><font face="Courier New"> cout <<
endl;</font></div>
<div><font face="Courier New"></font> </div>
<div><font face="Courier New"> int i;</font></div>
<div><font face="Courier New"> for(i = 0; i < ng;
i++)</font></div>
<div><font face="Courier New"> {</font></div>
<div><font face="Courier New"> cout
<< losgastos[i].concepto; cout << " : "; cout <<
losgastos[i].valor; cout << endl;</font></div>
<div><font face="Courier New"> }</font></div>
<div><font face="Courier New"></font> </div>
<div><font face="Courier New"> vgastos = 0;</font></div>
<div><font face="Courier New"></font> </div>
<div><font face="Courier New"> for(i = 0; i < ng;
i++)</font></div>
<div><font face="Courier New"> {</font></div>
<div><font face="Courier New"> vgastos
+= losgastos[i].valor;</font></div>
<div><font face="Courier New"> }</font></div>
<div><font face="Courier New"></font> </div>
<div><font face="Courier New"> cout <<
endl;</font></div>
<div><font face="Courier New"> cout << "Sueldo : "
<< sueldo << endl;</font></div>
<div><font face="Courier New"> cout << "Gastos : "
<< vgastos << endl;</font></div>
<div><font face="Courier New"> cout << "Te sobra : "
<< (sueldo - vgastos) << endl;</font></div>
<div><font face="Courier New"> cout <<
endl;</font></div>
<div><font face="Courier New"></font> </div>
<div><font face="Courier New">}</font></div>
<div><font face="Courier New"></font> </div>
<div><font face="Courier New">int gastos::sueldoacero()</font></div>
<div><font face="Courier New">{</font></div>
<div><font face="Courier New"> return sueldo = 0;</font></div>
<div><font face="Courier New"> losgastos[0].valor =
0;</font></div>
<div><font face="Courier New">}</font></div>
<div><font face="Courier New"></font> </div>
<div><font face="Courier New">int gastos::gastosacero()</font></div>
<div><font face="Courier New">{</font></div>
<div><font face="Courier New"> return losgastos[0].valor =
0;</font></div>
<div><font face="Courier New">}</font></div>
<div><font face="Courier New"></font> </div>
<div><font face="Courier New">int main()</font></div>
<div><font face="Courier New">{</font></div>
<div><font face="Courier New"> gastos
objetodeclase;</font></div>
<div><font face="Courier New"></font> </div>
<div><font face="Courier New">
objetodeclase.sueldoacero();</font></div>
<div><font face="Courier New">
objetodeclase.gastosacero();</font></div>
<div><font face="Courier New"></font> </div>
<div><font face="Courier New">
objetodeclase.menu();</font></div>
<div><font face="Courier New"></font> </div>
<div><font face="Courier New"> return 0;</font></div>
<div><font face="Courier New">}</font></div>
<p style="MARGIN-BOTTOM:0cm"><br><font color="#548dd4"><font face="Arial, sans-serif"><font><i><b>Oscar</b></i></font></font></font><br><font color="#e36c09"><font face="Tahoma, sans-serif"><font>Administrador de sistemas
Linux.</font></font></font></p></div></div></div></div>
<br>_______________________________________________<br>
Lista de correo Cconclase <a href="mailto:Cconclase@listas.conclase.net">Cconclase@listas.conclase.net</a><br>
<a href="http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net" target="_blank">http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net</a><br>
Bajas: <a href="http://listas.conclase.net/index.php?gid=2&mnu=FAQ" target="_blank">http://listas.conclase.net/index.php?gid=2&mnu=FAQ</a><br></blockquote></div><br><br clear="all"><div><br></div>-- <br><div>Asdrúbal Iván Suárez Rivera<br>
</div><br><i>Si quieres aprender, enseña. </i>Marco Tulio Cicerón.<br><div><i><br></i></div><div><i>¿Tienes twitter?</i></div><div><i>Sígueme: @asdrubalivan</i></div><br>