ayuda en c++

shadowws2
24 de Noviembre del 2009
disculpen pero estoy aprendiendo a programar en c++, yo hize un programa para calcular el mayor de 2 numeros.. pero cuando lo corro el resultado siempre me da 0, podrian ayudarme? alli les dejo el programa

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

int datos( int z );
int funcion( int x, int y);

int a,b ;

int main (){ // incio programa

datos (a);
datos (b);
funcion (a,b);

getche ();

} // fin programa


int funcion ( int x, int y) { // incio funcion

if (x > y) {
printf("el numero mayor es %d", x);

}else{
printf(" el numero mayor es %d", y );

}

} // fin funcion


int datos ( int z ) { // inicio funcion
printf("ingrese un numero: ");
scanf("%d", &z);

} // fin funcion

german95
24 de Noviembre del 2009
Escribí un programa c++ que hiciera esa misma funcion y no me complique tanto:

#include <iostream>
using namespace std;
int x,y;
float X,Y;

int main ()
{
do {
cout<<"Ingrese un valor para X:"<<endl;
cin>>x;
X=x;
cout<<"Introduce un valor para y:"<<endl;
cin>>y;
Y=y;
}while((x>y)&&(x<y));
if(x>y)
{
cout<<"El valor más grande es x="<<X<<"."<<endl;
}
else
{
cout<<"El valor más grande es y="<<Y<<"."<<endl;
}

return 0;
}

Espero que te sirva de algo

paco
24 de Noviembre del 2009
el mio:
#include <iostream>
using namespace std;

int max(int x, int y) {
if(x>y) return x;
return y;
}

int main() {
int x, y;
cin >> x >> y;
cout << max(x, y) << endl;
}