Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 45

TecNM Campus Las Choapas

Ingeniería en Sistemas Computacionales

FUNDAMENTOS DE PROGRAMACION
DATOS DEL DOCENTE
COMPETENCIA ESPECIFICA DE LA ASIGNATURA

Aplica algoritmos y lenguajes de programación para diseñar e implementar


soluciones a problemáticas del entorno.
FUNDAMENTOS DE PROGRAMACION
TEMARIO

UNIDAD I UNIDAD II
DISEÑO ALGORITMICO INTRODUCCION A LA
PROGRAMACION
1.1 Conceptos básicos.
2.1 Conceptos básicos.
1.2 Representación de algoritmos: gráfica
2.2 Características del lenguaje de programación.
y pseudocódigo.
2.3 Estructura básica de un programa.
1.3 Diseño de algoritmos.
2.4 Elementos del lenguaje: tipos de datos,
1.4 Diseño de funciones.
literales, constantes, variables, identificadores,
parámetros, operadores y salida de datos.
2.5 Traducción de un programa: compilación,
enlace, ejecución y errores.
FUNDAMENTOS DE PROGRAMACION
TEMARIO
UNIDAD III UNIDAD IV
CONTROL DE FLUJO ORGANIZACIÓN DE DATOS

3.1 Estructuras secuenciales. 4.1 Arreglos


3.2 Estructuras selectivas: simple, doble y múltiple. 4.2 Unidimensionales: conceptos básicos,
3.3 Estructuras iterativas: repetir mientras, hasta, desde. operaciones y aplicaciones.
4.3 Multidimensionales: conceptos básicos,
operaciones y aplicaciones.
4.4 Estructuras o registros.

UNIDAD V
MODULARIDAD

5.1 Declaración y uso de módulos.


5.2 Paso de parámetros o argumentos.
5.3 Implementación.
FUNDAMENTOS DE PROGRAMACION
ACTIVIDAD EXTRA CLASE

 Gestionar información sobre los conceptos básicos:


algoritmo, programa, programación, paradigmas de
programación, tipo de dato, constante, variable, operadores,
diagrama de flujo, seudocódigo y plasmarlos en un glosario.

 Gestionar información sobre los tipos de datos en un


lenguaje de programación y elaborar una tabla
FUNDAMENTOS DE PROGRAMACION

Unidad 1
CRITERIOS DE EVALUACION Y ACREDITACION:

Glosario 10%
Examen 30%
Investigación 20%
Ejercicios en el aula 40%
ACUERDOS Y/O COMPROMISOS

 RESPETO MUTUO.
 RESPETAR LOS HORARIOS ESTABLECIDOS.
 DURANTE LA CLASE PONER EL CELULAR
EN MODO VIBRACIÓN.
 GUARDAR SILENCIO DURANTE LA CLASE
 PONER ATENCION A QUIEN ESTE
HABLANDO
 NO DE CIR PALABRAS OBSCENAS
 PARTICIPACION ACTIVA
TRABAJOS INDIVIDUAL O EN EQUIPO

 HOJA DE PRESENTACIÓN.
 DESARROLLO DEL TEMA.
 FUENTES CONSULTADAS (mínimo 3 máximo 7)
UNIDAD

Asunto para trabajos digitales ISC U1A1 1RO A (AGB)

Grado y grupo

Iniciales de la Num. De Iniciales de su


carrera actividadd nombre
Formar profesionistas líderes, analíticos, críticos y creativos, con visión
estratégica y amplio sentido ético, capaces de diseñar, implementar y
administrar infraestructura computacional para aportar soluciones
innovadoras en beneficio de la sociedad, en un contexto global,
multidisciplinario y sustentable.

La Ingeniería de Sistemas es un campo de la ingeniería que se encarga del diseño, la programación, la implantación y el
mantenimiento de sistemas. Utiliza un enfoque interdisciplinario que permite estudiar y comprender la realidad, con el propósito
de implementar u optimizar sistemas complejos. La Ingeniería de Sistemas no construye productos tangibles, sino sistemas
abstractos mediante el uso de metodologías de la Ciencia de Sistemas. Algunas herramientas utilizadas por la Ingeniería de
Sistemas son Modelación y Simulación, Optimización, Sistemas Dinámicos,Análisis de Confiabilidad y Análisis de Decisiones.
INTRODUCCION

Hardware

S.O.
 De sistema (base) Controladores

Software Office
 De aplicación Reproductor de audio y video, etc

Permite el desarrollo de aplicaciones de


 De programación software
INTRODUCCION

Es importante aclarar que el Hardware por sí


mismo es incapaz de llevar adelante procesos
informáticos sin la acción conjunta de programas
creados por el hombre. A estos últimos se los
denomina genéricamente Software

 Periféricos de entrada
Clasificación
del  Periféricos de salida
hardware
 Periféricos mixtos
INTRODUCCION

Periféricos de Entrada: Son aquellos que traducen datos, señales y programas que los seres
humanos pueden comprender, a formatos que la computadora pueda procesar; es decir, interpreta la
información y permite la comunicación entre las personas y las computadoras

 Teclado
 Mouse o ratón
 Scanner
 Joystick
 Micrófono
 Lector de códigos de
barras
 Lápiz óptico
 Cámara web
SOFTWARE DE APLICACIÓN EJECUTIVO
SOFTWARE DE APLICACIÓN EJECUTIVO

Periféricos de Entrada/Salida o Mixtos


Son aquellos dispositivos que pueden operar de  Discos Rígidos
ambas formas: tanto de entrada como de salida.  Disqueteras
Típicamente, se puede mencionar  Memoria Flash
como periféricos mixtos o de Entrada/Salida.  Tarjeta de Red
 Modems
 Salida de vídeo
 Pantalla Táctil o monitor Clásico
 Impresoras multifunción
 Interfases y Puertos USB
INTRODUCCION

SOFTWARE Es desarrollado mediante distintos lenguajes de


El Software es el soporte lógico e inmaterial que permite que la programación, que permiten controlar el
computadora pueda desempeñar tareas inteligentes, dirigiendo comportamiento de una máquina. Estos
a los componentes físicos o hardware con instrucciones y datos lenguajes consisten en un conjunto de símbolos
a través de diferentes tipos de programas. y reglas sintácticas y semánticas, que definen el
significado de sus elementos y expresiones.

S.O.
 De sistema (base) Controladores

Office
 De aplicación Reproductor de audio y video, etc

Permite el desarrollo de aplicaciones de


 De programación software
FUNDAMENTOS DE PROGRAMACIÓN
UNIDAD I
DISEÑO ALGORITMICO

El arte desafía a la tecnología y la tecnología inspira al arte


Jhon Lasseter
Unidad 1

Diseño Comprende y aplica los conceptos


básicos, nomenclatura y herramientas

algorítmico
para el diseño de algoritmos
orientado a la resolución de
problemas.
UNIDAD 1 DISEÑO ALGORÍTMICO

Algoritmo
Metodología para resolver un Conjunto de tareas o pasos en una cantidad finita que se
problema ejecutan en un orden determinado, y para determinada
situación inicial se resuelve el problema en un tiempo finito.

Características

 Precisión: Indicar el orden de realización de cada


paso.
 Determinismo: Si se sigue un algoritmo dos veces,
se debe obtener el mismo resultado cada vez.
 Finitud: El algoritmo se debe terminar en algún
momento
UNIDAD 1 DISEÑO ALGORÍTMICO
Algoritmo: →Conjunto de instrucciones que tienen como objetivo la solución de un problema

Precisos Definidos Finitos


Entrada

El algoritmo describe Proceso

Salida
UNIDAD 1 DISEÑO ALGORÍTMICO
UNIDAD 1 DISEÑO ALGORÍTMICO

REPRESENTACION DE ALGORITMOS
GRAFICAS Y PSEUDOCODIGO

Es un lenguaje algorítmico, muy parecido al


Pseudocódigo:
español pero más conciso que permite la
redacción rápida del algoritmo.
Las herramientas de
programación utilizadas como
lenguajes algorítmicos son:
Ha sido la herramienta de programación por
excelencia, y aún hoy sigue siendo muy
Diagramas de flujo: utilizada. Es fácil de diseñar pues el flujo lógico
del algoritmo se muestra en un diagrama en
lugar de palabras.
UNIDAD 1 DISEÑO ALGORÍTMICO

Identificadores
Los identificadores son los nombres que se
Antes de analizar cada una las herramientas les asignan a los objetos, los cuales se pueden
que se utilizan en representación de considerar como variables o constantes,
algoritmos para la solución de problemas, éstos intervienen en los procesos que se
se establecerá qué son los identificadores realizan para la solución de un problema, por
que se utilizan dentro de un algoritmo consiguiente, es necesario establecer qué
características tienen

Para establecer los nombres de los identificadores se deben


respetar ciertas reglas que establecen cada uno de los lenguajes
de programación, para el caso que nos ocupa se establecen de
forma indistinta según el problema que se esté abordando, sin
seguir regla alguna, generalmente se utilizará la letra, o las letras,
con la que inicia el nombre de la variable que representa el
objeto que se va a identificar
UNIDAD 1 DISEÑO ALGORÍTMICO

Constante
Un identificador se clasifica como constante
cuando el valor que se le asigna a este identificador
no cambia durante la ejecución o proceso de
solución del problema.

PI = 3.1416

De igual forma, se puede asignar valores


constantes para otro identificadores según las
necesidades del algoritmo que se esté
diseñando.
UNIDAD 1 DISEÑO ALGORÍTMICO

Variables
Los identificadores de tipo variable son todos
aquellos objetos cuyo valor cambia durante la
ejecución o proceso de solución del problema Contar con el largo (L) y ancho (A) de un
rectángulo que servirán para calcular y obtener
su área. Como se puede ver, tanto L como A
son variables que se proporcionan para que el
algoritmo pueda funcionar, y no necesariamente
se calculen dentro del proceso de solución

Tipos de variables
Los elementos que cambian durante la solución de
un problema se denominan variables, se clasifican
dependiendo de lo que deben representar en el
algoritmo
UNIDAD 1 DISEÑO ALGORÍTMICO

Para desarrollar un seudocódigo se necesita saber los


tipos de datos que se deben tener :

Entero: Subconjunto finito de los números enteros,


cuyo rango dependerá del lenguaje en el que
posteriormente codifiquemos el algoritmo y del
ordenador.

El rango depende de cuantos bits utilice para Real: Subconjunto de los números reales limitado
codificar el numero, normalmente 2 byes. Para no sólo en cuanto al tamaño, sino también en cuanto
números positivos, con 16 se pueden almacenar 216 a la precisión

Lógico: Conjunto formado por los valores Cierto y


Falso.‘1’ y ‘0’.

Carácter: Conjunto finito y ordenado de los


caracteres del Ordenador
UNIDAD 1 DISEÑO ALGORÍTMICO

Pseudocódigo

Es un lenguaje de pseudoprogramación, muy


parecido a un lenguaje de programación. El
pseudocódigo es muy fácil de utilizar, ya que es  Describe el algoritmo de manera simple
muy similar al español. Algunas palabras  Su conversión a código en un lenguaje es
utilizadas en el pseudocódigo: simple
 El desarrollador se concentra en la lógica y
estructuras de control, sin pensar en el
lenguaje
 Inicio  Lo escrito en pseudocódigo se convierte en
 Fin comentarios del lenguaje
 Leer
 Escribir
 Asignar (x← y+z)
UNIDAD 1 DISEÑO ALGORÍTMICO

Sin duda, en el mundo de la programación el


pseudocódigo es una de las herramientas más conocidas Por ejemplo, el pseudocódigo para determinar el
para el diseño de solución de problemas por volumen de una caja de dimensiones A, B y C se
computadora. Esta herramienta permite pasar casi de puede establecer de la siguiente forma:
manera directa la solución del problema a un lenguaje de
programación específico. El pseudocódigo es una serie de
pasos bien detallados y claros que conducen a la
resolución de un problema 1. Inicio.
2. Leer las medidas A, B y C.
3. Realizar el producto de A * B * C y
guardarlo en V
(V = A * B * C).
1. Escribir el resultado V.
2. Fin.
UNIDAD 1 DISEÑO ALGORÍTMICO

PSEUDOCODIGO
Ejemplo

Es un lenguaje simplificado entre el Programa Calculo Área Rectángulo


programador y la máquina, hecho por el
programador en su propio idioma, para 1. Inicio
describir un algoritmo y poder 2. Leer; base, altura
comprender mejor la estructura de dicho 3. Área ← base x altura
programa, donde el lenguaje simplificado 4. Escribir; base, altura, área
no puede ser compilado, ejecutado ni 5. Fin
corrido por la máquina.

DIAGRAMA DE FLUJO
UNIDAD 1 DISEÑO ALGORÍTMICO

DIAGRAMA DE FLUJO

Los diagramas de flujo son una herramienta que


permite representar visualmente qué operaciones se
requieren y en qué secuencia se deben efectuar para
solucionar un problema dado.
DIAGRAMA DE FLUJO

Por consiguiente, un diagrama de flujo es la


representación gráfica mediante símbolos especiales,
de los pasos o procedimientos de manera secuencial y
lógica que se deben realizar para solucionar un
problema dado.
UNIDAD 1 DISEÑO ALGORÍTMICO

Los diagramas de flujo desempeñan un papel vital en la


programación de un problema, ya que facilitan la comprensión
de problemas complicados y sobre todo aquellos en que sus
procesos son muy largos; generalmente, los diagramas de flujo
se dibujan antes de comenzar a programar el código fuente, que
se ingresará posteriormente a la computadora.

 Se utilizan símbolos (cajas) estándar que representan


los pasos del algoritmo
 Unidos por flechas: líneas de flujo
 Los símbolos están normalizados por ANSI
Unidad 1 DISEÑO ALGORÍTMICO
Principales símbolos utilizados en los diagramas de flujo
para indicar las operaciones que se realizan para producir
un resultado

Principales
símbolos utilizados
para construir los
diagramas de flujo
Unidad 1 DISEÑO ALGORÍTMICO
Por ejemplo, se puede establecer la solución del diagrama
de flujo para determinar el volumen de una caja de
dimensiones A, B y C como se muestra en la figura
siguiente

Y como se puede ver de manera gráfica, se


establece de forma precisa la secuencia de los
pasos por realizar para obtener el resultado del
volumen. Como se puede verificar, son los
mismos pasos que se establecieron en el
algoritmo presentado previamente mediante el
pseudocódigo
UNIDAD 1 DISEÑO ALGORÍTMICO

Diagrama de flujo para determinar el cambio que recibirá una


persona al adquirir un producto

En esta solución lo que se propone es


determinar el cambio que recibirá una persona,
para esto es necesario conocer cuánto cuesta el
producto (CP) y qué cantidad de dinero
disponible se tiene, y resolver el problema
mediante una simple diferencia entre lo que se
pagó y el costo del producto.
UNIDAD 1 DISEÑO ALGORÍTMICO

Ahora, si el mismo problema que se planteó se piensa en otros


aspectos, de tal forma que para la solución se planteara algún
cuestionamiento como: “¿Se debe considerar que el dinero
alcanzó para comprar el articulo?”, la solución que se
propondría ya no sería igual que la anterior

Nombre de las variables


CP = Costo de producto
CD = Cantidad de dinero
UNIDAD 1 DISEÑO ALGORÍTMICO Inicio

Leer el
EJEMPLO 1 pedido

GENERE UN ALGORITMO QUE SOLUCIONE LA ENTREGA DE UN Examinar


PEDIDO A UN CLIENTE historial
crediticio
 Inicio.
 Leer el pedido Es
no
solvente
 Examinar el historial crediticio del cliente
 Si el cliente es solvente, entregar el pedido. En caso si
contrario, rechazarlo. Entregar pedido
 Fin

fin
UNIDAD 1 DISEÑO ALGORÍTMICO Inicio

S= 0
EJEMPLO 2 GENERE UN ALGORITMO QUE SUME LOS N= 3
NÚMEROS ENTRE EL 3 Y EL 30.
S+N
N+1
1. Inicio.
2. Hacer SUMA igual cero.
3. Establecer NUMERO igual a 3. SI
N<=30
4. Sumar NUMERO a SUMA.
5. Incrementar NUMERO en 1 NO
6. Si NUMERO es menor o igual que 30 ir a 4; si no
imprimir a SUMA. S
7. Fin

fin
UNIDAD 1 DISEÑO ALGORÍTMICO
EJEMPLO 3 GENERE UN ALGORITMO QUE DETERMINE AL
MAYOR DE TRES NÚMEROS ENTEROS

 Inicio
 Leer los números y guardarlos en NUM1, NUM2 y NUM3
respectivamente
 Comparar NUM1 y NUM2, el número mayor se guarda
en AUX.
 Comparar AUX y NUM3, imprimir el número mayor.
 Fin.
UNIDAD 1 DISEÑO ALGORÍTMICO

Tarea 1 Diseñe un algoritmo para determinar si un número


es primo o no.

Tarea 2 Genere un algoritmo que sume los números entre el


2 y el 20.

Tarea 3 Genere un algoritmo que sume los números entre el


5 y el 50.
Unidad 1 diseño algorítmico

Diseño de funciones

Una función es un conjunto de líneas de código que realizan una tarea específica y puede retornar un
valor.
Las funciones pueden tomar parámetros que modifiquen su funcionamiento.
Las funciones son un conjunto de líneas de código (instrucciones), encapsulados en un bloque,
usualmente reciben parámetros, cuyos valores utilizan para efectuar operaciones y adicionalmente
retornan un valor.
En otras palabras una función puede recibir parámetros o argumentos (algunas no reciben nada), hace
uso de dichos valores recibidos como sea necesario y retorna un valor usando la instrucción return, si
no retorna algo, entonces no es una función. En java las funciones usan el modificador static.
Unidad 1 diseño algorítmico
Métodos:
Los métodos y las funciones en Java están en capacidad de
realizar las mismas tareas, es decir, son funcionalmente
idénticos, pero su diferencia radica en la manera en que
hacemos uso de uno u otro (el contexto).
Un método también puede recibir valores, efectuar
operaciones con estos y retornar valores, sin embargo en
método está asociado a un objeto, SIEMPRE, básicamente un
método es una función que pertenece a un objeto o clase,
mientras que una función existe por sí sola, sin necesidad de un
objeto para ser usada.

Nota: Es aquí donde digo que en Java se debe hablar de métodos y no de funciones,
pues en Java estamos siempre obligados a crear un objeto para usar el método. Para
que sea una función esta debe ser static, para que no requiera de un objeto para ser
llamada.
Unidad 1 diseño algorítmico
Procedimientos:
Los procedimientos son básicamente un conjunto de
instrucciones que se ejecutan sin retornar ningún valor, hay
quienes dicen que un procedimiento no recibe valores o
argumentos, sin embargo en la definición no hay nada que se lo
impida.

En el contexto de Java un procedimiento es


básicamente un método cuyo tipo de retorno es void
que no nos obliga a utilizar una sentencia return.
System.out.println("El color del coche es:"+coche1.color);
public class Coche { System.out.println("La marca del coche
//Atributos es:"+coche1.marca);
String color; System.out.println("El kilometraje del coche1
String marca; es:"+coche1.km);

int km;
Coche coche2 = new Coche ();

//Metodo coche2.color = "azul";


public static void main(String [] args){ coche2.marca = "jetta";
Coche coche1 = new Coche(); coche2.km = 100;

System.out.println("\nEl color del coche


coche1.color = "blanco"; es:"+coche2.color);
coche1.marca = "Audi"; System.out.println("La marca del coche
coche1.km = 0; es:"+coche2.marca);
System.out.println("El kilometraje del coche1
es:"+coche2.km);
}
}
POR SU ATENCIÓN

¡Muchas gracias!

También podría gustarte