Parece que no eres usuario registrado de Zona Beta. Regístrate haciendo click aquí!







Foros de Zona Beta » Zona de Software » Soporte Software » Ayuda con C++

Tags:

Respuesta
tcat left
Ayuda con C++
vBmenu Seperating Image Herramientas vBmenu Seperating Image Desplegado tcat right
Antiguo 26-05-2008, 13:39:54   #1
 
Avatar de Alan Rodríguez
 
Cargo: Administrador y Tableador
Fecha de Ingreso: Feb 2008
Mensajes: 295
Contactar con Alan Rodríguez a través de MSN
Predeterminado Ayuda con C++
Bueno chicos, soy novato en este lenguaje de programación con el que muchos empiezan... lo estoy llevando este mes en la universidad, y mi primer encomienda fue hacer un programa que convirtiera de grados Celsius a Fahrenheit y viceversa. Lo que llevo avanzado es esto:

Código:
#include <iostream.h> 
using namespace std;

int main()
{
double fahr, celsius, cels, fahrenheit;
char desicion, respuesta;
cout<<"Bienvenido a este sencillo convertor de temperaturas, hecho en C++"<<endl;
cout<<"Para convertir de grados Celsius a grados Fahrenheit, escriba c y presione Enter"<<endl;
cout<<"Si desea el proceso a la inversa, de Fahrenheit a Celsius, escriba f y presione Enter"<<endl;
cin>>desicion;

if (desicion = 'c')
   {
   cout<<"Escriba la temperatura en grados Celsius: ";
   cin>>cels;
   //convercion a fahrenheit
   fahrenheit = (1.8 * cels) + 32;
   cout<<cels<<" grados Celsius equivalen a "<<fahrenheit<<" grados Fahrenheit"<<endl;
   cin>>respuesta;
   }

if (desicion = 'f')
   {
   cout<<"Escriba la temperatura en grados Fahrenheit: ";
   cin>>fahr;
   //convercion a celsius
   celsius = (fahr - 32) / 1.8;
   cout<<fahr<<" grados Fahrenheit equivalen a "<<celsius<<" grados Celsius"<<endl;
   cin>>respuesta;
   }
return 0;
}
Ahora mi problema es que no logro que al presionar la tecla, sea c o f, me lance la operacion correcta. c es para que convierta de celsius a fahrenheit y f, pues lo contrario. En pocas palabras, no se como hacer que funcionen bien los if.

Metiéndome en otro lenguaje, php, cuando usas un if este debe terminar siempre con un endif, pero no se como se hace aqui en C++. También me dijeron por ahi que usara while, pero no se ni que onda...

Espero me puedan ayudar... saludos.
__________________
Si colaboras en el foro, por favor échale un ojo a las Reglas

Si haces suelto a los perros... y Staller te pateará...
Alan Rodríguez is offline     Responder Con Cita

Antiguo 27-05-2008, 01:32:28   #2
 
Avatar de Beto_Klavier
 
Cargo: Administrador
Fecha de Ingreso: Jan 2008
Mensajes: 382
Smile Re: Ayuda con C++
Es muy sencillo

Cuando deseas comparar, siempre es con "==" y no con "=", ya que eso sirve para asignar.
Un saludo
__________________
Beto_Klavier

Beto_Klavier is offline     Responder Con Cita
Los siguientes 2 usuarios han agradecido a Beto_Klavier por su Post:
Alan Rodríguez (27-05-2008), Marlex (27-05-2008)

Antiguo 27-05-2008, 03:30:42   #3
 
Avatar de Alan Rodríguez
 
Cargo: Administrador y Tableador
Fecha de Ingreso: Feb 2008
Mensajes: 295
Contactar con Alan Rodríguez a través de MSN
Predeterminado Re: Ayuda con C++
Gracias Beto!! de todas formas, mi profesor me lo hizo saber en plena clase... xD
Esto de C++ me da dolores de cabeza
__________________
Si colaboras en el foro, por favor échale un ojo a las Reglas

Si haces suelto a los perros... y Staller te pateará...
Alan Rodríguez is offline     Responder Con Cita
Antiguo 03-06-2008, 14:19:03   #4
 
Avatar de coberr
 
Cargo: Staff Zona Beta
Fecha de Ingreso: Jan 2008
Mensajes: 184
Predeterminado Re: Ayuda con C++
Cita:
Empezado por Alan Rodríguez Ver Mensaje
···
Metiéndome en otro lenguaje, php, cuando usas un if este debe terminar siempre con un endif, pero no se como se hace aqui en C++. También me dijeron por ahi que usara while, pero no se ni que onda...

Espero me puedan ayudar... saludos.
Permíteme que te corrija una cosilla. En PHP no tiene por qué terminar una sentencia IF en ENDIF. Como en C y C++ puede finalizar sólo con "}".

Deduzco que el tema del while sea como protección para que estés pidiendo siempre que te introduzcan una "c" o una "f" por si te meten otra tecla.

Te pongo como se podría hacer con un bucle do-while. De manera semejante sería con un bucle while

Código:
···
cout<<"Bienvenido a este sencillo convertor de temperaturas, hecho en C++"<<endl;
do {
cout<<"Para convertir de grados Celsius a grados Fahrenheit, escriba c y presione Enter"<<endl;
cout<<"Si desea el proceso a la inversa, de Fahrenheit a Celsius, escriba f y presione Enter"<<endl;
cin>>desicion;
} while (desicion != 'c' && desicion != 'f');

/* Saliendo de este bucle sólo tendrás el valor 'c' o el valor 'f'; entonces con un solo IF*/

if (desicion = 'c')
   {
   cout<<"Escriba la temperatura en grados Celsius: ";
   cin>>cels;
   //convercion a fahrenheit
   fahrenheit = (1.8 * cels) + 32;
   cout<<cels<<" grados Celsius equivalen a "<<fahrenheit<<" grados Fahrenheit"<<endl;
   cin>>respuesta;
   }
else   
   {
   cout<<"Escriba la temperatura en grados Fahrenheit: ";
   cin>>fahr;
   //convercion a celsius
   celsius = (fahr - 32) / 1.8;
   cout<<fahr<<" grados Fahrenheit equivalen a "<<celsius<<" grados Celsius"<<endl;
   cin>>respuesta;
   }
···
Espero que te sea útil...

Está bien que mi post nº 100 sea para ayudar a un amigo!!
__________________
.::. coberr .::.



¿Qué te cuesta leer las reglas?
coberr is offline     Responder Con Cita
El Siguiente usuario ha agradecido a coberr por su Post:
Alan Rodríguez (11-09-2008)

Respuesta


Herramientas
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Trackbacks are habilitado
Pingbacks are habilitado
Refbacks are deshabilitado

Potenciado por vBulletin® Copyright ©2000 - 2007,
Diseño por CompletevB
Zona Beta es otro proyecto de Larva Internet