Primer programa con condiciones - Como presentar la mejor solución

Iniciado por Hakim, 8 Agosto 2017, 10:31 AM

0 Miembros y 1 Visitante están viendo este tema.

Hakim

 Saludos nuevamente, hace dos días comencé la clase de programación en la universidad y estoy apurándome a caer en tiempo con el lenguaje.

Por que cuando la respuesta es negativo aparece correctamente en el resultado pero al ser positivo lo declara también negativo.

Código (cpp) [Seleccionar]
#include "stdafx.h"
#include <iostream>

using namespace std;

int main()
{
int valor;
int suma;


cout << "Vamos a crear mi primer programa con condiciones y input " << '\n'<<'\n';
cout << "Por favor incresa un numero" << endl;
cin >> valor;
cout << "Ahora vamos a incresar otro numero para sumarlos" << endl;
cin >> suma;
cout << "La suma de ambos numeros es " << valor + suma << endl << endl;
if (valor + suma > 0)
cout << "El valor es positivo" << endl;
else (valor + suma < 0);
cout << "El valor es negativo" << endl;
cout << endl;
system ("pause");

   return 0;
}


Gracias por el tiempo.

ivancea96

El else se hace así:
Código (cpp) [Seleccionar]
if(){
}else if(){
}


Nótese que en tu código no pusiste el if después del else, con lo cual no es una condición.
Y pusiste ';', con lo cual se lo toma como una sentencia:
Código (cpp) [Seleccionar]
if(...);
cout << 'a';

En ese caso, el cout 'a' se va a ejecutar siempre, porque el if se termina al encontrar el ;

Hakim

Cita de: ivancea96 en  8 Agosto 2017, 11:25 AM
El else se hace así:
Código (cpp) [Seleccionar]
if(){
}else if(){
}


Nótese que en tu código no pusiste el if después del else, con lo cual no es una condición.
Y pusiste ';', con lo cual se lo toma como una sentencia:
Código (cpp) [Seleccionar]
if(...);
cout << 'a';

En ese caso, el cout 'a' se va a ejecutar siempre, porque el if se termina al encontrar el ;

Corregido, gracias mil.

Código (cpp) [Seleccionar]
#include "stdafx.h"
#include <iostream>

using namespace std;

int main()
{
int valor;
int suma;


cout << "Vamos a crear mi primer programa con condiciones y input " << '\n'<<'\n';
cout << "Por favor incresa un numero" << endl;
cin >> valor;
cout << "Ahora vamos a incresar otro numero para sumarlos" << endl;
cin >> suma;
cout << "La suma de ambos numeros es " << valor + suma << endl << endl;
if (valor + suma > 0) {
cout << "La suma es positiva" << endl;
}
else if (valor + suma < 0) {
cout << "La suma es negativa" << endl;
}

system ("pause");

    return 0;
}

engel lex

y por consecuencia logica te falta un else... no cubres todos los casos... si es 0, el programa no reflejará nada
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.