Funcionesen codeblocks ejerciciosresueltos

9
Electrónica y Telecomunicaciones Fundamentos de la Programación Profesor Ing. Santiago Quiñones Alumno Daniel Astudillo 1er Ciclo

Transcript of Funcionesen codeblocks ejerciciosresueltos

Page 1: Funcionesen codeblocks ejerciciosresueltos

Electrónica y Telecomunicaciones

Fundamentos de la Programación

Profesor

Ing. Santiago Quiñones

Alumno

Daniel Astudillo

1er Ciclo

Page 2: Funcionesen codeblocks ejerciciosresueltos

1. Escriba una función potencia Entera (base, exponente) que devuelva el valor de:

base exponente. Por ejemplo, potencia Entera(3, 4) = 3 * 3 * 3 * 3. Suponga que

exponente es un entero positivo diferente de cero y que base es un entero. La función

potencia Entera() debería utilizar for o while para controlar el cálculo. No utilice

funciones de la biblioteca matemática.

Codificacion en C++

#include<iostream>using namespace std;int b,e,potencia=1;int Potenciacion(int b,int e) for (int i =1; i<=e; i++) potencia*=b; return potencia;

main() int p; cout<<"escriba la base"<<endl; cin>>b; cout<<"Escriba el exponente"<<endl; cin>>e; p=Potenciacion(b,e); cout<<b<<" elevado a la "<<e<<"="<<p<<endl;return 0;

Ejecucion del programa

Page 3: Funcionesen codeblocks ejerciciosresueltos

2. Defina una función hipotenusa que calcule la longitud de la hipotenusa de un

triángulo rectángulo cuando se dan los otros dos lados. Emplee esta función en un

programa para determinar la longitud de la hipotenusa de los siguientes triángulos.

La función deberá tomar dos argumentos del tipo double y devolver la hipotenusa

como double.

Triángulo Lado 1 Lado21 3.0 4.02 5.0 12.03 8.0 15.0

Codificacion en C++

#include<iostream>#include<cmath>using namespace std;double a,b;double h=0;double Hipotenusa(double a,double b) for (int i =0; i<=3; i++) h=sqrt(pow(a,2)+pow(b,2)); return h;int main() double z; cout<<"Ingrese el primer lado"<<endl; cin>>a;

Page 4: Funcionesen codeblocks ejerciciosresueltos

cout<<"Ingrese el segundo lado"<<endl; cin>>b; z=Hipotenusa(a,b); cout<<"La hipotenusa de este triangulo es = "<<z<<endl;return 0;

Ejecucion del programa

3. Escriba segmentos de programa que realicen lo siguiente:a. Calcule la parte entera del cociente cuando el entero a se divida entre el entero b.b. Calcule el residuo entero cuando el entero a se divida entre el entero b.c. Utilice las partes de programa desarrolladas en a) y b) para escribir una función que acepte un entero entre 1 y 32767 y lo imprima como una serie de dígitos, separando cada uno con dos espacios. Por ejemplo, el entero 4563 deberá imprimirse como: 4 5 6 2.

Codificacion en C++

#include<iostream>using namespace std;int a=2;int b=3;int Cociente_entero(int a,int b) int cociente; cociente=a/b; return cociente;

Page 5: Funcionesen codeblocks ejerciciosresueltos

int Residuo_entero(int a,int b) int residuo; residuo=a%b; return residuo;int main() int c,r; c=Cociente_entero(a,b); cout<<"El cociente entero es = "<<c<<endl; r=Residuo_entero(a,b); cout<<"El residuo entero es = "<<r<<endl;

return 0;

Ejecucion del programa

4. Escriba una función que tome un valor entero y devuelva el número con sus dígitos en reversa. Por ejemplo, dado el número 7631, la función deberá devolver 1367.

Codificacion en C++

#include<iostream>#include <cstdlib>#include <cmath>using namespace std;

Page 6: Funcionesen codeblocks ejerciciosresueltos

int a,t,n;int Reversa(int t,int a) t=0; a=(n/1000); n­=(a*1000); t+=a*1;

a=(n/100); n­=(a*100); t+=a*10;

a=(n/10); n­=(a*10); t+=a*100;

a=(n/1); n­=(a*1); t+=a*1000;

a=(n); n­=a; t+=a*10000; return t;int main() int r; while (n<10000 or n>1) cout<<"Introduce un numero de 4 digitos: "; cin>>n; r=Reversa(t,a); cout<<"El numero al reves es: "<<r<<endl;

return 0;

Ejecucion del programa

Page 7: Funcionesen codeblocks ejerciciosresueltos

5. El máximo común divisor de dos enteros es el mayor entero que divide ambos números. Escriba una función mcd() que devuelva el máximo común divisor de dos enteros.

Codificacion en C++

#include<iostream>using namespace std;int i,nb,na, nm;int Maximo_Comun_Divisor(int na,int n2, int nm) int cont=1; for(i=1;i<nm;i++) if ((na%i==0) and (nb%i==0)) cont=cont*i; na=na/i; nb=nb/i; i=2; return cont;int main() int MCD; cout<<"Ingrese el primer numero"<<endl; cin>>na; cout<<"Ingrese el segundo numero"<<endl; cin>>nb; nm=na;

Page 8: Funcionesen codeblocks ejerciciosresueltos

MCD=Maximo_Comun_Divisor(na,nb, nm); cout<<"El Maximo Comun Divisor es = "<<MCD<<endl;return 0;

Ejecucion del programa

6. Escriba una función distancia() que calcule la distancia entre dos puntos (x1, y1) y

(x2, y2). Todos los números y valores devueltos deben ser de clase float.

Codificacion en C++

#include<iostream>#include<cmath>using namespace std;float a,y,b,z;float Disctancia(float a,float y,float b, float z) int res; res=sqrt(pow((b­a),2)+pow((z­y),2)); return res;int main() float d; cout<<"Ingrese x1"<<endl; cin>>a; cout<<"Ingrese x2"<<endl; cin>>b; cout<<"Ingrese y1"<<endl;

Page 9: Funcionesen codeblocks ejerciciosresueltos

cin>>y; cout<<"Ingrese y2"<<endl; cin>>z; d=Disctancia(a,y,b,z); cout<<"La distancia es = "<<d<<endl;return 0;

Ejecucion del programa