Está en la página 1de 46

Conceptos bsicos de programacin

Mtro. Jos Antonio Rubio Gonzlez

Lenguaje
Sistema para la comunicacin de conceptos que utiliza sonidos hablados o representados con un sistema de smbolos. Usualmente est estructurado con gramtica y un sistema de escritura como un alfabeto o silabario.

Mtro. Jos Antonio Rubio Gonzlez

Lenguaje de programacin

Conjunto de reglas sintcticas y semnticas que por medio de sentencias permiten al programador resolver problemticas con la computadora.

Mtro. Jos Antonio Rubio Gonzlez

Algoritmo

Conjunto de pasos a seguir para resolver un problema.


Caractersticas:
Precisin pasos claros y precisos Determinismo - siempre debe arrojar los mismos resultados ante las mismas entradas. Finitud longitud finita

Mtro. Jos Antonio Rubio Gonzlez

Ejemplo algoritmo cotidiano


Cambiar una llanta
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Inicio. Traer gato. Levantar el coche con el gato. Aflojar tornillos de las llantas. Sacar los tornillos de las llantas. Quitar la llanta. Poner la llanta de repuesto. Poner los tornillos. Apretar los tornillos. Bajar el gato. Fin

Mtro. Jos Antonio Rubio Gonzlez

Ejemplo Algoritmo para el calculo del promedio de 3 valores enteros dados.


1. 2. 3. 4. 5. Pedir 3 valores enteros Obtener 3 valores enteros Sumar los 3 valores enteros Dividir la suma / 3 Presentar el promedio

Mtro. Jos Antonio Rubio Gonzlez

Programa

Conjunto de instrucciones codificadas en un lenguaje especfico, que ejecuta la computadora para llegar a un fin u obtener un resultado

Mtro. Jos Antonio Rubio Gonzlez

Fases de creacin de un programa


Definir problema

Anlisis del problema


Diseo del algoritmo Codificacin Prueba y depuracin Documentacin Mantenimiento
Mtro. Jos Antonio Rubio Gonzlez

Definicin del problema


Esta fase est dada por el enunciado del problema, el cual requiere una definicin clara y precisa. Es importante que se entienda perfectamente lo que desea que realice la computadora; para poder continuar con la siguiente etapa.

Mtro. Jos Antonio Rubio Gonzlez

Anlisis del problema


Una vez que se ha comprendido lo que se desea que la computadora haga, la etapa de anlisis es muy importante ya que en este se identifican tres factores indispensables: Que informacin se necesita para obtener el resultado deseado (datos de entrada) Que informacin que se desea producir (datos de salida) Los mtodos y frmulas que se necesitan para procesar los datos y producir esa salida

Mtro. Jos Antonio Rubio Gonzlez

Diseo del algoritmo


La etapa de diseo se centra en desarrollar el algoritmo basndonos en las especificaciones de la etapa del anlisis, un algoritmo lo podemos representar mediante el diagrama de flujo o el pseudocdigo.

Mtro. Jos Antonio Rubio Gonzlez

Codificacin
En la etapa de codificacin se transcribe el pseudocdigo definido en la etapa de diseo en cdigo de un lenguaje de programacin, es decir un programa reconocido por la computadora, a este cdigo se le conoce como cdigo fuente. Por ejemplo el lenguaje C es un lenguaje de programacin y es el que utilizaremos en el presente curso.

Mtro. Jos Antonio Rubio Gonzlez

Prueba y depuracin
Los errores humanos dentro de la programacin de computadoras son muchos y aumentan considerablemente con la complejidad del problema. El proceso de identificar y eliminar errores, para dar paso a una solucin sin errores se le llama depuracin. Existen dos tipos: la pruebas de sintaxis y las pruebas de lgica. Las pruebas de sintaxis se ejecutan primero y son las mas sencillas, esta prueba la realiza el compilador del programa cada vez que se ejecuta el programa hasta que el cdigo no presente errores es decir que la sintaxis que requiere el lenguaje sea la correcta, de lo contrario el propio compilador te va mostrando los errores encontrados para que los modifiques y se pueda ejecutar el cdigo, estos errores pueden ser falta de parntesis, o puntos y comas o palabras reservadas mal escritas. Las pruebas de lgica son las ms complicadas ya que estas la realiza el programador, consiste en la captura de diferentes valores, y revisar que el resultado sea el deseado, es decir el programador tendra que modificar el cdigo hasta que el programa funciones correctamente.

Mtro. Jos Antonio Rubio Gonzlez

Documentacin
Es la gua o comunicacin escrita es sus variadas formas, ya sea en enunciados, procedimientos, dibujos o diagramas. A menudo un programa escrito por una persona, es usado por otra. Por ello la documentacin sirve para ayudar a comprender o usar un programa o para facilitar futuras modificaciones (mantenimiento). Tipos de documentacin Interna: Es aquella que se crea en el mismo cdigo, puede ser mediante comentarios. Externa: Es aquella que se escribe en manuales, totalmente ajena a la aplicacin en si. Tambin puede ser la ayuda en el mismo software.

Mtro. Jos Antonio Rubio Gonzlez

Mantenimiento
Se lleva acabo despus de terminado el programa, cuando se detecta que es necesario hacer algn cambio, ajuste o complementacin al programa para que siga trabajando de manera correcta. Para poder realizar este trabajo se requiere que el programa este correctamente documentado. Todos los programas tienen actualizaciones, por lo que surgen versiones diferentes.
Mtro. Jos Antonio Rubio Gonzlez

LOS DATOS Y LAS OPERACIONES BSICAS

Mtro. Jos Antonio Rubio Gonzlez

Identificador
Los identificadores son nombres que se utilizan para nombrar las constantes, variables, funciones y otros objetos definidos por el programador. Un identificador es una secuencia de caracteres que pueden ser de cualquier longitud, cada lenguaje de programacin tiene sus propias caractersticas de tamao. El programador tiene libertad para darle cualquier nombre a un identificador, siguiendo las siguientes reglas :
Debe comenzar con una letra (A a Z) maysculas o minsculas y no puede contener espacios en blancos. En lenguaje C el carcter subrayado _ es considero como letra, por lo que se puede utilizar como primer carcter. Lenguaje C distingue maysculas de minsculas. Letras dgitos y caracteres subrayados estn permitidos despus del primer carcter. No se puede utilizar una palabra reservada como identificador, sin embargo, los identificadores estndar se pueden redefinir.

Identificadores vlidos:
NOT, year2008, Base_1 Identificadores no vlidos: nmero, ?precio, ao, 2007, 4semestre

Mtro. Jos Antonio Rubio Gonzlez

Notas importantes: no se pueden utilizar las palabras reservadas como identificadores. El lenguaje C distingue maysculas y minsculas en los caracteres.

Mtro. Jos Antonio Rubio Gonzlez

Tipos de datos

DATOS

Mtro. Jos Antonio Rubio Gonzlez

NUMRICOS
Almacenan nmeros y con ellos podemos realizar operaciones aritmticas. A su vez, pueden ser:
ENTEROS: son todos los nmeros positivos o negativos. Ejemplo: 123, 761, 0, -1 REALES: son todos los nmeros decimales. Ejemplo: -0.123, 68.9
Mtro. Jos Antonio Rubio Gonzlez

ALFANUMRICOS
Almacenan caracteres alfanumricos. Pueden ser:
LETRAS: A-Z CARACTERES ESPECIALES: guiones, parntesis, signos de puntuacin, etc. NMEROS: con ellos no se pueden realizar operaciones aritmticas Una mezcla de letras, caracteres especiales y nmeros

Mtro. Jos Antonio Rubio Gonzlez

BOOLEANOS O LGICOS
Slo pueden tener dos valores: verdad o falso. Estos datos no pueden leerse como datos, pero pueden imprimirse. Se forman a partir de los operadores relacionales y lgicos.

Mtro. Jos Antonio Rubio Gonzlez

OPERADORES
Todos los smbolos que representan enlaces entre cada uno de los argumentos que intervienen en una operacin se llaman operadores, y se utilizan para construir expresiones. Pueden ser:
Relacionales o condicionales Aritmticos Alfanumricos Lgicos

Mtro. Jos Antonio Rubio Gonzlez

Relacionales o condicionales
Se utilizan para formar expresiones booleanas, es decir, expresiones que al ser evaluadas producen un valor booleano: verdad o falso.
Signo < = > <= >= Significado Menor que Igual Mayor que Menor o igual que Mayor o igual que

<>

Distinto
Mtro. Jos Antonio Rubio Gonzlez

Operadores relacionales - Ejemplos


Comparacin
25 <= 25 25 <> 25 25 <> 4

Resultados
Verdad Falso Verdad

A < B AAAA > AA


B > AAA AB > AAAA C < c 2 < 12

Verdad Verdad
Verdad Verdad Verdad Falso

Cuando se comparan caracteres alfanumricos, se hace uno a uno, de izquierda a derecha. Si las variables son de diferente longitud, pero exactamente iguales hasta el ultimo carcter del mas corto, entonces se considera que el mas corto es el menor. Solo son iguales dos datos alfanumricos si son iguales su longitud y sus componentes. Las letras minsculas tienen mayor valor que las maysculas.
Mtro. Jos Antonio Rubio Gonzlez

Aritmticos
Para tratar los nmeros se utilizan los operadores aritmticos, que junto con las variables numricas forman expresiones aritmticas.
Signo + Significado Suma

Expresin
12*12 12^2 123 DIV 4

Resultado
144 144 30

*
/ ^ DIV MOD

Resta Multiplicacin
Divisin real Potencia Divisin entera Residuo de la divisin

12 MOD 5

Mtro. Jos Antonio Rubio Gonzlez

Alfanumricos
Este operador se utiliza para unir datos alfanumricos, esta operacin se llama CONCATENAR.
Signo + Expresiones Pseudo + cdigo 3 + . + 1416 Significado Concatenacin Resultado Pseudocdigo 3.1416

De igual forma podemos concatenar expresiones del tipo: A = Hola, B = Qu tal? A + B = Hola, Qu tal?

Mtro. Jos Antonio Rubio Gonzlez

Lgicos o booleanos
Combinan sus operados de acuerdo con las reglas de algebra de Boole con el fin de producir un nuevo valor que se convierta en el valor de la expresin
Signo OR AND NOT Significado Suma lgica Producto lgico Negacin

OR u O: es un operador binario, afecta a dos operadores. La expresin que forma es cierta cuando al menos uno de los dos operandos es cierto. Es el operador lgico de disyuncin. AND o Y: es un operador binario. La expresin formada es cierta cuando ambos operandos son ciertos al mismo tiempo. Es el operador lgico de conjuncin NOT o NO: es un operador unario. Afecta a la expresin cambiando su estado lgico; si es verdad lo transforma en falso; y al revs. Mtro. Jos Antonio Rubio Gonzlez

Tablas de verdad

p V V

q V F

p&&q V F

p||q V V

F
F

V
F

F
F

V
F

Mtro. Jos Antonio Rubio Gonzlez

Variables
Se considera variable a una zona de memoria referenciada por un nombre de variable, donde se puede almacenar el valor de un dato, que puede cambiarse cuando lo deseemos. El nombre de la variable es elegido por el usuario. Una variable no es un dato, sino un rea de memoria que contendr un dato.

Mtro. Jos Antonio Rubio Gonzlez

Definicin de Variables
Para que estn bien definidas las variables, hay que especificar:
Su nombre El tipo de dato: numrico, alfanumrico o booleano El valor inicial que tomara: inicializacin.

Mtro. Jos Antonio Rubio Gonzlez

Declaracin de variables
Declaracin:

tipoDeDato nombre; Ejemplos vlidos: entero edad; real sueldo; caracter sexo;

Mtro. Jos Antonio Rubio Gonzlez

Constantes
Se llama constante a toda posicin de memoria, referenciada por un nombre de constante, donde se almacena un valor que no puede cambiarse o permanece invariable a lo largo del proceso. Las constantes pueden ser:
Enteras Reales De carcter o alfanumricas

Mtro. Jos Antonio Rubio Gonzlez

Declaracin de Constantes
Declaracin: #define nomConstante valor Ejemplos: #define MAX 100 #define N 25 #define Const 600

Mtro. Jos Antonio Rubio Gonzlez

Algoritmo
Un algoritmo es la descripcin exacta y sin ambigedades de la secuencia de pasos elementales a aplicar para, a partir de los datos del problema, encontrar la solucin buscada.

Mtro. Jos Antonio Rubio Gonzlez

Algoritmo
Todo lo que se ha de hacer debe estar en forma detallada, paso a paso. A cada uno de estos pasos en un algoritmo se le llama sentencia o instruccin. Una instruccin es una combinacin de palabras, variables, constantes y smbolos que obedeciendo a la sintaxis propia del lenguaje son utilizados para realizar una determinada accin
Mtro. Jos Antonio Rubio Gonzlez

Tipos de algoritmos
Entre los distintos tipos algoritmos se encuentran: de

Diagramas de flujo u ordinogramas Tablas de decisin Pseudocdigo

Mtro. Jos Antonio Rubio Gonzlez

Diagrama de flujo
Utiliza smbolos grficos para su resolucin

Mtro. Jos Antonio Rubio Gonzlez

Pseudocdigo
Describe un algoritmo utilizando una mezcla de frases en lenguaje comn, instrucciones de lenguaje de programacin y palabras claves que definen las estructuras bsicas. Para la realizacin del pseudocdigo lo dividiremos en 3 partes:
Inicial Cuerpo del programa Final.

Mtro. Jos Antonio Rubio Gonzlez

Estructura de un algoritmo
LA ESTRUCTURA DE UN ALGORITMO SIRVE PARA ORGANIZAR LOS ELEMENTOS QUE APARECEN EN L, BSICAMENTE SE COMPONE DE TRES SECCIONES: CABECERA. (DESCRIPCIN O NOMBRE DEL ALGORITMO) DECLARACIONES. CUERPO (INSTRUCCIONES).

DESCRIPCIN DEL ALGORITMO INICIO DEFINICIN DE CONSTANTES DECLARACIN DE VARIABLES CUERPO DEL ALGORITMO FIN

Mtro. Jos Antonio Rubio Gonzlez

Palabras usadas en Pseudocdigo


Pseudocdigo
Inicio Fin Imprimir Leer Entero Real

Lenguaje c
{ } printf scanf int float

Descripcin
Inicio de programa o bloque Fin de programa o bloque Imprime en pantalla Lee un dato Tipo de dato entero Tipo de dato real

Carcter
Si Sino segn_sea caso

char
if else switch case

Tipo de dato caracter


Estructura selectiva Parte falsa de la estructura selectiva Estructura selectiva mltiple Si se cumple el caso

Mtro. Jos Antonio Rubio Gonzlez

Palabras usadas en Pseudocdigo


Pseudocdigo Lenguaje c Descripcin

interrumpir caso contrario


desde mientras hacer leercad imprimircad raizcuad abs nada

break default
for while do gets puts sqrt abs void

Interrumpir la ejecucin estructura Ninguna opcin de la selectiva mltiple


Estructura repetitiva Estructura repetitiva Estructura repetitiva Lee una cadena de caracteres Imprime una cadena de caracteres Calcula la raz cuadrada Calcula el valor absoluto Valor nulo

Mtro. Jos Antonio Rubio Gonzlez

Palabras usadas en Pseudocdigo


Pseudocdigo Lenguaje c Descripcin

regresa

return

Regresa valor de una funcin

y O

=
&& ||
!=

Operador de asignacin
And (y) lgica Or (O) lgica Diferente de

<> ,
=

==

Igual que

Mtro. Jos Antonio Rubio Gonzlez

Ejemplo de un Algoritmo
Calcular el determinante de una matriz cuadrada 2x2 en la cual todos los coeficientes son enteros

ANLISIS DEL PROBLEMA


Variables de entrada: Entero A,B,C,D Variables de salida: Entero E Proceso E= (A*D)-(C*D)

Ejemplo de pseudocdigo
principal() inicio Imprimir "Calcula el determinante de una matriz 2x2" Imprimir "dame el valor de A"; Leer A; Imprimir "dame el valor de B"; Leer B; Imprimir "dame el valor de C"; Leer C; Imprimir "dame el valor de D"; Leer D; E<-(A*D-C*B); Imprimir "El valor del determinante es ",E; Fin

Diagrama de flujo

También podría gustarte