C/Visual C - Comienzos ... xD

   
Vista:

Comienzos ... xD

Publicado por OuKB (1 intervención) el 19/12/2007 01:15:23
Ains, bueno ahí va.... Yo va a ser que de programación voy muy cortito , por eso ahora que estoy menos liao ultimamente me gustaría meterme de lleno en C porke se que es un lenguaje que daré el año que viene que comienzo a estudiar informatica y keria ir mas o menos preparao, pero weno... e intentao hacer el ejercicio de conversion grados celsius y farenheit pero tengo varios errores en el programa además de estructurales y etc. Se sobre programación básica, mas o menos se lo principal que hay que saber para meterte a aprender. Ahora comienzo a aprender... asike os pido paciencia.


Ahí va.

---------------------------------------------------------------------------------
---------------------------------------------------------------------------------
Código:

#include <stdio.h>

int main()

{
float numero1;
float solucion1;
float solucion2;
char dato2;
char dato;
char dato3;
char dato4;
#define dato3 = Celsius
#define dato4 = Farenheit
linea1: printf("Bienvenido al conversor Celsius a Farenheit o viceversa. ");
printf("Introduce el valor que quieres convertir .");
scanf("%f",numero1);
printf("¿Este valor corresponde a Celsius ó a Farenheit ?");
linea2:
scanf("%c",dato);
if (dato=dato3);
{
printf("El dato elegido es %f grados Celsius ");
solucion1 = (numero1/2)- 15
printf("%f grados Celsius son, %f grados Farenheit ",solucion1);
}
else if (dato=dato4);
{
printf("El dato elegido es %f grados Farenheit ");
solucion2 = ((numero1 - 32) /(1.8));
printf("%f grados Farenheit son, %f grados Celsius ",solucion2);
}
else
{
printf("Error!, porfavor escribra correctamente Celsius o Farenheit ");
goto linea2;
}

return 0;
}

---------------------------------------------------------------------------------
---------------------------------------------------------------------------------

Hize varías variaciones del programa como al final que pregunta que si quiero salir del programa o volver a calcular otro dato y tal... pero al final me daban muchisimos errores asike decidí kitarlo xD. Bien ahi esta la cosa, nose como estará estructuralmente, me gustaría que me dieran su opinión. Y decirme que pueden ser los errores que me ha dado al intentar compilar:

---------------------------------------------------------------------------------

Compilador: Default compiler
Ejecutando g++.exe...
g++.exe

(Rutas donde se compila el exe y donde se pilla etc bal bla bla)

-I"C:Dev-Cppincludec++3.4.2ackward" -I"C:Dev-Cppincludec++3.4.2mingw32" -I"C:Dev-Cppincludec++3.4.2" -I"C:Dev-Cppinclude" -L"C:Dev-Cpplib"
: In function `int main()':
:21: error: expected primary-epresionje before '=' token
:21: error: `Celsius' undeclared (first use this function)
:21: error: (Each undeclared identifier is reported only once for each function it appears in.)
:25: error: expected `;' before "printf"
:27: error: expected primary-epresionje before "else"
:27: error: expected `;' before "else"

:33: error: expected primary-epresionje before "else"
:33: error: expected `;' before "else"

Ejecución Terminada

---------------------------------------------------------------------------------


Compilador/Editor usado, Dev-C++, sobre Windws XP. Gracias de antemano por su colaboración y paciencia. Un Saludo!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Comienzos ... xD

Publicado por Nelek (818 intervenciones) el 19/12/2007 09:50:26
Hola, bienvenido al mundillo. Te comento:

En primer lugar, los defines no se usan asi, el fallo está en tu igual.
Un define es un alias que le das a un valor constante para hacerlo mas legible o darle un mayor significado a las cosas. Por ejemplo:

circulo = 3.141592 * pow (radio, 2);

o bien usar:
#define PI 3.141592 // date cuenta que no he puesto signo.
circulo = PI * pow (radio, 2)

El define tambien se puede concatenar, por ejemplo:
#define STATUSOK 1000
#define FALLOCON (STATUSOK + 1)

o usarse sus alias para declarar otras cosas
#define MAX 143
int vector [MAX]; //Aqui creas un vector de 143 posiciones [0.. 142]

:::::::::::::::::::::::::::::

Segundo fallo. Cuando creas una variable (Celsius, Farenheit) se especifica el tipo de variable que es y se puede dar un valor inicial (para evitar valores basura):
int nEtapa = 0;
double dCelsius = 0.0;
float fFarenheit = 0.0;

En C, C++ todas las variables tienen que ser declaradas antes de poder usarlas
::::::::::::::::::::::::::::::::::::::

Tercero, las lineas con IF, ELSE IF, ELSE, FOR, SWITCH.... y en general cualquier expresion a la que le sigue un abrir llaves { NO se les pone el punto y coma al final.

if (edad == 15)
{ //haces lo que quieres
}
else
{ //otra cosa
}

pero, en cambio, el resto de lineas (excepto las que empiezan con #) si que deben de llevarlo. Por ejemplo en el primer IF donde dices que "solucion1 = (numero1/2)- 15 " te lo has olvidado.




En definitiva, te recomiendo que primero eches un vistazo a algun manual y leas un poco antes de meterte con los ejemplos. El aprender a metodo de prueba y fallo sirve para ir saliendo del paso, pero no para tener las cosas claras y poder enfrentarte con casi cualquier situacion.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar