Introducción y Conceptos
generales
ALGORITMOS Y PROGRAMACIÓN DE
COMPUTADORAS.
ARQUITECTURA DE PLATAFORMAS Y SERVICIOS DE TECNOLOGÍAS DE LA
INFORMACIÓN
Ing. Leticia Dávalos Valle
Índice
• Conceptos básicos de informática y la computadora
• Información
• Software
• Lenguajes de programación
Conceptos básicos de Informática
• La informática juega un papel fundamental en nuestra vida
cotidiana y en el desarrollo de la sociedad.
• Permite:
• Acceder a una amplia variedad de herramientas y recursos
• Facilitan la realización de tareas, la comunicación y el acceso a la
información.
¿Qué es Informática?
• Es la ciencia que realiza un tratamiento automático y racional de la
información como soporte de conocimientos y comunicaciones.
INFOR -> Información
MÁTICA -> Automática
• Tratamiento de la Información
• De manera automática
• Mediante el uso de máquinas llamadas ordenadores
Ramas de la Informática
• Ciencias de la computación. Estudia los fundamentos teóricos de la computación,
incluyendo la arquitectura de computadoras, lenguajes de programación,
algoritmos y estructuras de datos.
• Inteligencia artificial. Tiene como objetivo diseñar tecnología que emule la
inteligencia humana mediante la creación de algoritmos y sistemas especializados
• Programación. Estudia los métodos utilizados para escribir programas informáticos.
• Redes. Estudia los sistemas computacionales interconectados.
• Bases de datos. Estudia la forma en que los datos se almacenan y recuperan.
• Sistemas operativos. Estudia los programas que controlan la ejecución de los
procesos informáticos.
INFORMACIÓN:
Es el resultado de procesar y organizar datos de manera
que tenga sentido y sea útil. Los datos en bruto, como
números y caracteres, se transforman en información
significativa a través de algoritmos y técnicas de
procesamiento.
DATOS:
Es una representación simbólica de un
atributo o variable cualitativa o cuantitativa,
que se usa para procesar y manipular la
información mediante el computador.
Pueden ser cualquier número o carácter que
puede representar los valores de las
mediciones o los fenómenos observables. Un
solo dato es una medición de un fenómeno
observable
La Computadora
• Una computadora, computador u
ordenador, es una máquina electrónica
capaz de almacenar grandes volúmenes de
información y tratarla automáticamente
mediante operaciones matemáticas y
lógicas controladas por programas
informáticos.
• Sus partes fundamentales son el hardware
y el software
La Computadora
• En su composición física más
básica se compone:
• CPU
• Memoria Principal
• Unidades de entrada y salida
¿Qué es un algoritmo?
• Es un conjunto preescrito de instrucciones o
secuencias de pasos que resuelve un problema .
• Entre sus características se tiene que debe ser finito,
preciso, definido y legible
PROCESO
Inicio Fin
1°, 2°, …, 10°
Solución
Algoritmo- Suma de dos números
• Inicio: Iniciar el programa.
• Entrada de datos: Solicitar al usuario que ingrese dos números.
• Obtener entrada: Leer y almacenar los dos números ingresados por
el usuario.
• Suma: Sumar los dos números.
• Mostrar resultado: Mostrar el resultado de la suma.
• Fin: Finalizar el programa.
REPRESENTACIÓN DE ALGORITMO -
PSEUDOCODIGO
• Utiliza un lenguaje más
cercano al lenguaje natural
que a un lenguaje de
programación específico.
• Es útil para planificar y
diseñar algoritmos antes de
escribir código real.
REPRESENTACIÓN DE ALGORITMOS – DIAGRAMA
DE FLUJO
• Representaciones
gráficas de los pasos
de un algoritmo.
• Cada paso se
representa con un
símbolo específico y
se conectan con
flechas para mostrar
el flujo del programa.
¿Qué es programa?
• Un programa informático o programa de
computador es una pieza de software, es decir, una
secuencia compleja de instrucciones y procesos
orquestados para cumplir una tarea específica en
un computador o sistema de computadores.
• Estos programas pueden ser programas preinstalados en el
computador, como el Sistema Operativo que controla todo
el funcionamiento del mismo, o pueden ser añadidos
adicionalmente por el usuario.
C # (C Sharp)
LOS LENGUAJES DE PROGRAMACIÓN
• Un lenguaje de programación es un lenguaje informático especialmente diseñado para
describir el conjunto de acciones consecutivas o instrucciones que un equipo informático.
Lenguajes de bajo nivel
Ventajas Desventajas
Aprovechan al máximo las Dependientes de la máquina.
características del hardware.
No se pueden migrar.
Lenguaje Lenguaje Formado por abrev. (letras y
Combinación de 0’s y 1’s números) llamadas mnemotécnicos
máquina ensamblador
Lenguaje de alto nivel
• Más cercanos al lenguaje
natural de las personas
• Independientes de la arquitectura
del ordenador y de su hardware
• Habitualmente requieren un
Compilador o intérprete.
Paradigmas de Programación
Conjunto de principios para diseñar y escribir programas de computadora. Cada
paradigma tiene sus propias reglas, técnicas y estilos de programación que reflejan
diferentes maneras de pensar sobre cómo resolver problemas computacionales.
Un paradigma de programación es un método (o conjunto de principios) para
resolver un problema o realizar una tarea (escribir un programa). Cada paradigma
tiene sus propias reglas, técnicas y estilos de programación que reflejan diferentes
maneras de pensar sobre cómo resolver problemas computacionales. Si bien
existen diferentes lenguajes de programación se necesita un camino, y ese puede
ser los paradigmas.
•
La programación estructurada
•
La programación orientada a objetos
•
La programación funcional
• Programación estructurada:
Está orientada a mejorar la claridad, calidad y tiempo de desarrollo. Es una
forma de escribir programas de computadora deforma clara, utilizando
únicamente tres estructuras: secuencia, selección e iteración.
• Programación por procedimientos:
Agrupa el código en procedimientos, estos son un tipo de funciones o
subrutinas a través de un sistema de pilas. aplicable tanto en lenguajes de
programación de bajo nivel como en lenguajes de alto nivel (programación
funcional).
• Programación orientada a objetos:
Basado en “objetos”, es decir contienen datos y código. Datos en forma de
campos (atributos o propiedades); código en forma de procedimientos
(métodos).
Etapas de la Solución de problemas
Análisis del problema
Diseño del algoritmo
Programación
Ejecución y pruebas
El paso cero sería Entender el problema, parece banal, pero no lo es cuando se
piensa en la gran cantidad de proyectos de computación que se desarrollaron sin
haber comprendido bien para que se hacían, o cual era el problema que
supuestamente iban a resolver.
Comprender la importancia de entender con claridad el problema antes de
abocarnos a encontrar una solución.
Análisis del problema
• El análisis consiste en una clara definición del problema, donde
se contemple exactamente lo que debe hacer el programa y el
resultado o solución deseada.
• Dado que se busca una solución por computadora, se precisan
especificaciones detalladas de entradas y salidas.
• Para resolver un problema con un ordenador hay que disponer
de los datos de entrada, estudiar el tratamiento que se ha de
realizar a dichos datos, la información que se desea obtener
como resultado y de que manera debe presentarse.
Análisis del problema
Es decir, después de analizar el problema, se han de conocer
claramente tres cosas.
●
Datos de Entrada de que se dispone
●
Proceso o Tratamiento que ha de realizarse con estos datos.
●
Información de salida deseada.
Ejemplo
• Se requiere hacer la nómina de los mejores alumnos de
una carrera, se necesita saber:
¿Qué debemos hacer?
Especificaciones de Entrada Especificaciones de salida
¿Qué datos son de entrada? ¿Cuáles son los datos de salida?
¿Cuántos datos se introducirán? ¿Cuántos datos de salida se
¿Cuántos datos son válidos? producirán?
¿Qué precisión tendrán los resultados?
Proceso ¿Se debe imprimir una cabecera?
¿Qué método produce la salida?
Ejemplo
• Se requiere hacer la nómina de los mejores alumnos de
una carrera, se necesita saber:
SOLUCIÓN
ENTRADAS Los datos de cada uno de los alumnos con está la información
auxiliar de registro de evaluación(Nombres, registro de notas,
año, etc.)
PROCESO La fórmula matemática para calcular el promedio de notas (nota 1
+ nota 2 + nota 3 + .....+ nota n) / cantidad de notas
SALIDA Informe final de alumnos ordenado de manera descendente de
acuerdo al promedio de los alumnos obtenido
Ejemplo
• Se requiere un programa que logre mostrar en pantalla la
superficie de un rectángulo proporcionándole su base y
altura.
Análisis de los datos de entrada, proceso y salida
¿Qué datos son de Base , Altura
Entrada entrada?
Cantidad 2
Método a utilizar Superficie (área) = Base X altura
Proceso
Cantidad 1
¿Qué datos de salida se Impresión en pantalla del área del
Salida producirá? rectángulo
Cantidad 1
Ejemplo 3
• Se requiere un programa que logre mostrar en pantalla
permita ingresar mediante teclado 2 números enteros y
nos permita obtener la suma, resta, multiplicación y
división de estos números.
Análisis de los datos de entrada, proceso y salida
¿Qué datos son de entrada? Numero 01, Numero 02
Entrada
Cantidad 2
Método a utilizar Suma= Numero01+Numero02
Resta = Numero01-Numero02
Proceso Multiplicación=Numero01*Numero02
División=Numero01/Numero02
Cantidad 4
¿Qué datos de salida se Impresión en pantalla de la Suma, Resta,
Salida producirá? Multiplicación, División
Cantidad 4
Ejercicio 01
• Imagine que se le pide presentar un informe final para el
curso de programación conteniendo la siguiente
información: el primer puesto, la media aritmética de la
clase, la moda, el porcentaje de alumnos promovidos.
Ejercicio 02
• Un conductor necesita calcular cuántos litros de
combustible consumirá en un viaje determinado en
automóvil, dados la distancia del viaje y el rendimiento
del vehículo en kilómetros por litro. Rendimiento
vehicular esta dado por la distancia recorrida en
kilómetros por litro de combustible consumido
Rendimiento = distancia/combustible consumido
(Un automóvil tiene una capacidad de 30 litros de bencina en su
tanque y que luego de llenarlo pudiste recorrer 450 kilómetros)
Ejercicio 03
• Un estudiante necesita calcular su promedio académico y
determinar si cumple con los requisitos de una beca,
utilizando sus calificaciones en diferentes asignaturas y los
criterios de elegibilidad de la beca.
• Debe estar cursando IV-VI ciclo del programa de estudios en el
periodo 2023-II
• Por semestre académico se evalúan 3 indicadores de logro.
• El promedio del periodo académico 2023-II debe ser mayor o
igual a 15
Ejercicio 04
1. Imagine que se le pide elaborar un programa para una
empresa que le permita calcular la edad actual de la
persona y también te pide la fecha de inicio de labores de
cada uno de los trabajadores ¿Qué información podrías
reportar con estos datos?
Ejercicio 05
1. Mario García trabaja en una academia. Su jornada laboral
es de Lunes a Viernes. Se le pide que presente un informe
con la cantidad de alumnos inscritos en la última semana
y que calcule el promedio de alumnos inscritos al día.
Imagina que trabajas en una empresa y
te piden reportar lo siguiente:
- Porcentaje de hombres que trabajan por
oficina
- Cantidad de mujeres que se encuentran en el
rango de 25 a 40 años.
- Cantidad de personas que se encuentran
laborando mas de 5 años en la empresa
- Promedio del sueldo de empleado por oficina
¿Qué datos necesitarías recopilar para cada uno
de los reportes solicitados?, ¿Cómo debes
procesar estos datos para obtener la
información deseada?
Ejercicio Propuestos
1. Se requiere un programa que calcule la distancia entre dos puntos
en un plano cartesiano dados sus coordenadas (x, y).
2. Se requiere un programa que convierta una temperatura en grados
Celsius a grados
3. Se requiere un programa que calcule el salario semanal de un
empleado dado su salario por hora y el número de horas
trabajadas.
4. Se requiere un programa que calcule el área de un círculo y el
perímetro de un cuadrado dados sus respectivos radios y lados.
Ejercicio Propuestos
1. Se requiere un programa que convierta una cantidad de dólares a
Soles utilizando un tipo de cambio dado.
2. Se requiere un programa que verifique si un número dado es par o
impar.