Mecanismo para aprender a programar en castellano · PASO DE PARÁMETROS En la mayoría de los...

31
Mecanismo para aprender a programar en castellano

Transcript of Mecanismo para aprender a programar en castellano · PASO DE PARÁMETROS En la mayoría de los...

Page 1: Mecanismo para aprender a programar en castellano · PASO DE PARÁMETROS En la mayoría de los lenguajes hay dos formas de pasar las variables a una función: por valor o por referencia.

Mecanismo para aprender a programar en castellano

Page 2: Mecanismo para aprender a programar en castellano · PASO DE PARÁMETROS En la mayoría de los lenguajes hay dos formas de pasar las variables a una función: por valor o por referencia.

DEFINIR VARIABLES DEFINIR num Como Entero

Definir Res como Real

Definir Nombre como Cadena

Definir becario, seguir como Logico

Page 3: Mecanismo para aprender a programar en castellano · PASO DE PARÁMETROS En la mayoría de los lenguajes hay dos formas de pasar las variables a una función: por valor o por referencia.

LEER Y ESCRIBIR ESCRIBIR “Introduzca su edad”

Leer Edad

Page 4: Mecanismo para aprender a programar en castellano · PASO DE PARÁMETROS En la mayoría de los lenguajes hay dos formas de pasar las variables a una función: por valor o por referencia.

ASIGNACIÓN Se utiliza para asignar valores a variables.

Almacena un valor determinado en una posición de memoria referenciada por la variable.

Ejemplos:

A 16;

Cadena “Hola”

B A + 1;

Page 5: Mecanismo para aprender a programar en castellano · PASO DE PARÁMETROS En la mayoría de los lenguajes hay dos formas de pasar las variables a una función: por valor o por referencia.

SENTENCIA SELECTIVA

SI (edad >= 18) ENTONCES

Escribe “Mayor de edad”

FIN-SI

SI condición ENTONCESAccionesFIN-SI

Page 6: Mecanismo para aprender a programar en castellano · PASO DE PARÁMETROS En la mayoría de los lenguajes hay dos formas de pasar las variables a una función: por valor o por referencia.

SELECTIVA DOBLE

SI (edad >= 18)

Escribe “Mayor de edad”

SINO

Escribe “Menor de edad”

FIN-SI

SI condición ENTONCESAcciones_1

SINOAcciones_2

FIN-SI

Page 7: Mecanismo para aprender a programar en castellano · PASO DE PARÁMETROS En la mayoría de los lenguajes hay dos formas de pasar las variables a una función: por valor o por referencia.

Selectiva multiple

Segun <variable> Hacer<número1>: <instrucciones><número2>,<número3>: <instrucciones><...>De Otro Modo: <instrucciones>

FinSegun

Page 8: Mecanismo para aprender a programar en castellano · PASO DE PARÁMETROS En la mayoría de los lenguajes hay dos formas de pasar las variables a una función: por valor o por referencia.

Ejemplo//Imprmir menu en pantalla con 3 opciones

Escribir “Introduzca un valor del menu” ;

Leer valor;

Según valor Hacer1: <instrucciones>2:<instrucciones>3: <...>De Otro Modo: <instrucciones>

FinSegun

Page 9: Mecanismo para aprender a programar en castellano · PASO DE PARÁMETROS En la mayoría de los lenguajes hay dos formas de pasar las variables a una función: por valor o por referencia.

ESTRUCTURAS REPETITIVAS

Page 10: Mecanismo para aprender a programar en castellano · PASO DE PARÁMETROS En la mayoría de los lenguajes hay dos formas de pasar las variables a una función: por valor o por referencia.

BUCLE MIENTRAS

Se repite mientras se cumpla la condición

Mientras (Condición) HacerSentencias

Fin Mientras

Page 11: Mecanismo para aprender a programar en castellano · PASO DE PARÁMETROS En la mayoría de los lenguajes hay dos formas de pasar las variables a una función: por valor o por referencia.

Ejmplo Bucle Mientras:Algoritmo Numeros

Definir A como Entero

A 1;

MIENTRAS (A< 4)

Escribir A

A A +1

FIN_MIENTRAS

FinAlgoritmo

A<4?

A<4Escribir A

A A +1

Page 12: Mecanismo para aprender a programar en castellano · PASO DE PARÁMETROS En la mayoría de los lenguajes hay dos formas de pasar las variables a una función: por valor o por referencia.

Mientras controlado por centinela

Algoritmo BucleMientrasCentinela (10 iteraciones)Definir Salir como LogicoDefinir contador Como Enterocontador <- 1Salir <- FalsoMientras No(Salir) Hacer

Escribir "Iteracion numero ", contadorcontador <- contador + 1Si contador = 11 entonces

Salir <- VerdaderoFinSi

Fin MientrasFinAlgoritmo

Page 13: Mecanismo para aprender a programar en castellano · PASO DE PARÁMETROS En la mayoría de los lenguajes hay dos formas de pasar las variables a una función: por valor o por referencia.

Mientras controlado por contadorAlgoritmo BucleMientras

Definir contador Como Entero

contador <- 1

Mientras (contador <=10) Hacer

Escribir "Iteracion numero ", contador

contador <-contador + 1

Fin Mientras

FinAlgoritmo

Page 14: Mecanismo para aprender a programar en castellano · PASO DE PARÁMETROS En la mayoría de los lenguajes hay dos formas de pasar las variables a una función: por valor o por referencia.

BUCLE PARA

PARA Var=Vinic HASTA Vfin REPITEInstrucciones

FINPARA

Page 15: Mecanismo para aprender a programar en castellano · PASO DE PARÁMETROS En la mayoría de los lenguajes hay dos formas de pasar las variables a una función: por valor o por referencia.

PSINT: Tabla del 2

Page 16: Mecanismo para aprender a programar en castellano · PASO DE PARÁMETROS En la mayoría de los lenguajes hay dos formas de pasar las variables a una función: por valor o por referencia.

Arrays (varios elementos)Dimension array(10);

array (1,2,3,4,5,6,7,8,9,10);

Page 17: Mecanismo para aprender a programar en castellano · PASO DE PARÁMETROS En la mayoría de los lenguajes hay dos formas de pasar las variables a una función: por valor o por referencia.

Imprimir arrayDimension array(10);

PARA i=1 HASTA 10

array(i) = i;

FINPARA

PARA i=1 HASTA 10

Escribe array(i);

FINPARA

Page 18: Mecanismo para aprender a programar en castellano · PASO DE PARÁMETROS En la mayoría de los lenguajes hay dos formas de pasar las variables a una función: por valor o por referencia.

ORDENAR ARRAY: BURBUJAAlgoritmo Burbuja

Definir i, j, aux_elem, mov Como EnteroDimension array[10]Escribir "El vector sin ordenar:"PARA i=1 HASTA 10 HACER

array[i] <- azar(100)Escribir array[i]

FinParaPARA i=1 HASTA 10 HACER

PARA j=2 hasta 10 HACER

SI (array[j] <array[j-1]) ENTONCES// si el elemento anterior es mayor, hacemos el cambioaux_elem = array[j];array[j] = array[j-1];Array[j-1] = aux_elem;

FINSIFINPARA

FINPARAEscribir "El vector ordenado:"PARA i=1 HASTA 10 HACER

Escribir array[i]FinPara

FinAlgoritmo

Page 19: Mecanismo para aprender a programar en castellano · PASO DE PARÁMETROS En la mayoría de los lenguajes hay dos formas de pasar las variables a una función: por valor o por referencia.

FUNCIONES

SUBRUTINAS

Page 20: Mecanismo para aprender a programar en castellano · PASO DE PARÁMETROS En la mayoría de los lenguajes hay dos formas de pasar las variables a una función: por valor o por referencia.

SUBPROCESOS En muchos casos, nos encontraremos con tareas que

tenemos que repetir varias veces en distintos puntos de nuestro programa.

Un subproceso es una porción de código que realiza una tarea concreta, como mostrar un mensaje de error o hacer un cálculo.

Hay dos tipos de subrutinas: funciones y subprocesos

Las funciones devuelven un valor.

Los subprocesos no devuelven valor.

Page 21: Mecanismo para aprender a programar en castellano · PASO DE PARÁMETROS En la mayoría de los lenguajes hay dos formas de pasar las variables a una función: por valor o por referencia.
Page 22: Mecanismo para aprender a programar en castellano · PASO DE PARÁMETROS En la mayoría de los lenguajes hay dos formas de pasar las variables a una función: por valor o por referencia.

FUNCIÓN Una función es un conjunto de líneas de código que

realizan una tarea específica y retorna un valor.

Las funciones pueden tomar parámetros como entrada que modifiquen su funcionamiento.

El programa principal llama a la función.

Una función tiene tres componentes importantes:

los parámetros: son los valores que recibe la función como entrada

el código de la función, que son las operaciones que hace la función; y

el resultado (o valor de retorno), que es el valor final que entrega la función.

Page 23: Mecanismo para aprender a programar en castellano · PASO DE PARÁMETROS En la mayoría de los lenguajes hay dos formas de pasar las variables a una función: por valor o por referencia.

FUNCIÓN SUMAFuncion res = Suma(x,y)

res = x+y

FinFuncion

Page 24: Mecanismo para aprender a programar en castellano · PASO DE PARÁMETROS En la mayoría de los lenguajes hay dos formas de pasar las variables a una función: por valor o por referencia.

FUNCION POTENCIAFuncion res = Potencia(b,e)

res = b^e;

FinFuncion

Page 25: Mecanismo para aprender a programar en castellano · PASO DE PARÁMETROS En la mayoría de los lenguajes hay dos formas de pasar las variables a una función: por valor o por referencia.

Función FactorialFuncion fact = Factorial(n)

fact=1

Para i=1 hasta n hacer

fact = fact*i

FinPara

FinFuncion

Page 26: Mecanismo para aprender a programar en castellano · PASO DE PARÁMETROS En la mayoría de los lenguajes hay dos formas de pasar las variables a una función: por valor o por referencia.

EJERCICICIOS DE FUNCIONES Funcion Cuadrado, Doble, Triple

Funcion Cubo

Funcion Euroconversor

Funcion Maximo que devuelva el mayor de dos valores.

Funcion Minimo que devuelva el menor de dos valores

Funcion Promedio

Funcion Residuo: devuelve el resto de la división entera

Funcion SumaCuadrados

Truncar: quitar la parte decimal a un real

Page 27: Mecanismo para aprender a programar en castellano · PASO DE PARÁMETROS En la mayoría de los lenguajes hay dos formas de pasar las variables a una función: por valor o por referencia.

PASO DE PARÁMETROS En la mayoría de los lenguajes hay dos formas

de pasar las variables a una función: por valor o por referencia.

POR REFERENCIA: significa que se pasa la posición de memoria donde esta guardada la variable, por lo que la función puede saber cuánto vale, pero además puede modificarla de cualquier manera.

POR VALOR: significa que la función (o subrutina) recibe sólo una copia del valor que tiene la variable, o sea que no la puede modificar.

Page 28: Mecanismo para aprender a programar en castellano · PASO DE PARÁMETROS En la mayoría de los lenguajes hay dos formas de pasar las variables a una función: por valor o por referencia.

Por REFERENCIA: modifica!Funcion Triplicar (num por referencia)

num <- num*3 // modifica la variable triplicando su valor

FinFuncion

Algoritmo Prueba

Definir num como Entero

Escribir “Introduzca un entero”

Leer num

Escribir “El triple es: ”, Triplicar(num)

FinAlgoritmo

num

Page 29: Mecanismo para aprender a programar en castellano · PASO DE PARÁMETROS En la mayoría de los lenguajes hay dos formas de pasar las variables a una función: por valor o por referencia.

SUBPROCESOS Porción de código que realiza una tarea, pero no

devuelve un valor.

SubProceso Saludar

Escribir "Hola mundo!"

FinSubProceso

SubProceso Error

Escribir “Se produjo un error”

FinSubProceso

Page 30: Mecanismo para aprender a programar en castellano · PASO DE PARÁMETROS En la mayoría de los lenguajes hay dos formas de pasar las variables a una función: por valor o por referencia.

PROGRAMACION ESTRUCTURADA La programación estructurada es un paradifma de

programación orientado a mejorar la claridad, calidad y tiempo de desarrollo de un programa recurriendo únicamente a subrutinas y tres estructuras básicas: secuencia, selección (if y switch) e iteración (bucles for y while); asimismo, se considera innecesario y contraproducente el uso de la instrucción de transferencia incondicional (GOTO), que podría conducir a código espagueti, mucho más difícil de seguir y de mantener, y fuente de numerosos errores de programación.

Page 31: Mecanismo para aprender a programar en castellano · PASO DE PARÁMETROS En la mayoría de los lenguajes hay dos formas de pasar las variables a una función: por valor o por referencia.

PROGRAMACION MODULAR La programación modular es un paradigma de

programación que consiste en dividir un programa en módulos o subprogramas con el fin de hacerlo más legible y manejable.

Se presenta históricamente como una evolución de la programación estructurada para solucionar problemas de programación más grandes y complejos de lo que esta puede resolver.