Un puntero es una variable que contiene la dirección de memoria de variable. Se utilizan para pasar información entre una función y sus puntos de llamada.
Existe dos operadores especiales para trabajar con punteros: & y *.
El primero devuelve la dirección de memoria de su operador.
El segundo devuelve el valor de la variable cuya dirección es contenida por el puntero.
#include<iostream.h>
#include<conio.h>
#include<math.h>
int formula(int, int, int , float &, float &);
void main(){
int a, b, c, opc;
float x1, x2;
clrscr();
cout<<"Escribe a: "; cin>>a;
cout<<"Escribe b: "; cin>>b;
cout<<"Escribe c: "; cin>>c;
opc=formula(a,b,c,x1,x2);
if(opc==1)
cout<<"No div entre 0.";
else if(opc==2)
cout<<"No raiz imaginaria.";
else
cout<<"X1 = "<<x1<<endl<<"X2 = "<<x2;
getch();
}
int formula(int a, int b, int c, float &x1, float &x2){
float div, rais;
div=2*a;
rais=(b*b) - (4*a*c);
if(div>0){
if(rais>=0){
x1=(-b + sqrt(rais))/div;
x2=(-b - sqrt(rais))/div;
return 0;
}
else
return 2;
}
else
return 1;
}#include<stdio.h>
#include<conio.h>
void area(int b,int h,float *a);
void main(void){
int b,h;
float a;
clrscr();
printf("
Escribe la base: ");
scanf("%d",&b);
printf("Escribe la altura: ");
scanf("%d",&h);
area(b,h,&a);
printf("
El area es: %.2f",(float)a);
getch();
}
void area(int b,int h,float *a){
*a = (b*h)/2;
}
Descargar