sábado, 2 de abril de 2011

tareas de la unidad 3

tarea 1
calculadora basica equipo
Cadena Vargas Victor Alan
Galindo Miguel

programa

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


float multiplicacion(float n1,float n2)
{
float mult;
mult=(n1*n2);
return mult;
}

float division(float n1,float n2)
{
float division;
if(n2!=0)
{
division=(n1/n2);
return division;
}
}


float sum(float n1,float n2)
{
float suma;
suma=(n1+n2);
return suma;
}


float resta(float n1,float n2)
{
float resta;
resta=(n1-n2);
return resta;
}


float raiz(float n1)
{
float raiz;
raiz=sqrt(n1);
return raiz;
}

float potencia(float n1,float n2)
{
float pot;
pot=pow(n1,n2);
return pot;
}


float resciproca(float n1)
{
float resciproca;
resciproca=(1/n1);
return resciproca;
}




void main()
{
float n1,n2;
char oper;
cout<<"\t\t\t-CALCULADORA SIMPLE-"<<endl;
cout<<"\n";
cout<<"Listado de operaciones:\n";
cout<<"(+) suma, (-) resta,(*) multiplicacion,(/) division,(R) raiz cuadrada\n";
cout<<"(p) elevado a esa potencia, (r) resiproca, (C) Apagar calculadora\n";
cout<<"\n\n";
cin>>n1;
do
{
cin>>oper;
if(oper=='R'||oper=='r'||oper=='C')
{
switch(oper)
{
case 'R':  raiz(n1);
     cout<<"="<<raiz(n1);
           n1=raiz(n1);
           break;
case 'r':  resciproca(n1);
     cout<<"="<<resciproca(n1);
           n1=resciproca(n1);
           break;
case 'C':  cout<<"Calculadora Apagada";
     break;
}
}
else
{
cin>>n2;
cout<<"= "<<endl;
switch(oper)
{
case '+':  sum(n1,n2);
     cout<<sum(n1,n2);
     n1=sum(n1,n2);
     break;
case '-':  resta(n1,n2);
           cout<<resta(n1,n2);
           n1=resta(n1,n2);
     break;
case '*':  multiplicacion(n1,n2);
           cout<<multiplicacion(n1,n2);
           n1=multiplicacion(n1,n2);
     break;
case '/':  if(n2!=0)
           {
           division(n1,n2);
           cout<<division(n1,n2);
           n1=division(n1,n2);
           }
           else
           cout<<"Error matematico"<<endl;
           break;
case 'p':  potencia(n1,n2);
     cout<<potencia(n1,n2);
           n1=potencia(n1,n2);
           break;
}
}
}
while(oper!='C' || oper!='c');
getch();
}



Tarea 2

4/5((x-7)^2)+3

programa
#include <iostream.h>
#include <conio.h>
#include <math.h>
int main()
{
int x,y;
char etiqueta[]=" Y ";
char eje[]="--------------------------------------------->";
char linea[]="|                                             ";
cout<< etiqueta << endl;
cout<< eje <<endl;
for(x=1;x<=15;x++)
{
y = 0.8*(pow((x-7),2.0))+3;
linea[y] = '*';
cout<< linea << endl;
linea[y ] = '  ';
}
getch();
}














practica 8

problema 1
Escriba una función denominada a revisar ( ) que tenga tres parametros, el primer parametro debe de aceptar un numero entero, el segundo un numero en punto flotante y el tercer parametro un número de doble precición. El contenido de la función solo debe mostrar los valores de los datos transmitidos a la función cuando sea llamada.


pseudocodigo




programa 

#include <conio.h>
#include <math.h>
void revisar(int val_ent, float val_flot, double val_doble)
{
cout<<"                             "<<endl;
cout<<endl;
cout<<"El valor entero es: "<<val_ent<<endl;
cout<<"El valor flotante es: "<<val_flot<<endl;
cout<<"El valor doble es: "<<val_doble<<endl;
}
void main()
{
int val_ent;
float val_flot;
double val_doble;
cout<<"introdusca un numero entero: ";
cin>>val_ent;
cout<<"introdusca un numero flotante: ";
cin>>val_flot;
cout<<"introdusca un numero doble: ";
cin>>val_doble;
revisar(val_ent, val_flot, val_doble);
getch();
}












problema 2
escriba una función denominada "mult" ( ) que acepte como parametro dos numero en punto flotante, multiplique estos dos numeros y despligue el resultado.




pseudocodigo

programa 
#include <iostream.h>
#include <conio.h>
void mult (float num1, float num2)
{
float res1;
res1=num1*num2;
cout<<"La multiplicacion de: "<<num1<<" * "<<num2<<" = "<<res1<<endl;
}
void main ()
{
float A, B;
cout <<"Primer numero flotante: ";
cin>>A;
cout<<"Segundo numero flotante: ";
cin>>B;
mult (A,B);
getch ();
}










problema 3
Escriba una función que produzca una tabla de números del 1 al 10, su valor al cuadrado y su valor al cubo. Incluye a esta función en un programa.



pseudocodigo

programa 
#include <iostream.h>
#include <conio.h>
#include <math.h>
void tabla ()
{
int n;
cout<<"Numero    Cuadrado     Cubo"<<endl;
for (n=1;n<=10;n++)
{
cout<<n<<"          "<<(n*n)<<"              "<<(n*n*n)<<endl;
}
}
void main ()
{
tabla ();
getch ();
}








problema 4

Escriba una función denominada "triangulorectangulo ( )" que acepte la longitud de 2 lados de un triangulo rectángulo con los argumentos A y B respectivamente.
La función debe determinar y devolver la hipotenusa, C, de un triangulo. (SUGERENCIA: Utilice el teorema
de Pitágoras C2=A2 + B2) Incluya esta función en el programa.
pseudocodigo

programa 
#include <iostream.h>
#include <conio.h>
#include <math.h>
int triangulorectangulo (int A, int B);
void main ()
{
int lad1, lad2;
cout<<"Primer cateto de un triangulo rectangulo: ";
cin>>lad1;
cout<<"Segundo cateto de un triangulo rectangulo: ";
cin>>lad2;
cout<<"El valor de la hipotenusa es: "<<triangulorectangulo (lad1, lad2)<<endl;
getch ();
}
int triangulorectangulo (int A, int B)
{
int C;
C=sqrt((A*A) + (B*B));
return C;
}




problema 5
Diseñe una funcion tal que dado un parametro X regrece el siguiente valor, 1/x^5(((e^1.432)/x)-1). Y
diseñe una duncion con dos parametros x y n tales que regrece lo siguiente x+(x^n)/n - (x^n+2)/n+2 si x mayor igual a 0    y  (-x^-n)/n-1 +(x^n+1)/n+1 si x es menor que 0.



pseudocodigo

programa
#include <iostream.h>
#include <conio.h>
#include <math.h>

float funcion1(float x)
{
float v;
v=1.0/(pow(x,5)*((exp(1.432)/x)-1.0));

return v;
}

float funcion2(float x, float n)
{
float v;
if (x>=0)
{
v=x+(pow(x,n)/n)-(pow(x,n+2)/(n+2));
}
else
{
v=-((pow(x,n-1))/(n-1))+((pow(x,n+1))/(n+1));
}
return v;
}


void main()
{
float v1, v2,x,n;
cout<<"introdusca x:  ";
cin>>x;
v1=funcion1(x);
cout<<"introdusca x:  ";
cin>>x;
cout<<"introdusca n:  ";
cin>>n;
v2=funcion2(x,n);

cout<<"funcion 1= "<<v1<<endl;
cout<<"funcion 2= "<<v2<<endl;
getch();
}
 






problema 6
diseñe una funcion que genere 20 numeros aleatorios , otra funcion que muestre los numeros pares, otra para los impares, una funcion que despliegue la suma de los numeros aleatorios y otra que desppliegue el producto



pseudocodigo

programa 
#include <iostream.h>
#include <conio.h>
#include <stdlib.h>

void producto(int num[20])
{
int i;
double t;
t=1;
for(i=1;i<20;i++)
{
t=num[i]*t;
}
cout<<"El producto de los numeroes es: "<<t<<endl;
}
void suma(int num[20])
{
int i;
double t;
t=0;
for(i=1;i<20;i++)
{
t=num[i]+t;
}
cout<<"La suma de los numeros es: "<<t<<endl;
}
void generar(int num [20])
{
int i;
randomize();
for(i=0;i<20;i++)
{
num[i]=random(2000)+1;
}
}
void pares(int num[20])
{
int i;
cout<<"los numeros pares:   ";
for(i=0;i<20;i++)
{
if(num [i]%2==0)
{
cout<<num[i]<<", ";
}
}
cout<<endl;
}
void impares(int num[20])
{
int i;
cout<<"los numeros impares:   ";
for(i=0;i<20;i++)
{
if(num[i]%2==1)
cout<<num[i]<<", ";
}
cout<<endl;
}
void main()
{
int valores[20];
generar(valores);
pares(valores);
impares(valores);
suma(valores);
producto(valores);
getch();
}








problema 7

Formúlese un programa para obtener los siguientes valores estadísticos para un arreglo x, compuesto de n elementos
desviación media = i/n sumatoria  de |xi-x| donde x=i/n sumatoria xi
Raíz del valor c medio= raíz i/n sumatoria xi^2
Medio armónico= n/sumatoria de (i/xi)
Intervalo (r) máximo (x1, x2,……xn)- mínimo(x1, x2,……xn)
Medio geométrico (gm)=raíz n  de xi, x2,….xn.

pseudocodigo

programa 




problema 8
Escriba una función llamada tiempo() que  tenga un parámetro en número entero denominada segundos ,y 3 de referencia en número entero denominadas, hrs,min,seg,la función ha de convertir el numero transmitido en segundos a su equivalente en horas ,minutos y segundos, utilizando las referencias la función debe alterar directamente los argumentos respectivos en una función que llama.



pseudocodigo

programa 
#include <iostream.h>
#include <conio.h>

void tiempo(int segundos, int&horas, int&min, int&seg)
{
horas=segundos/3600;
min=(segundos%3600)/60;
seg=(min%60);
}

int main()
{
int horas, min, seg, segundos;
cout<<"tiempo en segundos: "<<endl;
cin>>segundos;
tiempo(segundos,horas,min,seg);
cout<<"horas:      minutos:       segundos"<<endl;
cout<<"     "<<horas<<"  :  "<<min<<"  :  "<<seg<<endl;
getch();
}






problema 9
Función llamada cambio ( ) que tenga un parámetro en número entero y 6 en entero denominados ,cien, cincuenta,veinte,diez,cinco, y uno. Respectivamente la función debe convertir  el valor transmitido del numero entero como cantidad en dólar, y convertir el valor transmitido al número más pequeño de billetes equivalentes, utilizando las referencias ,la función debe alterar directamente los argumentos respectivos en la función que llama.



pseudocodigo

programa 
#include <iostream.h>
#include <conio.h>
void cambio(int dlls, int& cien, int& cincuenta, int& veinte, int& diez, int& cinco, int& uno)
{
cien=dlls/100;
cincuenta=(dlls%100)/50;
veinte=((dlls%100)%50)/20;
diez=(((dlls%100)%50)%20)/10;
cinco=((((dlls%100)%50)%20)%10)/5;
uno=(((((dlls%100)%50)%20)%10)%5)/1;
cout<<"cien:    cincuenta:     veinte:     diez:    cinco:      uno:"<<endl;
cout<<"    "<<cien<<"          "<<cincuenta<<"            "<<veinte<<"            "<<diez<<"           "<<cinco<<"         "<<uno<<endl;
 }
 void main()
 {
 int dlls,cien,cincuenta,veinte,diez,cinco,uno;
 cout<<"ingresar dolares"<<endl;
 cin>>dlls;
 cambio( dlls, cien, cincuenta, veinte, diez, cinco, uno);
 getch();
 }








problema 10
El volumen  V y la superficie S  de un cilindro están dados por la formula volumen=(pi)((r)^2)(l) superficie= 2(pi)(r )(l) donde r=radio del cilindro y l= su longitud utilizando estas formulas escriba una función denominada cilindro () que acepte el radio y largo de un cilindro que devuelva el volumen y la superficie.



pseudocodigo

programa 
#include <iostream.h>
#include <conio.h>
void cilindro(float r, float L, float& v, float& s)
{
v=(3.1416*(r*r))*L;
s=(((3.1416*2)*r)*L);

}
void main()
{
float v,s;
int r,L;
cout<<"ingresar radio:"<<endl;
cin>>r;
cout<<"ingresar longitud:"<<endl;
cin>>L;
cilindro(r,L,v,s) ;
cout<<"volumen del cilindro:   "<<v<<endl;
cout<<"superficie del cilindro:   "<<s<<endl;
getch();
}







problema 11

Escriba una función que calcule el radio, r y el área, a, de un circulo cuando la circunferencia c es conocida la formulas son=                                                
                                                  r=c/2(pi)
                                                  a =pi(r)^2
Pruebe la función utilizando un programa que tenga funciones especificas de control.

pseudocodigo

programa 
#include <iostream.h>
#include <conio.h>
#include <math.h>

void calculo(int c, float&r, float&a)
{
r=c/(2*3.141592);
a=3.141592*(pow(r,2));
}

int main()
{
int c;
float a,r;
cout<<"introdusca el valor de la circunferencia:  "<<endl;
cin>>c;
calculo(c, r, a);
cout<<"radio:   "<<r<<"        area: "<<a;
getch();
return 0;
}






problema 12
Escriba una plantilla de funcion llamada maximo que devuelva el valor maximo de 3 argumentos que se transmiten ala funcion cuando esta es llamada. supongase que los 3 argumentos seran del mismo tipo.



pseudocodigo

programa 
#include <iostream.h>
#include <conio.h>
#include <math.h>

template <class T>

T maximo(T v1,T v2,T v3)
{
if (v1>=v2 && v2>=v3)
return v1;
else
{
if(v2>=v3)
return v2;
else
return v3;
}
}

void main()
{
float n1,n2,n3;
int num1,num2,num3;
cout<<"Numero entero 1:  "<<endl;
cin>>num1;
cout<<"Numero entero 2:  "<<endl;
cin>>num2;
cout<<"Numero entero 3:  "<<endl;
cin>>num3;
cout<<"El dato mayor es: "<<maximo(num1,num2,num3)<<endl;
cout<<"                 "<<endl;
cout<<"Numero flotante 1:  "<<endl;
cin>>n1;
cout<<"Numero flotante 2:  "<<endl;
cin>>n2;
cout<<"Numero flotante 3:  "<<endl;
cin>>n3;
cout<<"El dato mayor es: "<<maximo(n1,n2,n3)<<endl;
getch();
}




problema 13
Funcion que almacene los valores a un arreglo resistencia y10 valores a uno llamado corriente y considerar un arreglo llamado potencia que debe ser capaz de almacenar10 numeros en doble precicion y 10 numeros enteros. haga que el programaacepte los10 valores introducidos por el usuario en e;l arreglo corriente y resistencia, al ejecutar el prgogramadebe alamcenar en el arreglo potencia el producto de los valores correspondientes al cuadrado del arreglo corriente y del arreglo resistencia ( potencia [i] =resistencia[i]*pow(corriente[i],2) y desplegar la salida   

 "     resistencia       corriente        potencia    "
      
       total de potencia=

pseudocodigo

programa 
#include <iostream.h>
#include <conio.h>
#include <math.h>

template <class T>

T resist(T R[10])
{
int i;
for(i=1;i<=10;i++)
{
cout<<"introdusca el valro de la resistencia: "<<i<<endl;
cin>>R[i];
}
}

template <class T>

T corriente(T I[10])
{
int i;
for(i=1;i<=10;i++)
{
cout<<"introdusca la corriente: "<<i<<endl;
cin>>I[i];
}
}

template<class T>

T pot(T R[10],T I[10],T V[10])
{
int i;
float t;
for(i=1;i<=10;i++)
{
V[i]=R[i]*(pow(I[i],2));
t=V[i]+t;
}
return t;
}

void main()
{
int R[10],  I[10], V[10];
resist(R);
corriente(I);
pot(R,I,V);
int i;
cout<<"Resistencia         Corriente          Potencia"<<endl;
for(i=1;i<=10;i++)
{
cout<<R[i]<<"                      "<<I[i]<<"                        "<<V[i]<<endl;
}
cout<<"Total: "<<pot(R,I,V)<<endl;
getch();
 }