SlideShare una empresa de Scribd logo
1 de 37
UN RECORRIDO POR LOS
CONCEPTOS BÁSICOS
FUNDAMENTOS DE PROGRAMACIÓN
SCD-1011
INSTITUTO TECNOLÓGICO
IZTAPALA
INGENIERÍA EN SISTEMAS
COMPUTACIONALES
Definición
Es el conjunto de recursos humanos y
materiales a través de los cuales se
recolectan, almacenan, recuperan, procesan y
comunican datos e información con el objetivo
de lograr una gestión eficiente de las
operaciones de una organización.
INGENIERIA EN SISTEMAS
COMPUTACIONALES
ELEMENTOS DEL COMPUTADOR
+
HARDWARE
(elem.físicos)
SOFTWARE (programa)
HARDWARE (COMPONENTES
FÍSICOS)
Unidades
Periféricas
De Entrada
Ejem.
Teclado
Mouse
Escaner, etc
Unidades
Periféricas
De Salida
Ejm.
Impresora
Monitor,
Parlantes, etc.
Unidades de
Almacenamiento.
Ejem. Disquete,
Discos compactos,
Discos duros, etc.
Unidad de
Control
Unidad
Aritmética
Y Lógica
Memoria Principal
RAM y ROM
UNIDAD CENTRAL DE
PROCESO
SOFTWARE
Conjunto de Programas y procedimientos necesarios para hacer posible la realización de
una tarea especifica, en contraposición de los componentes físicos de un sistema de
computo.
GENERALIDADES
DATO
Es la representación simbólica de un hecho, atributo o característica de
una entidad.
Ejm: nota de un alumno, nombre de un docente, color de un carro, etc.
INFORMACION
Es un dato útil.
Ejm. El promedio final de un alumno para un curso, número de
aprobados en un examen, nombre de los primeros alumnos
de cada especialidad por cada ciclo.
La información se obtiene mediante el procesamiento
de los datos
Procesador
Entrada Salid
a
Algoritmo
DATO
S
INFORMACIO
N
 Es realizado por el procesador el cual ejecuta un conjunto de
pasos previamente definidos (algoritmo)
 El procesamiento de datos puede ser:
Manual
Mecanizada (uso de calculadora, sumadora, etc)
Automatizado (uso del computador)
PROCESAMIENTO DE
DATOS
Operaciones que transforman datos en información
PROCESAMIENTO DE DATOS
AUTOMATIZADO
Entrada
DATO
S
Salid
a
INFORMACIO
N
Programa
Algoritmo
Procesador
DISEÑO
DE ALGORITMOS
ALGORITMO
 Secuencia ordenada de pasos o acciones o
instrucciones que se debe ejecutar para realizar una
tarea o para resolver un problema.
 Es expresado en lenguaje natural utilizando
herramientas estandarizadas.
Características de un algoritmo
 Preciso: El algoritmo debe indicar el orden en que se
debe realizar cada paso.
 Finito: El algoritmo tiene un número finito de pasos
y debe terminar en algún momento.
 Bien definido: Si el algoritmo se prueba dos veces
con los mismos datos de entrada, se debe obtener el
mismo resultado.
FASES PARA LA CONSTRUCCION DE UN PROGRAMA
SOLUCION DEL
PROBLEMA
SOLUCION DEL
PROBLEMA
IMPLEMENTACION
EN LA
COMPUTADORA
IMPLEMENTACION
EN LA
COMPUTADORA
Dato
s
Algoritmo
Programa
(Software)
Análisis del
problema
Diseño del
algoritmo
Verificación
del algoritmoError de
lógica
OK
Codificación
del algoritmo
(programa)
Ejecución del
programa
Verificación del
programa
Programa
Error
sintaxis
OK
Algoritmo
PROGRAMA
Es el algoritmo escrito en un lenguaje de
programación para ser ejecutado por el
computador.
Tipos de lenguajes de Programación:
 Lenguaje de alto nivel: lenguaje similar al
lenguaje natural. Son fáciles de escribir. Es el mas
usado por los programadores.
Ejm. C++, Pascal, Basic, Prolog, Java, etc
 Lenguaje de bajo nivel: lenguaje mnemotécnico.
Ejm. ADD M, N, P
 Lenguaje de máquina: lenguaje binario (0 y 1)
entendible directamente por el computador.
Ejm. 0110 1001 1010 1011
PARADIGMAS DE PROGRAMACIÓN
Representa un enfoque particular o filosofía para la
construcción del software.
HERRAMIENTAS DE
PROGRAMACIÓN
COMPILADORES E INTERPRETES
Definiciones básicas
Intérprete: Ejecuta una a una las instrucciones de un
programa de alto nivel. La entrada es un archivo en un
lenguaje de alto nivel, la diferencia con un compilador es que
la salida es una ejecución.
– Ej:Basic, LISP, PROLOG son interpretados
– Ventaja: fácil depuración
– Desventaja:lentitud y consumo de recursos (pues el
intérprete ocupa tiempo y memoria)
COMPILADORES E INTERPRETES
Compilador: Proceso de traducción en dos fases (Análisis
y Síntesis) que convierte un programa fuente escrito en un
lenguaje de alto nivel, a un programa objeto en código de
máquina, listo por tanto para su ejecución en el computador.
Traductor: desde un punto de vista general, es un proceso
que convierte un programa escrito o texto en un lenguaje
fuente a un texto o programa escrito en un lenguaje destino.
Incluyen tanto a los compiladores como a los intérpretes.
TRADUCTORES DE LENGUAJE
Programas que traducen programas fuente a lenguaje de máquina.
Tipos de Traductores: Compiladores e Intérpretes
Ejecución de la
Instrucción
Programa
Fuente
Compilador
Programa
Objeto
Programa
Fuente Intérprete
Ejecución
del
Programa
Instrucción
en
leng.máq.
instrucción
Programa que permite crear y modificar archivos digitales
compuestos únicamente por texto sin formato, conocidos
comúnmente como archivos de texto o texto plano. El
programa lee el archivo e interpreta los BYTES leídos según el
código de caracteres que usa el editor. Hoy en día es
comúnmente de 7- ó 8-bits en ASCII o UTF-8, rara vez
EBCDIC.
Por ejemplo, un editor ASCII de 8 bits que lee el número
binario 0110 0001 (decimal 97 ó hexadecimal 61) en el archivo
lo representará en la pantalla por la figura a, que el usuario
reconoce como la letra "a" y ofrecerá al usuario las funciones
necesarias para cambiar el número binario en el archivo.
EDITOR DE TEXTO
Los editores de texto son incluidos en el sistema
operativo o en algún paquete de software instalado y
se usan cuando se deben crear o modificar archivos
de texto como archivos de configuración, scripts o el
código fuente de algún programa.
El archivo creado por un editor de texto incluye por
convención en DOS y Microsoft Windows la
extensión .txt, aunque pueda ser cambiada a
cualquier otra con posterioridad. Tanto Unix como
Linux dan al usuario total libertad en la denominación
de sus archivos.
EDITOR DE TEXTO
D A T O S
 Los datos son representaciones simbólicas
no significativas, que a través del
procesamiento y la interpretación se
convertirán en información, es en esto
donde radica su importancia.
 Dentro de un programa o algoritmo, los datos siempre tienen
las siguientes propiedades.
 TIPO DE DATO: Es un dominio nominado de datos que
permite el almacenamiento de una determinada
naturaleza de dato, atendiendo un grado de exactitud
específico, causando un consumo determinado de
almacenamiento.
 DOMINIO: Es el conjunto de valores válidos para un dato.
 OPCIONALIDAD: Es la necesidad que se tiene de que un
dato tenga valor.
 VALOR: Es la expresión almacenada como dato en un
momento determinado.
Tipos de Datos (reconocidos por el computador):
DATOS
BASICOS COMPUESTOS
Numéricos Caracter Lógico Estático Dinámico
DATOS SIMPLES O DATOS BASICOS
 DATOS NUMERICOS
Son todos aquellos valores con los cuales se pueden
realizar cálculos aritméticos . Estos pueden ser:
Enteros y Reales
El rango y precisión de los datos numéricos depende
del lenguaje de programación que se utilice.
DATOS TIPO CARÁCTER ó TIPO CADENA
Valores compuestos por conjunto de caracteres que el
computador reconoce. Estos valores tienen longitud
variable.
Se encuentran normalizados bajo el código ASCII o
EBCDIC
Se tienen:
Caracteres alfabéticos: A - Z ; a - z
Caracteres numéricos: 0 - 9
Caracteres especiales: *, / , +, >, <, =, etc.
 DATOS TIPO LOGICO ó BOLEANO
Valores binarios compuestos por el conjunto de 0, 1; tienen su origen
en el algebra de Boole.
Permite manejar pares de valores mutuamente excluyentes, como:
FALSO, VERDADERO; SI, NO; ABIERTO, CERRADO.
 DATOS NULOS
Es la ausencia de valor. Indica que el valor se desconoce;
cualquier operación realizada con valores nulos genera
valores nulos, dado que es imposible determinar el resultado
final.
 DATOS BLOB
Son valores compuestos por la representación binaria (digital)
de grandes cantidades de información; tal como imágenes,
sonidos, etc. BLOB →→ objetos binarios largos; por sus
siglas en ingles: Binary Large Object
DATOS COMPUESTOS
 ESTATICO
Expresiones = Valor de un dato.
Cualquier dato u operación que resulte en un dato es una expresión.
Si su representación es literal (se escribe directamente) es una expresión
absoluta.
Si es necesario resolver un valor a partir de otros, es una expresión
compuesta.
-Arreglos -Registros -Archivos
 DINAMICO
Variable: Es la referencia lógica nominada a la posición física de memoria
RAM en donde se almacena una expresión. Reciben este nombre dado que
el valor puede cambiar durante el transcurso de la ejecución del programa.
Listas -Arboles -Grafos
OPERACIONES CON LOS DATOS
OPERACIONES INTERVIENEN OPERADORES RESULTADO
ARITMETICAS Datos
Numéricos
Aritméticos
+, - , *, /,
resto, entero
Dato
Numérico
DE
COMPARACION
Datos del
mismo tipo
Relacionales
>, <, >=, <=, =
Dato
Lógico
LOGICAS Datos
lógicos
Lógicos
No, Si, Verdadero,
Falso Y, O
Dato
lógico
EXPRESIÓN DE LOS DATOS
Un dato puede venir expresado como: constantes, variables,
expresiones, funciones, etc.
 CONSTANTE
Es un dato (de cualquier tipo) cuyo valor no cambia durante la
ejecución del algoritmo o programa.
Tipos de constantes:
 Literal: es un valor expresado en forma explícita.
Ejm. 3.1416
 Simbólica: viene expresado bajo un nombre que guarda
su valor
Ejm. Pi (Previamente se debe definir que Pi = 3.1416)
 VARIABLE
 Es un objeto (porción de memoria) que almacena un dato
 Para definir una variable es necesario:
- Darle un Nombre
- Indicar el tipo de dato que va almacenar
OJO: El valor de una variable puede cambiar
durante la ejecución del algoritmo.
Tipos de variables:
Entero: Ejm. nota, edad, examen,
Real: Ejm. promedio, sueldo, talla
Carácter: Ejm. sección, sexo,
Lógica: Ejm. Fin, encontrado, vale
Operador de asignación
Se utiliza para almacenar un dato en una
variable,
perdiéndose cualquier otro valor previamente
almacenado en ella.
Se representa con el símbolo 
Ejem.
Nota  12.3
Nota  Nota +2
 EXPRESIONES
Es una combinación de operandos y operadores
Tipos:
 Expresiones aritméticas
Operando: constantes, variables y expres. numér.
Operadores: aritméticos
Resultado: numérico
Ejm. (EP + 2*EF + PP)/4
 Expresiones lógicas
Operando: constantes, variables y expres. lógicas
Operadores: lógicos y relacionales
Resultado: lógico
Ejm. (PP>6.1 y PF>6.1)
 FUNCIONES
Son programas predefinidas que:
- Tienen un nombre con el cual se les invoca y
- Aceptan datos y devuelven un resultado.
Generalmente los lenguajes de programación poseen
funciones matemáticas, de cadenas y otros.
Ejm. En C++
Abs(X): devuelve el valor absoluto del número entero X
Sqrt(X): devuelve la raiz cuadrada del número X (X>=0)
Identificadores
 Son los nombres que se le dan a las constantes simbólicas,
variables, funciones y otros.
 Constan de una cadena de caracteres que debe empezar con
una letra.
 Deben ser significativos sugiriendo lo que representa.
ACUMULADOR
 Es una variable cuyo valor aumenta o disminuye en una
cantidad variable cada vez que se produce un determinado
suceso o acción.
 Debe ser inicializado
Ejm. Se desea acumular las notas de prácticas de un alumno
Sum 0 (el valor de sum es 0)
sum  sum + 13 (el valor de sum es 13)
sum  sum + 10 (el valor de sum es 23)
CONTADOR
 Es un acumulador cuyo valor aumenta o disminuye en una
cantidad constante cada vez que se produce un determinado
suceso o acción.
 Se usa para contar sucesos. Ejm. Contar número de aprobados
VARIABLES IMPORTANTES
INSTRUCCIONES
Son las acciones que van a ser ejecutadas por el computador
para resolver el problema.
TIPOS :
 Instrucciones de Inicio/Fin :
Indica el Inicio y el Fin del algoritmo
 Instrucciones de lectura:
Solicita al usuario el ingreso de datos desde un dispositivo de
entrada por ejemplo el teclado.
 Instrucciones de escritura:
Muestra los resultados a través de un dispositivo de salida por
ejemplo la pantalla, impresora, etc.
 Instrucciones de asignación:
Almacena un valor en una variable, perdiéndose cualquier
otro valor almacenado en ella.
 Instrucciones selectivas:
Permiten ejecutar unas u otras tareas de acuerdo al resultado
de una expresión condicional
 Instrucciones repetitivas:
Permiten la repetición de un grupo de instrucciones,
generando un bucle (lazo o loop).
EJEMPLO DE ALGORITMO
Se cuenta con las notas del EP, EF y PP de un alumno.
Se sabe que el promedio final (PF) se calcula con la fórmula:
PF=(EP+ PP+2EF)/4
Si el alumno cumple con la siguiente condición: PP>6.1 y
PF> 6.1 tiene opción a rendir un examen sustitutorio (ES)
Escriba un algoritmo reciba las notas del alumno y luego
muestre un mensaje indicando si el alumno puede rendir o no
puede rendir el ES.
En el caso que ya no pueda rendir el ES, debe mostrar
también el PF
Análisis
Datos de entrada: EP, EF, PP
Salida: mensaje y PF (si no puede rendir ES)
Algoritmo
Inicio del algoritmo
Ingresar las notas del alumno: EP, EF y PP
Calcular PF con la siguiente fórmula:
PF = (EP + 2EF + PP)/4
Si cumple la condición PP> 6.1 y PF>6.1entonces mostrar
el mensaje “Puede rendir el ES”
Si no cumple la condición entonces mostrar el mensaje “No
puede rendir ES” y mostrar PF
Fin del algoritmo.

Más contenido relacionado

La actualidad más candente

Fundamentos de programacion
Fundamentos de programacionFundamentos de programacion
Fundamentos de programacionMaritere Cruz
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmoslisobra
 
algoritmo
algoritmoalgoritmo
algoritmofior
 
Jcf iind 2010-227 algoritmos y lenguajes de programacion
Jcf iind 2010-227 algoritmos y lenguajes de programacionJcf iind 2010-227 algoritmos y lenguajes de programacion
Jcf iind 2010-227 algoritmos y lenguajes de programacionMiguel Alejandro León Santos
 
Introducccion programacion
Introducccion programacionIntroducccion programacion
Introducccion programacionAnaisMar22
 
Glosario De Trabajo De Examen
Glosario De Trabajo De ExamenGlosario De Trabajo De Examen
Glosario De Trabajo De ExamenJoel Soto
 
Curso de desarrollo de software
Curso de desarrollo de softwareCurso de desarrollo de software
Curso de desarrollo de softwarevekys
 
INTRODUCCIÓN ADSI - PARTE 1
INTRODUCCIÓN ADSI - PARTE 1INTRODUCCIÓN ADSI - PARTE 1
INTRODUCCIÓN ADSI - PARTE 1thefasp10
 
Actividad26
Actividad26Actividad26
Actividad26grachika
 
Introduccion a la programación
Introduccion a la programaciónIntroduccion a la programación
Introduccion a la programaciónRonny Parra
 
Actividad....... 26
Actividad....... 26Actividad....... 26
Actividad....... 26grachika
 
Visual basic terminado[1]
Visual basic terminado[1]Visual basic terminado[1]
Visual basic terminado[1]Jalil Segura
 

La actualidad más candente (20)

Fundamentos de programacion
Fundamentos de programacionFundamentos de programacion
Fundamentos de programacion
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
algoritmo
algoritmoalgoritmo
algoritmo
 
Jcf iind 2010-227 algoritmos y lenguajes de programacion
Jcf iind 2010-227 algoritmos y lenguajes de programacionJcf iind 2010-227 algoritmos y lenguajes de programacion
Jcf iind 2010-227 algoritmos y lenguajes de programacion
 
Introducccion programacion
Introducccion programacionIntroducccion programacion
Introducccion programacion
 
Glosario De Trabajo De Examen
Glosario De Trabajo De ExamenGlosario De Trabajo De Examen
Glosario De Trabajo De Examen
 
Curso de desarrollo de software
Curso de desarrollo de softwareCurso de desarrollo de software
Curso de desarrollo de software
 
INTRODUCCIÓN ADSI - PARTE 1
INTRODUCCIÓN ADSI - PARTE 1INTRODUCCIÓN ADSI - PARTE 1
INTRODUCCIÓN ADSI - PARTE 1
 
Assambler
AssamblerAssambler
Assambler
 
Danelly
DanellyDanelly
Danelly
 
Guia no1 algoritmos
Guia no1 algoritmosGuia no1 algoritmos
Guia no1 algoritmos
 
Actividad26
Actividad26Actividad26
Actividad26
 
Tema1 b
Tema1 bTema1 b
Tema1 b
 
Taller paola
Taller paolaTaller paola
Taller paola
 
Tarea
TareaTarea
Tarea
 
Programa informatico
Programa informaticoPrograma informatico
Programa informatico
 
Introduccion a la programación
Introduccion a la programaciónIntroduccion a la programación
Introduccion a la programación
 
Introduccion
IntroduccionIntroduccion
Introduccion
 
Actividad....... 26
Actividad....... 26Actividad....... 26
Actividad....... 26
 
Visual basic terminado[1]
Visual basic terminado[1]Visual basic terminado[1]
Visual basic terminado[1]
 

Similar a Fundamentos de programación

Algoritmos Conceptos Basicos - www.ingfiis.tk
Algoritmos Conceptos Basicos - www.ingfiis.tkAlgoritmos Conceptos Basicos - www.ingfiis.tk
Algoritmos Conceptos Basicos - www.ingfiis.tkLaurence HR
 
Conceptos básicos sobre algortimia
Conceptos básicos sobre algortimiaConceptos básicos sobre algortimia
Conceptos básicos sobre algortimiaIEO Santo Tomás
 
Presentaciondealgoritmos 110204140015-phpapp02
Presentaciondealgoritmos 110204140015-phpapp02Presentaciondealgoritmos 110204140015-phpapp02
Presentaciondealgoritmos 110204140015-phpapp02Ivan Rosales
 
Presentaciondealgoritmos 110204140015-phpapp02
Presentaciondealgoritmos 110204140015-phpapp02Presentaciondealgoritmos 110204140015-phpapp02
Presentaciondealgoritmos 110204140015-phpapp02Ivan Rosales
 
37 tarazona karen programacion
37 tarazona karen programacion37 tarazona karen programacion
37 tarazona karen programacionkarenyulithza
 
Algoritmos, programas, compiladores y lenguajes de programacion
Algoritmos, programas, compiladores y lenguajes de programacionAlgoritmos, programas, compiladores y lenguajes de programacion
Algoritmos, programas, compiladores y lenguajes de programacionBoris Salleg
 
Sesión1 Algoritmia Básica.ppt
Sesión1 Algoritmia Básica.pptSesión1 Algoritmia Básica.ppt
Sesión1 Algoritmia Básica.pptsamirvidal1
 
Algoritmos
AlgoritmosAlgoritmos
AlgoritmosAlex
 
Universidad De Los Andes
Universidad De Los AndesUniversidad De Los Andes
Universidad De Los Andesbarrios
 
LENGUAJE DE PROGRAMACION C++ INTRODUCCION
LENGUAJE DE PROGRAMACION C++ INTRODUCCIONLENGUAJE DE PROGRAMACION C++ INTRODUCCION
LENGUAJE DE PROGRAMACION C++ INTRODUCCIONSol López
 
INTRODUCCION-A-LOS-ALGORITMOS-BASICOS.pptx
INTRODUCCION-A-LOS-ALGORITMOS-BASICOS.pptxINTRODUCCION-A-LOS-ALGORITMOS-BASICOS.pptx
INTRODUCCION-A-LOS-ALGORITMOS-BASICOS.pptxJamesHerberthBacaTel
 
Fundamentos de programación
Fundamentos de programaciónFundamentos de programación
Fundamentos de programaciónEdison Morales
 
Fundamentos de programación.pptx
Fundamentos de programación.pptxFundamentos de programación.pptx
Fundamentos de programación.pptxWaldirOzuna2
 

Similar a Fundamentos de programación (20)

Algoritmos Conceptos Basicos - www.ingfiis.tk
Algoritmos Conceptos Basicos - www.ingfiis.tkAlgoritmos Conceptos Basicos - www.ingfiis.tk
Algoritmos Conceptos Basicos - www.ingfiis.tk
 
Conceptos básicos sobre algortimia
Conceptos básicos sobre algortimiaConceptos básicos sobre algortimia
Conceptos básicos sobre algortimia
 
Presentaciondealgoritmos 110204140015-phpapp02
Presentaciondealgoritmos 110204140015-phpapp02Presentaciondealgoritmos 110204140015-phpapp02
Presentaciondealgoritmos 110204140015-phpapp02
 
Presentaciondealgoritmos 110204140015-phpapp02
Presentaciondealgoritmos 110204140015-phpapp02Presentaciondealgoritmos 110204140015-phpapp02
Presentaciondealgoritmos 110204140015-phpapp02
 
INTRODUCCION
INTRODUCCIONINTRODUCCION
INTRODUCCION
 
37 tarazona karen programacion
37 tarazona karen programacion37 tarazona karen programacion
37 tarazona karen programacion
 
Programacion
 Programacion  Programacion
Programacion
 
Algoritmos, programas, compiladores y lenguajes de programacion
Algoritmos, programas, compiladores y lenguajes de programacionAlgoritmos, programas, compiladores y lenguajes de programacion
Algoritmos, programas, compiladores y lenguajes de programacion
 
Sesión1 Algoritmia Básica.ppt
Sesión1 Algoritmia Básica.pptSesión1 Algoritmia Básica.ppt
Sesión1 Algoritmia Básica.ppt
 
Algorimo1
Algorimo1Algorimo1
Algorimo1
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Programacion
ProgramacionProgramacion
Programacion
 
Universidad De Los Andes
Universidad De Los AndesUniversidad De Los Andes
Universidad De Los Andes
 
LENGUAJE DE PROGRAMACION C++ INTRODUCCION
LENGUAJE DE PROGRAMACION C++ INTRODUCCIONLENGUAJE DE PROGRAMACION C++ INTRODUCCION
LENGUAJE DE PROGRAMACION C++ INTRODUCCION
 
INTRODUCCION-A-LOS-ALGORITMOS-BASICOS.pptx
INTRODUCCION-A-LOS-ALGORITMOS-BASICOS.pptxINTRODUCCION-A-LOS-ALGORITMOS-BASICOS.pptx
INTRODUCCION-A-LOS-ALGORITMOS-BASICOS.pptx
 
Fundamentos de programación
Fundamentos de programaciónFundamentos de programación
Fundamentos de programación
 
Fundamentos de programación.pptx
Fundamentos de programación.pptxFundamentos de programación.pptx
Fundamentos de programación.pptx
 
Algoritmos 2015
Algoritmos 2015Algoritmos 2015
Algoritmos 2015
 
Presentacion c
Presentacion cPresentacion c
Presentacion c
 
Algoritmos - Curso UNE
Algoritmos - Curso UNEAlgoritmos - Curso UNE
Algoritmos - Curso UNE
 

Fundamentos de programación

  • 1. UN RECORRIDO POR LOS CONCEPTOS BÁSICOS FUNDAMENTOS DE PROGRAMACIÓN SCD-1011 INSTITUTO TECNOLÓGICO IZTAPALA INGENIERÍA EN SISTEMAS COMPUTACIONALES
  • 2. Definición Es el conjunto de recursos humanos y materiales a través de los cuales se recolectan, almacenan, recuperan, procesan y comunican datos e información con el objetivo de lograr una gestión eficiente de las operaciones de una organización. INGENIERIA EN SISTEMAS COMPUTACIONALES
  • 4. HARDWARE (COMPONENTES FÍSICOS) Unidades Periféricas De Entrada Ejem. Teclado Mouse Escaner, etc Unidades Periféricas De Salida Ejm. Impresora Monitor, Parlantes, etc. Unidades de Almacenamiento. Ejem. Disquete, Discos compactos, Discos duros, etc. Unidad de Control Unidad Aritmética Y Lógica Memoria Principal RAM y ROM UNIDAD CENTRAL DE PROCESO
  • 5. SOFTWARE Conjunto de Programas y procedimientos necesarios para hacer posible la realización de una tarea especifica, en contraposición de los componentes físicos de un sistema de computo.
  • 6. GENERALIDADES DATO Es la representación simbólica de un hecho, atributo o característica de una entidad. Ejm: nota de un alumno, nombre de un docente, color de un carro, etc. INFORMACION Es un dato útil. Ejm. El promedio final de un alumno para un curso, número de aprobados en un examen, nombre de los primeros alumnos de cada especialidad por cada ciclo. La información se obtiene mediante el procesamiento de los datos
  • 7. Procesador Entrada Salid a Algoritmo DATO S INFORMACIO N  Es realizado por el procesador el cual ejecuta un conjunto de pasos previamente definidos (algoritmo)  El procesamiento de datos puede ser: Manual Mecanizada (uso de calculadora, sumadora, etc) Automatizado (uso del computador) PROCESAMIENTO DE DATOS Operaciones que transforman datos en información
  • 10. ALGORITMO  Secuencia ordenada de pasos o acciones o instrucciones que se debe ejecutar para realizar una tarea o para resolver un problema.  Es expresado en lenguaje natural utilizando herramientas estandarizadas. Características de un algoritmo  Preciso: El algoritmo debe indicar el orden en que se debe realizar cada paso.  Finito: El algoritmo tiene un número finito de pasos y debe terminar en algún momento.  Bien definido: Si el algoritmo se prueba dos veces con los mismos datos de entrada, se debe obtener el mismo resultado.
  • 11. FASES PARA LA CONSTRUCCION DE UN PROGRAMA SOLUCION DEL PROBLEMA SOLUCION DEL PROBLEMA IMPLEMENTACION EN LA COMPUTADORA IMPLEMENTACION EN LA COMPUTADORA Dato s Algoritmo Programa (Software) Análisis del problema Diseño del algoritmo Verificación del algoritmoError de lógica OK Codificación del algoritmo (programa) Ejecución del programa Verificación del programa Programa Error sintaxis OK Algoritmo
  • 12. PROGRAMA Es el algoritmo escrito en un lenguaje de programación para ser ejecutado por el computador. Tipos de lenguajes de Programación:  Lenguaje de alto nivel: lenguaje similar al lenguaje natural. Son fáciles de escribir. Es el mas usado por los programadores. Ejm. C++, Pascal, Basic, Prolog, Java, etc  Lenguaje de bajo nivel: lenguaje mnemotécnico. Ejm. ADD M, N, P  Lenguaje de máquina: lenguaje binario (0 y 1) entendible directamente por el computador. Ejm. 0110 1001 1010 1011
  • 13. PARADIGMAS DE PROGRAMACIÓN Representa un enfoque particular o filosofía para la construcción del software.
  • 15. COMPILADORES E INTERPRETES Definiciones básicas Intérprete: Ejecuta una a una las instrucciones de un programa de alto nivel. La entrada es un archivo en un lenguaje de alto nivel, la diferencia con un compilador es que la salida es una ejecución. – Ej:Basic, LISP, PROLOG son interpretados – Ventaja: fácil depuración – Desventaja:lentitud y consumo de recursos (pues el intérprete ocupa tiempo y memoria)
  • 16. COMPILADORES E INTERPRETES Compilador: Proceso de traducción en dos fases (Análisis y Síntesis) que convierte un programa fuente escrito en un lenguaje de alto nivel, a un programa objeto en código de máquina, listo por tanto para su ejecución en el computador. Traductor: desde un punto de vista general, es un proceso que convierte un programa escrito o texto en un lenguaje fuente a un texto o programa escrito en un lenguaje destino. Incluyen tanto a los compiladores como a los intérpretes.
  • 17. TRADUCTORES DE LENGUAJE Programas que traducen programas fuente a lenguaje de máquina. Tipos de Traductores: Compiladores e Intérpretes Ejecución de la Instrucción Programa Fuente Compilador Programa Objeto Programa Fuente Intérprete Ejecución del Programa Instrucción en leng.máq. instrucción
  • 18. Programa que permite crear y modificar archivos digitales compuestos únicamente por texto sin formato, conocidos comúnmente como archivos de texto o texto plano. El programa lee el archivo e interpreta los BYTES leídos según el código de caracteres que usa el editor. Hoy en día es comúnmente de 7- ó 8-bits en ASCII o UTF-8, rara vez EBCDIC. Por ejemplo, un editor ASCII de 8 bits que lee el número binario 0110 0001 (decimal 97 ó hexadecimal 61) en el archivo lo representará en la pantalla por la figura a, que el usuario reconoce como la letra "a" y ofrecerá al usuario las funciones necesarias para cambiar el número binario en el archivo. EDITOR DE TEXTO
  • 19. Los editores de texto son incluidos en el sistema operativo o en algún paquete de software instalado y se usan cuando se deben crear o modificar archivos de texto como archivos de configuración, scripts o el código fuente de algún programa. El archivo creado por un editor de texto incluye por convención en DOS y Microsoft Windows la extensión .txt, aunque pueda ser cambiada a cualquier otra con posterioridad. Tanto Unix como Linux dan al usuario total libertad en la denominación de sus archivos. EDITOR DE TEXTO
  • 20. D A T O S
  • 21.  Los datos son representaciones simbólicas no significativas, que a través del procesamiento y la interpretación se convertirán en información, es en esto donde radica su importancia.  Dentro de un programa o algoritmo, los datos siempre tienen las siguientes propiedades.
  • 22.  TIPO DE DATO: Es un dominio nominado de datos que permite el almacenamiento de una determinada naturaleza de dato, atendiendo un grado de exactitud específico, causando un consumo determinado de almacenamiento.  DOMINIO: Es el conjunto de valores válidos para un dato.  OPCIONALIDAD: Es la necesidad que se tiene de que un dato tenga valor.  VALOR: Es la expresión almacenada como dato en un momento determinado.
  • 23. Tipos de Datos (reconocidos por el computador): DATOS BASICOS COMPUESTOS Numéricos Caracter Lógico Estático Dinámico
  • 24. DATOS SIMPLES O DATOS BASICOS  DATOS NUMERICOS Son todos aquellos valores con los cuales se pueden realizar cálculos aritméticos . Estos pueden ser: Enteros y Reales El rango y precisión de los datos numéricos depende del lenguaje de programación que se utilice. DATOS TIPO CARÁCTER ó TIPO CADENA Valores compuestos por conjunto de caracteres que el computador reconoce. Estos valores tienen longitud variable. Se encuentran normalizados bajo el código ASCII o EBCDIC Se tienen: Caracteres alfabéticos: A - Z ; a - z Caracteres numéricos: 0 - 9 Caracteres especiales: *, / , +, >, <, =, etc.
  • 25.  DATOS TIPO LOGICO ó BOLEANO Valores binarios compuestos por el conjunto de 0, 1; tienen su origen en el algebra de Boole. Permite manejar pares de valores mutuamente excluyentes, como: FALSO, VERDADERO; SI, NO; ABIERTO, CERRADO.  DATOS NULOS Es la ausencia de valor. Indica que el valor se desconoce; cualquier operación realizada con valores nulos genera valores nulos, dado que es imposible determinar el resultado final.  DATOS BLOB Son valores compuestos por la representación binaria (digital) de grandes cantidades de información; tal como imágenes, sonidos, etc. BLOB →→ objetos binarios largos; por sus siglas en ingles: Binary Large Object
  • 26. DATOS COMPUESTOS  ESTATICO Expresiones = Valor de un dato. Cualquier dato u operación que resulte en un dato es una expresión. Si su representación es literal (se escribe directamente) es una expresión absoluta. Si es necesario resolver un valor a partir de otros, es una expresión compuesta. -Arreglos -Registros -Archivos  DINAMICO Variable: Es la referencia lógica nominada a la posición física de memoria RAM en donde se almacena una expresión. Reciben este nombre dado que el valor puede cambiar durante el transcurso de la ejecución del programa. Listas -Arboles -Grafos
  • 27. OPERACIONES CON LOS DATOS OPERACIONES INTERVIENEN OPERADORES RESULTADO ARITMETICAS Datos Numéricos Aritméticos +, - , *, /, resto, entero Dato Numérico DE COMPARACION Datos del mismo tipo Relacionales >, <, >=, <=, = Dato Lógico LOGICAS Datos lógicos Lógicos No, Si, Verdadero, Falso Y, O Dato lógico
  • 28. EXPRESIÓN DE LOS DATOS Un dato puede venir expresado como: constantes, variables, expresiones, funciones, etc.  CONSTANTE Es un dato (de cualquier tipo) cuyo valor no cambia durante la ejecución del algoritmo o programa. Tipos de constantes:  Literal: es un valor expresado en forma explícita. Ejm. 3.1416  Simbólica: viene expresado bajo un nombre que guarda su valor Ejm. Pi (Previamente se debe definir que Pi = 3.1416)
  • 29.  VARIABLE  Es un objeto (porción de memoria) que almacena un dato  Para definir una variable es necesario: - Darle un Nombre - Indicar el tipo de dato que va almacenar OJO: El valor de una variable puede cambiar durante la ejecución del algoritmo. Tipos de variables: Entero: Ejm. nota, edad, examen, Real: Ejm. promedio, sueldo, talla Carácter: Ejm. sección, sexo, Lógica: Ejm. Fin, encontrado, vale
  • 30. Operador de asignación Se utiliza para almacenar un dato en una variable, perdiéndose cualquier otro valor previamente almacenado en ella. Se representa con el símbolo  Ejem. Nota  12.3 Nota  Nota +2
  • 31.  EXPRESIONES Es una combinación de operandos y operadores Tipos:  Expresiones aritméticas Operando: constantes, variables y expres. numér. Operadores: aritméticos Resultado: numérico Ejm. (EP + 2*EF + PP)/4  Expresiones lógicas Operando: constantes, variables y expres. lógicas Operadores: lógicos y relacionales Resultado: lógico Ejm. (PP>6.1 y PF>6.1)
  • 32.  FUNCIONES Son programas predefinidas que: - Tienen un nombre con el cual se les invoca y - Aceptan datos y devuelven un resultado. Generalmente los lenguajes de programación poseen funciones matemáticas, de cadenas y otros. Ejm. En C++ Abs(X): devuelve el valor absoluto del número entero X Sqrt(X): devuelve la raiz cuadrada del número X (X>=0) Identificadores  Son los nombres que se le dan a las constantes simbólicas, variables, funciones y otros.  Constan de una cadena de caracteres que debe empezar con una letra.  Deben ser significativos sugiriendo lo que representa.
  • 33. ACUMULADOR  Es una variable cuyo valor aumenta o disminuye en una cantidad variable cada vez que se produce un determinado suceso o acción.  Debe ser inicializado Ejm. Se desea acumular las notas de prácticas de un alumno Sum 0 (el valor de sum es 0) sum  sum + 13 (el valor de sum es 13) sum  sum + 10 (el valor de sum es 23) CONTADOR  Es un acumulador cuyo valor aumenta o disminuye en una cantidad constante cada vez que se produce un determinado suceso o acción.  Se usa para contar sucesos. Ejm. Contar número de aprobados VARIABLES IMPORTANTES
  • 34. INSTRUCCIONES Son las acciones que van a ser ejecutadas por el computador para resolver el problema. TIPOS :  Instrucciones de Inicio/Fin : Indica el Inicio y el Fin del algoritmo  Instrucciones de lectura: Solicita al usuario el ingreso de datos desde un dispositivo de entrada por ejemplo el teclado.  Instrucciones de escritura: Muestra los resultados a través de un dispositivo de salida por ejemplo la pantalla, impresora, etc.
  • 35.  Instrucciones de asignación: Almacena un valor en una variable, perdiéndose cualquier otro valor almacenado en ella.  Instrucciones selectivas: Permiten ejecutar unas u otras tareas de acuerdo al resultado de una expresión condicional  Instrucciones repetitivas: Permiten la repetición de un grupo de instrucciones, generando un bucle (lazo o loop).
  • 36. EJEMPLO DE ALGORITMO Se cuenta con las notas del EP, EF y PP de un alumno. Se sabe que el promedio final (PF) se calcula con la fórmula: PF=(EP+ PP+2EF)/4 Si el alumno cumple con la siguiente condición: PP>6.1 y PF> 6.1 tiene opción a rendir un examen sustitutorio (ES) Escriba un algoritmo reciba las notas del alumno y luego muestre un mensaje indicando si el alumno puede rendir o no puede rendir el ES. En el caso que ya no pueda rendir el ES, debe mostrar también el PF
  • 37. Análisis Datos de entrada: EP, EF, PP Salida: mensaje y PF (si no puede rendir ES) Algoritmo Inicio del algoritmo Ingresar las notas del alumno: EP, EF y PP Calcular PF con la siguiente fórmula: PF = (EP + 2EF + PP)/4 Si cumple la condición PP> 6.1 y PF>6.1entonces mostrar el mensaje “Puede rendir el ES” Si no cumple la condición entonces mostrar el mensaje “No puede rendir ES” y mostrar PF Fin del algoritmo.