SoloCodigo

Programación General => C/C++ => Mensaje iniciado por: jcaz15 en Domingo 8 de Agosto de 2004, 03:22

Título: Re: Guien A Un Principiante
Publicado por: jcaz15 en Domingo 8 de Agosto de 2004, 03:22
Hola me llamo Carlos, y no tengo ni dos meses aprendiendo C, y he logrado algo de conocimientos en diferentes tutoriales on-line o en libros especializados, pero estoy tratando de hacer un pequeño programa para aplicar los conocimientos adquiridos pero no he logrado que me salga, es decir, en mi calculadora programable lo logre hacer pero en C no puedo, y no se si es por alguna falta de sintaxis o que: NO ESTOY PIDIENDO QUE ME LO HAGAN SOLO DIGANME QUE ESTA MAL Y YO INVESTIGARé COMO SOLUCIONARLO, ya que mi área es la programación, estudio historia de México, pero me gusta estar aprendiendo cosas nuevas, y programar en C es un nuevo reto.

les pongo el codigo fuente para que me digan en que esta mal
Gracias por su tiempo JCAZ

/*Programa para comparar 3 números y obtener el más grande
Programó: Ayes Zamudio Juan Carlos */

#include<stdio.h>
#include<conio.h>
#include<math.h>

void main()
{
int  a,b,c,mayor;
clrscr();
printf("Escriba tres números cualquiera: "\n);
printf("A)");
scanf("%d",&a);
printf("B)");
scanf("%d",&b);
printf("C)");
scanf("%d",&c);
if (a>b && a>c)
else
mayor=a
if (b>a && b>c)
else
mayor=b
if (c>a && c>b)
else
mayor=c
printf("El numero mayor es:%d",mayor);
getch();
}

En lo personal creo que no estoy aplicando bien el condicional if-else
bueno esperando su comprensión y posible guía...
Título: Re: Guien A Un Principiante
Publicado por: Binary en Domingo 8 de Agosto de 2004, 03:45
Tienes razon, asi no se ocupa el if-else
mira...

if( ) { }
else { }

en el caso,
tu haces:

if (a>b && a>c)
else
...

eso deberia ser asi...

if(a > b && a > c) mayor = a;
else {...}


Ahora...
para lo que respecta al problema en particular, yo te recomiendo que dividas las condiciones un poco diferente....

if( a > b ) {
if(a > c) mayor = a;
else mayor = c;
}
else { // b > a
if(b > c) mayor = b;
else mayor = c;
}

eso seria todo...
Ahora te propongo un nuevo reto :D
Ingresa 10 numeros, y encuentra el mayor :D
Consejito: aprende ciclos (bucles) :D

Saludos!
Título: Re: Guien A Un Principiante
Publicado por: iori2029 en Miércoles 18 de Agosto de 2004, 18:41
Te faltan las ñllaves .Podrias hacer if (llave, es que este teclado esta en ingles y esta diferente, no sale la llave)(num1>num2)
llave
if(num1>num3)
llave
printf("el primero es mayor");
cierra llave
else
llave
printf("El segundo es mayor");
cierra llacve
cierrallave
else
abre llave
printf("El segundo es mayor);
cierra llave.

Es cuestion de como manejes el if-else
Título: Re: Guien A Un Principiante
Publicado por: Noel Solw en Miércoles 25 de Agosto de 2004, 08:23
Se puede, sencillamente, hacer :

if (a > b) mayor = a
else        mayor = b;                // se toma el mayor de a  y b
if(c > mayor)  mayor =  c;        // se toma el mayor con c
Título: Re: Guien A Un Principiante
Publicado por: NeRo en Miércoles 25 de Agosto de 2004, 15:29
Creo que ya te han respondido tus dudas, pero yo te aconsejaría aunque no viene al caso que desde ahorita te hagas buenos hábitos de programación, y eso incluye la identación:



if(a>b)
     may=a;
else
     may=b;
if(c>may)
     may=c;

printf("\n\tEl número mayor es %d",may);


Eso te ayudará a leer el codigo más rapido, y te será de mucha utilidad al escribir programas más complejos.

                                   :hola: Saludos!!!
Título: Re: Guien A Un Principiante
Publicado por: NeRo en Miércoles 25 de Agosto de 2004, 15:30
Creo que la identación no se puede representar en lo foros, jajajaja...
Título: Re: Guien A Un Principiante
Publicado por: JuanK en Miércoles 25 de Agosto de 2004, 16:00
creo que debes mirar las opciones de edicion cuando escribas en un foro
<!--xc1--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td>XCODE </td></tr><tr><td id='XCODE'><!--exc1-->int main()
{
   printf("No miro las opciones de edicion!!!");
   return 1;
}<!--xc2--></td></tr></table><div class='postcolor'><!--exc2-->

jajajaja  :devil:  :hola:
Título: Re: Guien A Un Principiante
Publicado por: Binary en Jueves 26 de Agosto de 2004, 14:42
Código: Text
  1.  
  2. int max(int a, int b) { return ( a &#62; b ? a : b ); }
  3. int max(int a, int b, int c) { return max(a, max(b, c)); }
  4.  
  5.  
  6. int main()
  7. {
  8.     int a, b, c;
  9.     cin&#62;&#62;a&#62;&#62;b&#62;&#62;c;
  10.     cout&#60;&#60;max(a, b, c)&#60;&#60;endl;
  11.     return 0;
  12. }
  13.  
  14.