Está en la página 1de 44

Conceptos básicos de

programación

Mtro. José Antonio Rubio González


Lenguaje de programación

Conjunto de reglas sintácticas y


semánticas que por medio de
sentencias permiten al programador
resolver problemáticas con la
computadora.

Mtro. José Antonio Rubio González


Algoritmo

Conjunto de pasos a seguir para resolver un


problema.

Características:
Precisión – pasos claros y precisos
Determinismo - siempre debe arrojar los mismos
resultados ante las mismas entradas.
Finitud – longitud finita

Mtro. José Antonio Rubio González


Ejemplo

Algoritmo para el calculo del


promedio de 3 valores dados.

1. Pedir 3 valores enteros


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

Mtro. José Antonio Rubio González


Programa

Conjunto de instrucciones codificadas en


un lenguaje específico, que ejecuta la
computadora para llegar a un fin u
obtener un resultado

Mtro. José Antonio Rubio González


Fases de la creación de un
programa

 Definición del problema


 Análisis del problema
 Diseño de algoritmo
 Codificación
 Prueba y depuración
 Documentación
 Mantenimiento

Mtro. José Antonio Rubio González


Definición del problema

Esta fase está dada por el


enunciado del problema, el cual
requiere una definición 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 González


Análisis del problema
Una vez que se ha comprendido lo que se
desea que la computadora haga, la etapa
de análisis es muy importante ya que en
este se identifican tres factores
indispensables:
Que información se necesita para obtener
el resultado deseado (datos de entrada)
Que información que se desea producir
(datos de salida)
Los métodos y fórmulas que se necesitan
para procesar los datos y producir esa
salida

Mtro. José Antonio Rubio González


Diseño del algoritmo

La etapa de diseño se centra en


desarrollar el algoritmo basándonos
en las especificaciones de la etapa
del análisis, un algoritmo lo
podemos representar mediante el
diagrama de flujo o el
pseudocódigo.

Mtro. José Antonio Rubio González


Codificación

En la etapa de codificación se transcribe


el pseudocódigo definido en la etapa de
diseño en código de un lenguaje de
programación, es decir un programa
reconocido por la computadora, a este
código se le conoce como código fuente.
Por ejemplo el lenguaje “C” es un
lenguaje de programación y es el que
utilizaremos en el presente curso.

Mtro. José Antonio Rubio González


Prueba y depuración
Los errores humanos dentro de la programación de
computadoras son muchos y aumentan considerablemente con la
complejidad del problema. El proceso de identificar y eliminar
errores, para dar paso a una solución sin errores se le llama
depuración.
Existen dos tipos: la pruebas de sintaxis y las pruebas de lógica.
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 código 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 código, estos errores pueden ser falta de paréntesis, o puntos
y comas o palabras reservadas mal escritas.
Las pruebas de lógica son las más 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 tendría que modificar el código hasta que el
programa funciones correctamente.

Mtro. José Antonio Rubio González


Documentación
Es la guía o comunicación 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 documentación sirve para
ayudar a comprender o usar un programa o para
facilitar futuras modificaciones (mantenimiento).

Tipos de documentación
Interna: Es aquella que se crea en el mismo código,
puede ser mediante comentarios.
Externa: Es aquella que se escribe en manuales,
totalmente ajena a la aplicación en si. También
puede ser la ayuda en el mismo software.

Mtro. José Antonio Rubio González


Mantenimiento

Se lleva acabo después de terminado el


programa, cuando se detecta que es
necesario hacer algún cambio, ajuste o
complementación 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 González


LOS DATOS Y LAS
OPERACIONES BÁSICAS

Mtro. José Antonio Rubio González


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 programación tiene sus propias
características de tamaño.
El programador tiene libertad para darle cualquier nombre a un
identificador, siguiendo las siguientes reglas :
– Debe comenzar con una letra (A a Z) mayúsculas o minúsculas y no puede contener
espacios en blancos. En lenguaje C el carácter subrayado “_” es considero como letra,
por lo que se puede utilizar como primer carácter.
– Lenguaje C distingue mayúsculas de minúsculas.
– Letras dígitos y caracteres subrayados están permitidos después del primer carácter.
– No se puede utilizar una palabra reservada como identificador, sin embargo, los
identificadores estándar se pueden redefinir.

Identificadores válidos:
NOT, year2008, Base_1
Identificadores no válidos:
número, ?precio, año, 2007, 4semestre

Mtro. José Antonio Rubio González


Notas importantes:

 no se pueden utilizar las palabras reservadas


como identificadores.

 El lenguaje C distingue mayúsculas y


minúsculas en los caracteres.

Mtro. José Antonio Rubio González


Tipos de datos

DATOS

Mtro. José Antonio Rubio González


NUMÉRICOS

Almacenan números y con ellos


podemos realizar operaciones
aritméticas. A su vez, pueden ser:

– ENTEROS: son todos los números


positivos o negativos. Ejemplo: 123, -
761, 0, -1
– REALES: son todos los números
decimales. Ejemplo: -0.123, 68.9

Mtro. José Antonio Rubio González


ALFANUMÉRICOS

Almacenan caracteres alfanuméricos.


Pueden ser:

– LETRAS: A-Z
– CARACTERES ESPECIALES: guiones,
paréntesis, signos de puntuación, etc.
– NÚMEROS: con ellos no se pueden
realizar operaciones aritméticas
– Una mezcla de letras, caracteres
especiales y números

Mtro. José Antonio Rubio González


BOOLEANOS O LÓGICOS

Sólo 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 lógicos.

Mtro. José Antonio Rubio González


OPERADORES

Todos los símbolos que representan


enlaces entre cada uno de los
argumentos que intervienen en una
operación se llaman operadores, y se
utilizan para construir expresiones.
Pueden ser:
Relacionales o condicionales
Aritméticos
Alfanuméricos
Lógicos

Mtro. José Antonio Rubio González


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 González


Operadores relacionales - Ejemplos
Comparación Resultados
25 <= 25 Verdad
25 <> 25 Falso
25 <> 4 Verdad
«A» < «B» Verdad
«AAAA» > «AA» Verdad
«B» > «AAA» Verdad
«AB» > «AAAA» Verdad
«C» < «c» Verdad
«2» < «12» Falso
Cuando se comparan caracteres alfanuméricos, se hace uno a
uno, de izquierda a derecha. Si las variables son de
diferente longitud, pero exactamente iguales hasta el ultimo
carácter del mas corto, entonces se considera que el mas
corto es el menor. Solo son iguales dos datos alfanuméricos
si son iguales su longitud y sus componentes.
Las letras minúsculas tienen mayor valor que las mayúsculas.
Mtro. José Antonio Rubio González
Aritméticos
Para tratar los números se utilizan
los operadores aritméticos, que
junto con las variables numéricas
forman expresiones aritméticas.
Signo Significado
+ Suma Expresión Resultado
- Resta 12*12 144
* Multiplicación 12^2 144
/ División real 123 DIV 4 30
^ Potencia 12 MOD 5 2
DIV División entera
MOD Residuo de la
división

Mtro. José Antonio Rubio González


Alfanuméricos
Este operador se utiliza para unir
datos alfanuméricos, esta operación
se llama CONCATENAR.
Signo Significado
+ Concatenación

Expresiones Resultado
«Pseudo» + «código» «Pseudocódigo»
«3» + «.» + «1416» «3.1416»
De igual forma podemos concatenar expresiones del tipo:
A = «Hola, »
B = « ¿Qué tal?»
A + B = «Hola, ¿Qué tal?»

Mtro. José Antonio Rubio González


Lógicos 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 expresión
Signo Significado
OR Suma lógica
AND Producto lógico
NOT Negación

OR u O: es un operador binario, afecta a dos operadores.


La expresión que forma es cierta cuando al
menos uno de los dos operandos es cierto. Es el
operador lógico de disyunción.
AND o Y: es un operador binario. La expresión formada
es cierta cuando ambos operandos son ciertos al
mismo tiempo. Es el operador lógico de
conjunción
NOT o NO: es un operador unario. Afecta a la expresión
cambiando su estado lógico; si es verdad lo
transforma en falso; y al revés. Mtro. José Antonio Rubio González
Tablas de verdad

p q p&&q p||q
V V V V
V F F V
F V F V
F F F F

Mtro. José Antonio Rubio González


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 González


Definición de Variables

Para que estén bien definidas las


variables, hay que especificar:
– Su nombre
– El tipo de dato: numérico,
alfanumérico o booleano
– El valor inicial que tomara:
inicialización.

Mtro. José Antonio Rubio González


Declaración de variables

Declaración:
tipoDeDato nombre;

Ejemplos válidos:
entero edad; real sueldo; caracter
sexo;

Mtro. José Antonio Rubio González


Constantes

Se llama constante a toda posición 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 carácter o alfanuméricas

Mtro. José Antonio Rubio González


Declaración de Constantes

Declaración:
#define nomConstante valor
Ejemplos:
#define MAX 100
#define N 25
#define Const 600

Mtro. José Antonio Rubio González


Algoritmo

Un algoritmo es la descripción
exacta y sin ambigüedades de la
secuencia de pasos elementales a
aplicar para, a partir de los datos del
problema, encontrar la solución
buscada.

Mtro. José Antonio Rubio González


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
instrucción.
Una instrucción es una combinación de
palabras, variables, constantes y
símbolos que obedeciendo a la sintaxis
propia del lenguaje son utilizados para
realizar una determinada acción

Mtro. José Antonio Rubio González


Tipos de algoritmos

Entre los distintos tipos de


algoritmos se encuentran:
– Diagramas de flujo u ordinogramas
– Tablas de decisión
– Pseudocódigo

Mtro. José Antonio Rubio González


Diagrama de flujo
Utiliza símbolos gráficos para su resolución

Mtro. José Antonio Rubio González


Pseudocódigo

Describe un algoritmo utilizando una


mezcla de frases en lenguaje común,
instrucciones de lenguaje de
programación y palabras claves que
definen las estructuras básicas.
Para la realización del pseudocódigo lo
dividiremos en 3 partes:
– Inicial
– Cuerpo del programa
– Final.

Mtro. José Antonio Rubio González


Estructura de un algoritmo
LA ESTRUCTURA DE UN ALGORITMO SIRVE PARA
ORGANIZAR LOS ELEMENTOS QUE APARECEN EN ÉL,
BÁSICAMENTE SE COMPONE DE TRES SECCIONES:

– CABECERA. (DESCRIPCIÓN O NOMBRE DEL ALGORITMO)


– DECLARACIONES.
– CUERPO (INSTRUCCIONES).

DESCRIPCIÓN DEL ALGORITMO

INICIO
DEFINICIÓN DE CONSTANTES
DECLARACIÓN DE VARIABLES
CUERPO DEL ALGORITMO
FIN

Mtro. José Antonio Rubio González


Palabras usadas en Pseudocódigo

Pseudocódigo Lenguaje c Descripción


Inicio { Inicio de programa o bloque

Fin } Fin de programa o bloque

Imprimir printf Imprime en pantalla

Leer scanf Lee un dato

Entero int Tipo de dato entero

Real float Tipo de dato real

Carácter char Tipo de dato caracter

Si if Estructura selectiva

Sino else Parte falsa de la estructura selectiva

según_sea switch Estructura selectiva múltiple

caso case Si se cumple el caso

Mtro. José Antonio Rubio González


Palabras usadas en Pseudocódigo
Pseudocódigo Lenguaje c Descripción

interrumpir break Interrumpir la ejecución estructura


caso contrario default Ninguna opción de la selectiva múltiple
desde for Estructura repetitiva
mientras while Estructura repetitiva
hacer do Estructura repetitiva
leercad gets Lee una cadena de caracteres
imprimircad puts Imprime una cadena de caracteres
raizcuad sqrt Calcula la raíz cuadrada
abs abs Calcula el valor absoluto
nada void Valor nulo

Mtro. José Antonio Rubio González


Palabras usadas en Pseudocódigo

Pseudocódigo Lenguaje c Descripción

regresa return Regresa valor de una función


 = Operador de asignación
y && And (y) lógica
O || Or (O) lógica

<> , ≠ != Diferente de
= == Igual que

Mtro. José Antonio Rubio González


Ejemplo de un Algoritmo
«Calcular el determinante de una matriz cuadrada 2x2 en la cual
todos los coeficientes son enteros»
𝐴 𝐵
𝐶 𝐷

ANÁLISIS DEL PROBLEMA

Variables de entrada:
Entero A,B,C,D
Variables de salida:
Entero E
Proceso
E= (A*D)-(C*D)
Ejemplo de pseudocódigo
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