You are on page 1of 14

Lenguaje de Programacin

Estructurado
AMBITO DE VARIABLES

ST 202W - Lenguaje de Programacin


29/04/2016 1
Estructurado
mbito de variables
El mbito de una variable es la seccin o parte del
programa en el que la variable es vlida.

El mbito depende de dnde la variable haya sido


declarada.

Variables globales: Vlidas en todo el programa

Variables locales: Vlidas en un bloque del programa


delimitado por {}

ST 202W - Lenguaje de Programacin


29/04/2016 2
Estructurado
mbito de variables
#include <iostream>

using namespace std;

/* Variables globales */
double global = 3;
int M[1000][1000];

int main() {

/* Variables locales */
double local1 = 7.2;

if (global > 2) {
/* Variables local de bloque */
double local2 = global / 2;
}

return 0;
}

ST 202W - Lenguaje de Programacin


29/04/2016 3
Estructurado
mbito de variables
#include <iostream>

using namespace std;

double x = 1;

int main() {
cout << x << endl;
double x = 2;
cout << x << endl;
if (x == 2) {
double x = 3;
cout << x << endl;
}
cout << x << endl;
{
double x = 4;
cout << x << endl;
}
cout << x << endl;
return 0;
}

ST 202W - Lenguaje de Programacin


29/04/2016 4
Estructurado
Lenguaje de Programacin
Estructurado
FUNCIONES Y
PROCEDIMIENTOS
ST 202W - Lenguaje de Programacin
29/04/2016 5
Estructurado
Funciones

Permiten
reusar /* Funcion que recibe 2 parametros
porcione double y retorna la suma */
s de double sumar(double a, double b) {
cdigo double suma;
para
tareas suma = a + b;
especfic return suma;
as. }
Tambin
ayudan a
ordenar
program
as
grandes.
29/04/2016
ST 202W - Lenguaje de Programacin
Estructurado
6
Funciones
Puede o no tener parmetros #include <iostream>
de entrada.
using namespace std;

/* Funcion que recibe 2 parametros


Deben retornar un valor.
double y retorna la suma */
double sumar(double a, double b) {
Generalmente los mismos double suma;
suma = a + b;
parmetros de entrada return suma;
generan el mismo valor de }

salida.
int main() {
double suma = sumar(5, 4);
Generalmente no dependen cout << suma << endl;
return 0;
de variables externas. }

ST 202W - Lenguaje de Programacin


29/04/2016 7
Estructurado
Procedimientos
#include <iostream>
Un procedimiento es una
funcin que no retorna using namespace std;

ningn valor. char saludo[5] = "hola";

/* Declaramos las funciones antes de


usarlas*/
Realizan determinadas void saludar() {

operaciones en el }
cout << saludo << endl;

programa. void saludar(int veces) {


for (int i = 0; i < veces; i++) {
saludar(); /*No enviamos ningn
parmetro*/
Puede o no tener }

parmetros de entrada, as }
int main() {
como depender de otras saludar();
saludar(3);
variables externas. return 0;
}

ST 202W - Lenguaje de Programacin


29/04/2016 8
Estructurado
Funciones con cadenas
#include <iostream>
Se pueden recibir cadenas
using namespace std; como parmetros del
int strlen(char cadena[]) { siguiente modo:
int i = 0;
while (cadena[i] != '\0') { tipo_retorno funcion(, char
i += 1; cadena[], ..)
}
return i;
}

int main() { No olvidemos que en las


char s[] = "Hola";
cout << strlen(s) << endl; cadenas el tamao se
}
return 0;
determina de acuerdo a la
posicin del carcter especial
'\0'
ST 202W - Lenguaje de Programacin
29/04/2016 9
Estructurado
Funciones con arreglos
#include <iostream>
Se pueden recibir arreglos
using namespace std;
como parmetros del
int suma(int numeros[], int n) {
int valor = 0; siguiente modo:
for (int i = 0; i < n; i++){
valor = valor + numeros[i]; tipo_retorno funcion(, int x[], int
} n, ..)
return valor;
}

int main() {
int arreglo[5] = {1, 2, 3, 4, 5};
Se debe incluir un
cout << suma(arreglo, 5) << endl;
return 0;
parmetro adicional
}
que indique el tamao
del arreglo!

ST 202W - Lenguaje de Programacin


29/04/2016 10
Estructurado
Funciones recursivas
#include <iostream>
Las funciones pueden
using namespace std;
llamarse
int factorial(int n) {
if(n <= 1) return 1; recursivamente.
return n * factorial(n - 1);
}

int main() { Recordemos los


cout << factorial(5) << endl;
return 0; conceptos de
}

recursividad:
o Casos base o de
terminacin
o Casos generales

ST 202W - Lenguaje de Programacin


29/04/2016 11
Estructurado
Ejercicios: Desarrolle una funcin
que
calcule el nmero de dgitos de un nmero dado (iterativa y
recursiva)

calcule la suma de dgitos de un nmero dado (iterativa y recursiva)

calcule la cantidad de divisores de un nmero dado (iterativa)

calcule el factorial (iterativa y recursiva)

calcule el combinatorio C(n, k) = n! / (n - k)! / k! (iterativa y


recursiva)

ST 202W - Lenguaje de Programacin


29/04/2016 12
Estructurado
Desarrolle un
procedimiento
que
reciba un entero n y
dibuje un fractal de n
niveles, como se
indica en la figura
(puede utilizar una
matriz auxiliar)

ST 202W - Lenguaje de Programacin


29/04/2016 13
Estructurado
Ejercicios para PC2
Este es un test con ejerciciossobre el uso de funciones en C++.
Puede resolver el testen forma colaborativa con sus
compaeros.
No obtendr puntos adicionales pero reforzarconceptos
del curso.
Puede revisar la seccin de preguntas frecuentes de la
plataforma:FAQ.
Si tiene alguna consultapor favor enve un correo a
rpalaciosr@uni.edu.pe

http://hr.gs/st202ejercicios1
http://hr.gs/pc2x
ST 202W - Lenguaje de Programacin
29/04/2016 14
Estructurado

You might also like