Está en la página 1de 9

Nombre: Fernando A. Agustín Y.

Matrícula: 100053107

Asignatura: Programación I

Grupo: 3042

Tema: Tarea VI

Teléfono: 829-347-3649
I. Investiga en la web y elabora un informe acerca de las funciones en Lenguaje C.
Una función es un bloque de código que realiza alguna operación. Una función
puede definir opcionalmente parámetros de entrada que permiten a los
llamadores pasar argumentos a la función. Una función también puede devolver
un valor como salida. Las funciones son útiles para encapsular las operaciones
comunes en un solo bloque reutilizable, idealmente con un nombre que describa
claramente lo que hace la función. La función siguiente acepta dos enteros de un
llamador y devuelve su suma; a y b son parámetros de tipo int .
Ejemplo:
int sum(int a, int b)
{
return a + b;
}
La función se puede invocar o llamar a desde cualquier número de lugares del
programa. Los valores que se pasan a la función son los argumentos, cuyos tipos
deben ser compatibles con los tipos de parámetro de la definición de función.
Ejemplo:
int main()
{
int i = sum(10, 32);
int j = sum(i, 66);
cout << "The value of j is" << j << endl; // 108
}
Elemento de una declaración de función. Una declaración de función mínima
consta del tipo de valor devuelto, el nombre de la función y la lista de parámetros
(que pueden estar vacíos), junto con palabras clave opcionales que proporcionan
instrucciones adicionales al compilador. El ejemplo siguiente es una declaración de
función:
Ejemplo:
int sum(int a, int b);
Una definición de función consta de una declaración, más el cuerpo, que es todo el
código entre las llaves:
Ejemplo:
int sum(int a, int b)
{
return a + b;
}
Una declaración de función seguida de un punto y coma puede aparecer en varios
lugares de un programa. Debe aparecer antes de cualquier llamada a esa función
en cada unidad de traducción. La definición de función debe aparecer solo una vez
en el programa, según la regla de una definición (ODR).
Los elementos necesarios de una declaración de función son los siguientes:
1) Tipo de valor devuelto, que especifica el tipo del valor devuelto por la función, o
si void no se devuelve ningún valor. En C++11, es un tipo de valor devuelto válido
que indica al compilador que auto infiera el tipo de la instrucción return. En C++14,
decltype(auto) también se permite. Para obtener más información, consulte más
adelante Deducción de tipos en tipos de valor devueltos.
2) El nombre de función, que debe comenzar con una letra o un carácter de
subrayado y no puede contener espacios. En general, un carácter de subrayado
inicial en los nombres de función de la biblioteca estándar indica funciones de
miembro privado o funciones no miembro que no están pensadas para que las use
el código.
3) La lista de parámetros, que es un conjunto delimitado por llaves y separado por
comas de cero o más parámetros que especifican el tipo y, opcionalmente, un
nombre local mediante el cual se puede acceder a los valores de dentro del cuerpo
de la función.
Definiciones de función
Una definición de función consta de la declaración y el cuerpo de la función, entre
llaves, que contiene declaraciones de variables, instrucciones y expresiones. En el
ejemplo siguiente se muestra una definición de función completa:
Ejemplo:
int foo(int i, std::string s)
{
int value {i};
MyClass mc;
if(strcmp(s, "default") != 0)
{
value = mc.do_something(i);
}
return value;
}
Las variables declaradas dentro del cuerpo se denominan variables locales. Se
salen del ámbito cuando finaliza la función; por lo tanto, una función nunca debe
devolver una referencia a una variable local.
MyClass& boom(int i, std::string s)
{
int value {i};
MyClass mc;
mc.Initialize(i,s);
return mc;
}
Funciones const y constexpr
Puede declarar una función miembro como para especificar que la función no
puede cambiar los valores de los miembros const de datos de la clase. Al declarar
una función miembro como, se ayuda al compilador a const aplicar la const-
correctness. Si alguien intenta modificar erróneamente el objeto mediante una
función declarada como, se produce un const error del compilador. Para obtener
más información, vea const.
Declare una función como cuando el valor que genera se puede determinar
constexpr posiblemente en tiempo de compilación. Por lo general, una función
constexpr se ejecuta más rápido que una función normal. Para más información,
consulte constexpr.
Plantillas de función
Una plantilla de función es parecida a una plantilla de clase; genera funciones
concretas que se basan en los argumentos de plantilla. En muchos casos, la
plantilla es capaz de inferir los argumentos de tipo, por lo que no es necesario
especificarlos de forma explícita.
Ejemplo:
template auto Add2(const Lhs& lhs, const Rhs& rhs)
{
return lhs + rhs;
}
auto a = Add2(3.13, 2.895); // a is a double
auto b = Add2(string{ "Hello" }, string{ " World" }); // b is a std::string

II. Escribe en lenguaje C, un programa que realice las 4 operaciones básicas de


matemáticas.
1) Función Suma (a, b)
2) Función Resta (a, b)
3) Función Multiplica (a, b)
4) Función Divide (a, b)
#include <iostream>
#include <stdlib.h>
using namespace std;
int main(){
// Fernando A. Agustin Y. 100053107

printf("\nCon este programa realizaras las 4 operaciones basicas de matematicas\


n\n");
int a, b, R;

printf ("\nIntroduce los valores que quieres sumar, restar, multiplicar y dividir:\n");
scanf ("%d", & a);
scanf ("%d", & b);

printf ("\nLa suma de sus valores es: %d\n", (R=a+b));


printf ("\nLa deferencia de sus valores es: %d\n", (R=a-b));
printf ("\nEl cociente de sus valores es: %d\n", (R=a/b));
printf ("\nEl producto de sus valores es: %d\n", (R=a*b));

system("pause");
return 0;
}
III. Realiza un programa que separe las funciones del archivo principal(main) y que
sea utilizado de manera externa, puede trabajar con las funciones del punto 2.
#include <iostream>
#include <stdlib.h>
using namespace std;
int main() {
// Fernando A. Agustin Y. 100053107
cout<<"\nElija la operacion que desea utilizar.\n";
int a, b, c, R;
while(a != 5){
system("cls");
cout<<"Marque (1) si deseas realisar una multiplicacion."<<endl;
cout<<"Marque (2) si deseas realisar una division."<<endl;
cout<<"Marque (3) si deseas realisar una suma."<<endl;
cout<<"Marque (4) si deseas realisar una resta."<<endl;
cout<<"Marque (5) si deseas salir."<<endl;
cout<<"\nDijite la opccion deseada:\n";
cin>>a;
switch(a){
case 1:
system("cls");
cout<<"Dijite los factores que desea multiplicar:\n";
cin>>b;
cin>>c;
break;
case 2:
system("cls");
cout<<"Dijite el dividendo y el divisor que desea dividir:\n";
cin>>b;
cin>>c;
break;
case 3:
system("cls");
cout<<"Dijite los sumandos que desea sumar:\n";
cin>>b;
cin>>c;
break;
case 4:
system("cls");
cout<<"Dijite el minuendo y el sustraendo que desea restar:\n";
cin>>b;
cin>>c;
break;
default:
if(a < 1 || a > 5){
system("cls");
cout<<"\nEsta opccion no existe...\n"<<endl;
system("pause");
system("cls");
}
break;
}
switch(a){
case 1:
printf("\nEl producto de su multiplicacion es: %d\n",(R=b*c));
system("pause");
break;
case 2:
printf("\nEl cociente de su divicion es: %d\n",(R=b/c));
system("pause");
break;
case 3:
printf("\nEl total de la suma es: %d\n",(R=b+c));
system("pause");
break;
case 4:
printf("\nLa diferencia de su resta es: %d\n",(R=b-c));
system("pause");
break;
}
}
}
IV. Incluir un el link de un video, donde expliques el código utilizado para la
realización de esta actividad.
https://drive.google.com/file/d/14rfZMN_k3nceNGz0BzEGCgIJeBTbJTdF/view?
usp=share_link

También podría gustarte