Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - OmarHack

#1061
Gracias  :)
Si pruebas la calculadora o te fijas en el código verás una variable llamada "segundosSalir" con "cin.get()" no puedes hacer que el programa se cierre solo cuando tu quieras sin pulsar una tecla. De la forma que lo pongo yo, puedes cambiar el tiempo que va a tardar en cerrarse el programa con simplemente poner segundosSalir = 10; eso con cin.get() no se puede hacer. Si no necesitas que el programa se cierre en un determinado tiempo sí puedes usar cin.get() sin problemas. En mi caso, preferí determinar un tiempo para que se viera el siguiente mensaje y que sin pulsar ninguna tecla el programa se cerrase. 
Código (cpp) [Seleccionar]
cout << "                                                              OmarHack C++ 2013";
//Muestra el texto anterior en pantalla.

funcionEspera(segundosSalir); //Llama a la función.
    return 0; //Devuelve 0 a la funcion principal.
    }



Según te convenga puedes usar uno o otro. Con la función no tienes que pulsar enter ni introducir un carácter para salir del programa.
Un saludo.
#1062
Me van a venir bien porque quería comprar un dominio específico .com y ya está registrado. Y mira que el dominio es raro de cojones y lo venden por 1500$. Eso que no hay ninguna empresa ni ciudad que tenga ese nombre. Esperaré a ver cuales salen y si no hay nada interesante me compro el .co que estaba libre. A ver si saliera alguno .proyecto o algo similar.
#1063
Aquí tienes una calculadora echa con funciones y comentado todo el proceso con comentarios. Te puede servir, y si no entiendes algo coméntalo. http://foro.elhacker.net/programacion_cc/reto_para_los_que_estan_aprendiendo_c-t388743.0.html

Mira en esta página, lo tienes todo. http://c.conclase.net/ Si no entiendes mucho de funciones dale al curso C++ y tienes todo muy bien explicado.
Si quieres un resumen de como se usa una función es muy sencillo. Primero haces el prototipo (lo que viene siendo una declaración de una variable a la que le pones parámetros entre paréntesis)
Después de cerrar el main declaras la función. Y en el main la llamas.
Un ejemplo sencillo para que entiendas:
Código (cpp) [Seleccionar]
#include <iostream>
using namespace std;


int funcionSuma(int,int);
int resultado = 0;
int sumando = 0;
int segundoSumando = 0;

int main()
{
     cout << "introduzca el primer sumando" << endl;
   cin >> sumando;
   cout << "introduzca el segundo sumando"<< endl;
   cin >> segundoSumando;
cout << "El resultado es: " << resultado << endl;
funcionSuma(sumando,segundoSumando);
cout << "El resultado es: " << resultado << endl;
getchar();
getchar();
return 0;
}

int funcionSuma(int sumando,int segundoSumando)
{
 
resultado = sumando + segundoSumando;

return resultado;
}


Compila y ejecuta el programa y verás como antes de que se llame a la función el resultado es 0 y después de llamarla es la suma de los números.
Fíjate en el prototipo de la función arriba de todo junto a la declaración de variables. En el prototipo se declara el tipo de función. En este caso "int" porque devolverá un numero entero, es decir, el resultado. Se le pone que tipo de parámetros va a tener. En este caso 2 int al lado de la función"(int,int)".
El siguiente paso es ir abajo del main y hacer la declaración. Igual que en main. Ahí es donde tienes que poner lo que va a hacer la función y lo que va a devolver. Ahora ya está, solo te falta llamar a la función en el main cuando la necesites de la manera que te pongo en el código.
Espero que te sirva, un saludo.
#1064
Anda que no voy a invertir en dominios jojo. Nadie sabe el precio más o menos que van a tener?
#1065
Si lo ves en C++ de esta forma : "resultado = variable1 % variable2;" es el operador modulus que devuelve a resultado el resto de dividir la variable1 entre la variable2
No es lo que preguntas pero está bien que lo sepas para leer códigos en C++.
Un saludo.
#1066
GNU/Linux / Re: Grub!!
23 Abril 2013, 19:56 PM
Monta el sda2 en ubuntu y quita lo que quieras.  :xD Te vas a equipo le das click derecho a la partición y le das a montar. Después entras en ella como si estuvieras en windows.
¿Tienes 2 windows 7 en distintas particiones o como dices?
#1067
Si lo sé antes esperaba un par de meses y descargaba esta nueva versión. :silbar:
A ver que cambios traen. Un saludo.
#1068
El código es muy básico pero está echo para que cualquiera sepa modificarla, entenderla y ver como yo la hice. Suele ser lo primero que hacemos cuando empezamos a programar y solemos tener problemas así que si es tú caso puedes orientarte un poco. El código se puede mejorar y acortar mucho.
También lo típico para ver el resultado del programa al ejecutarlo y para que no desaparezca solemos poner un "getchar()" o un "system("pause")" Aquí tenéis una función con un bucle for que lo hace sin salirse del ANSI ni tener que incluir ninguna biblioteca.

Si queréis practicar el lenguaje podéis arreglar los warning. Es muy sencillo, tal como están no dan ningún tipo de problemas para la función que hacen, pero esta bien que sepáis solucionarlos. Podéis añadir una función para que haga alguna cosa más la calculadora, por ejemplo la media aritmética y veréis que os va a dar algún que otro problema. También podéis hacer que el programa escriba un texto si el usuario elige un número que no está en la lista.

Repito que el código se puede mejorar y mucho. Lo pongo por si alguien que esté aprendiendo quiere algún reto para ver si puede con él.
El código está completamente comentado así que no puede ser muy difícil arreglarlo y añadirle funciones.

Un saludo y que no se os complique.
:silbar:

Código (cpp) [Seleccionar]
#include <iostream> //Librería de entrada y salida.
using namespace std; //Indicamos que usaremos la biblioteca standart.
typedef long double LD; //Añadimos un identificador a long double llamado "LD".
//A continuación la de claración de variables globales y funciones.
int      numeroUsuario         ; //Variable para almacenar los números del usuario
LD       uno            (LD,LD); //Prototipo de función para sumar.
LD       dos            (LD,LD); //Prototipo de funcion para restar.
LD       tres           (LD,LD); //Prototipo de funcion para multiplicar.
LD       cuatro         (LD,LD); /*Prototipo de funcion para dividir que...
............................... .tambien devuelve el resto.*/
LD       resto                 ; //El resto que devuelve la división.
LD       resultado             ; //Resultado de las funciones.
LD       primerNumero          ; //Primer numero para la opereción.
LD       segundoNumero         ; //Segundo número para la operación.
int      numeroResto           ; //Pasar a int el LD del primer número para usar modulus.
int      numeroResto2          ; //Igual que el anterior pero con el segundo número.
int      segundosSalir         ; //Segundos que quiero que tarde el programa en cerrarse.
void     funcionEspera(int)    ; //Funcion para que el programa espere "x" segundos antes de salir.



int main() //Funcion principal del programa.
{ // Simbolo para declarar dentro de la funcion main.
    Reiniciar: //Punto desde donde se reiniciará el programa.
   
    cout << "\t\t\t    ..CALCULADORA.. " << endl; //Muestra en pantalla el texto.
   
      cout << "........................................................." <<
    "......................."<<endl; //Crea una linea de puntos para dar mejor aspecto.
   
    cout << endl << "Introduzca el numero correspondiente a la operacion y pulse enter..." << endl;
    cout <<endl<<endl<<endl<<endl<<endl; //Muestra el texto en pantalla.
    cout << "1 Sumar\n2 Restar\n3 Multiplicar\n4 Dividir\n8 Reiniciar\n9 Salir" <<
    endl <<endl<<endl<<endl<<endl; //Muestra el texto en pantalla;
    cout << endl << "                            ..OPERACIONES.." <<endl;//Muestra el texto en pantalla.
    cout << "........................................................." <<
    "......................."<<endl; //Muestra el texto en pantalla.
   
    cin >> numeroUsuario; // Guarda el numero que dio el usuario en la variable.
    if (numeroUsuario == 8){goto Reiniciar;} //Si introduce 8 y pulsa enter vuelve al principio.
    if (numeroUsuario != 9) //Si introduce 9 y pulsa enter no ejecuta acciones hasta llegar al "}" correspondiente.
                       {
                       
                       
   
     cout << "Introduzca el primer numero:" << endl; //Muestra en pantalla.
      cin  >>  primerNumero; //Guarda el primer numero en la variable.
      cout << "Introduzca el segundo numero:" << endl; //Muestra en pantalla.
      cin  >> segundoNumero; //Guarda el segundo numero en la variable.
   
   

   
    if (numeroUsuario == 1) //Si el usuario eligio uno...
                      {
                    uno(primerNumero,segundoNumero); //... Llama a la función.
                      }
   
    if (numeroUsuario == 2) //Si el usuario eligio dos...
                      {
                    dos(primerNumero,segundoNumero);  //... Llama a la función.
                      }
   
    if (numeroUsuario == 3) //Si el usuario eligio tres...
                      {
                    tres(primerNumero,segundoNumero);//... Llama a la función.
                      }
   
    if (numeroUsuario == 4) //Si el usuario eligio cuatro...
                      {
                    cuatro(primerNumero,segundoNumero);//... Llama a la función.
                      }
   
    cout << "El resultado es: " << resultado << endl; /* Da el valor de resultado...
                    ...Resultado es devolvido por la función que se ha ejecutado.*/
   
    if (numeroUsuario == 4) //Si el usuario eligio cuatro...
                      {
                    cout << "El resto de la division si quitamos los decimales es: " << resto << endl; //...
                    //...Muestra el texto anterior en pantalla.
                    if (resto  == 0) //Si el resto es cero...
                               {
                               cout << "La division sin los decimales es exacta" <<endl;//...
                               //...muestra el texo anterior en la pantalla.
                               } 
                      else cout << "La division sin decimales no es exacta";
                      //Si el resto no es cero muestra el texto anterior en pantalla.
                      }
                       cout <<endl << "Pulse 8 y enter para reiniciar..." <<endl;
                       //Muestra el texto anterior en pantalla.
                      cout << "Pulse 9 y enter para salir..."<<endl;
                      //Muestra el texto anterior en pantalla.
                     
                     
                       cin >> numeroUsuario;
                       //Vuelve a guardar en la variable el numero dado por el usuario.
                       if (numeroUsuario == 8) //Si el numero del usuario es ocho hace lo siguiente:
                       {
//Crea saltos de linea para dejar libre la pantalla al reiniciar y...
cout <<endl <<endl <<endl <<endl <<endl <<endl <<endl<<endl<<endl<<endl<<endl;
                                          goto Reiniciar;//vuelve donde está "Reiniciar"
                                          }
                       
                           
                       
                      } //Salir             

 
cout << "                                                              OmarHack C++ 2013";
//Muestra el texto anterior en pantalla.

funcionEspera(segundosSalir); //Llama a la función.
    return 0; //Devuelve 0 a la funcion principal.
   

    } //Cierra las delcaraciones de la función main.


//Funcion de sumar
LD    uno       (LD primerNumero,LD segundoNumero)
{
      resultado = primerNumero + segundoNumero;
      return resultado;
}


//Funcion de restar
LD    dos       (LD primerNumero,LD segundoNumero)
{
      resultado = primerNumero - segundoNumero;
      return resultado;
}

//Funcion de MMultiplicar
LD    tres       (LD primerNumero,LD segundoNumero)
{
      resultado = primerNumero * segundoNumero;
      return resultado;
}

//Funcion de Dividir y resto.
LD    cuatro       (LD primerNumero,LD segundoNumero)
{
      numeroResto = primerNumero;
      numeroResto2 = segundoNumero;
      resultado = primerNumero / segundoNumero;
      resto     = (numeroResto % numeroResto2);
      return resultado && resto;
}

//Funcion mostrar mensaje antes de salir automáticamente
void funcionEspera(int segundosSalir)
{     
      segundosSalir =3;
    for(time_t i = (time(NULL) + segundosSalir); time(NULL) != i;);
}
#1069
Cita de: Poison Lux en 22 Abril 2013, 05:01 AM
A mí por mi parte no me interesa ponerme a contar y decir qué "habilidades" tengo; creo que eso no me define como persona, me define como un objeto de utilidad en una sociedad utilitarista.
Primero soy persona, después puedo llegar a ser útil .. no funciona al revés.
Yo pienso igual que tu, pero del aire no se vive, si no eres útil... Por desgracias es así, de todas formas aun que no se pudiera vivir de programas lo estudiaría igual, pero quizás estudiaría también otra cosa que no me gustara y así no tengo que hacerlo.
Un saludo.
#1070
Piensa que si de verdad les doliera el bolsillo cancelarían los bonos.  :silbar: