Fundamentos de Programacion Semana 1
Fundamentos de Programacion Semana 1
Fundamentos de Programacion Semana 1
INTRODUCCION
SEMANA 1 : SESION 1
CONTENIDO CONCEPTUAL
Programación.
Clasificación de Lenguajes (Leng. Máquina, de Bajo Nivel y de Alto
Nivel).
Etapas del Procesamiento de Datos (Entrada, Procesamiento y Salida).
Ejercicios de etapas del procesamiento de datos.
Ciclo de Vida de un Programa (Análisis, Diseño, Implementación).
Algoritmos: Definición de un algoritmo, tipos de algoritmos (cuantitativo y
cualitativo).
Identificadores (Reglas del identificador).
Datos: tipos, diferencias entre ellas
Sección de declaración: Constates y variables.
Constantes: definición y forma de uso
Variables: definición y forma de uso
Hoy en día es casi imposible pensar en un mundo sin computadoras, sin software
que nos ayude a realizar nuestras tareas cotidianas, laborales y recreativas. En
la presente unidad conoceremos la evolución de la computación desde sus
orígenes hasta la actualidad. Para ello es importante conocer el desarrollo de la
computación y de las tecnologías relacionadas que han permitido realizar
muchas tareas como: la elaboración de diversos tipos de documentos, el envío
y la recepción de correo electrónico la creación de dibujos digitales, la edición de
audio y la impresión de libros, entre muchos otros procesos.
EVOLUCION DE LA COMPUTACION
Aunque las computadoras llevan con nosotros desde hace medio siglo, las raíces
de estos dispositivos se extienden mucho más allá de cuando Charles Babbage
concibió la Máquina analítica en 1823.
Aunque Lady Lovelace predijo que la Máquina analítica podría llegar a componer
música algún día, los científicos y matemáticos que diseñaron y construyeron las
primeras computadoras hace un siglo tenían un objetivo más modesto: crear
máquinas capaces de efectuar cálculos repetitivos. Aun así, sus historias no
están exentas de drama e ironía. He aquí algunas de ellas:
EVOLUCIÓN Y ACELERACIÓN
La invención de las válvulas de vacío, los transistores y los chips de silicio han
tenido un tremendo impacto en nuestra sociedad. Pero el impacto de cualquiera
de ellos no puede compararse con el que tuvo la invención del primer
microprocesador en 1971: el componente crítico de una computadora doméstica
COMPUTACIÓN E INTERCONEXIÓN
estos últimos, muchos usuarios se dieron cuenta que tenían toda la potencia de
computación que necesitaban en sus escritorios. A pesar de ello, también
encontraron que enlazar algunas de estas computadoras en una LAN (Red de
área local, Local Area Network), o red para abreviar, ofrecía muchas ventajas.
Cuando las máquinas se agrupaban, podían compartir recursos como
dispositivos de almacenamiento, impresoras e, incluso, capacidad de
procesamiento. Mediante una red, una única impresora de alta velocidad podía
dar servicio a toda una oficina.
Como premio añadido, la gente podía usar las computadoras para enviar y recibir
mensajes electrónicos a través de las redes. Las ventajas de la comunicación
electrónica y la compartición de recursos se vieron multiplicada cuando las redes
más pequeñas se unieron en otras de mayor tamaño. La aparición de la
tecnología de telecomunicación permitió que las WAN (Red de área amplia, Wide
Area Network) no respetaran ni continentes ni océanos. Una computadora
remota podía conectarse con una red a través de las líneas telefónicas estándar
usando un módem (un dispositivo electrónico que podía convertir los datos de la
computadora en señales compatibles con el sistema telefónico). Los bancos, las
agencias gubernamentales y otras instituciones separadas geográficamente
comenzaron a construir sistemas de procesamiento de información para
beneficiarse de la tecnología de red de larga distancia. Pero fuera de este tipo
de organizaciones, la red era algo «vedado» para el usuario normal.
II. PROGRAMACION
LENGUAJES DE PROGRAMACION
Las secuencias de programación para las acciones más usuales fueron asociadas para
ser denominadas con nombres fáciles de memorizar (como ADD o MUL). Al conjunto de
instrucciones se lo denomina lenguaje ensamblador.
Otro lenguaje de programación importante fue el PASCAL, que apareció en el año 1968.
Este lenguaje de programación se uso como uno de los mejores lenguajes para enseñar
programación a los alumnos.
Los lenguajes de programación son lenguajes creado por el ser humano para poder
comunicarse con las computadoras. Así podríamos decir que lenguaje de programación
es el conjunto de símbolos y palabras que permiten al usuario de una computadora darle
instrucciones y órdenes para que la computadora los ejecute.
Con estos dos únicos dígitos, también conocidos como bits, se forman lo que se conoce
como cadenas binarias (combinaciones de ceros y unos) son con las que se escriben
las instrucciones, y a través de estas instrucciones el microprocesador de la
computadora entiende nuestra peticiones. El lenguaje máquina fue el primer lenguaje
de programación. Este lenguaje de programación dejo de utilizarse por su gran dificultad
y por la facilidad para cometer errores al escribir las cadenas binarias.
2º Lenguajes de programación de bajo nivel: Son mucho mas fáciles de utilizar que
el lenguaje máquina, pero dependen mucho de la máquina o computadora como
sucedía con el lenguaje máquina. El lenguaje ensamblador fue el primer lenguaje de
programación que trato de sustituir el lenguaje máquina por otro lenguaje que fuese más
parecido al de los seres humanos.
En este lenguaje se conoce como programa fuente, que traduce las instruciones a un
programa escrito en lenguaje ensamblador por el programador, y programa objeto es
la traducción a lenguaje máquina del programa fuente.
Los lenguajes de este tipo pueden crear programas muy rápidos, pero son difíciles de
aprender, son específicos de cada procesador (de cada máquina), si nos llevamos el
programa a otro computador será preciso reescribir el programa desde el comienzo.
Los lenguajes de programación de alto nivel son más fáciles de aprender porque se
usan palabras o comandos del lenguaje natural, generalmente del inglés. Este es el
caso del BASIC, el lenguaje de programación más conocido.
Existen muchos lenguajes de programación de alto nivel con sus diferentes versiones.
Por esta razón es difícil su tipificación, pero una clasificación muy extendida desde el
punto de vista de trabajar de los programas y la filosofía de su creación es la siguiente:
El "procesamiento de datos" es el manejo de estos datos en una forma mas útil. Incluye
operaciones por medio de una maquina (ordenador) o manualmente, como cálculos
numéricos, clasificación y transmisión de datos de un lugar a otro, etc. Los sistemas de
procesamiento de datos se pueden clasificar de la siguiente manera:
1. ENTRADA.
Los datos iniciales de entrada se clasifican en forma conveniente para su
procesamiento, dependiendo esto de la maquina que se emplee.
Por ejemplo: Cuando se usan dispositivos electromecánicos, los datos de
entrada se perforan en tarjetas y en las computadoras electrónicas los datos
se registran en discos o cintas.
2. PROCESAMIENTO.
Durante el proceso se ejecutarán las operaciones necesarias para convertir
los datos en información significativa. Cuando la información esté completa
se ejecutará la operación de salida, en la que se prepara un informe que
servirá como base para tomar decisiones.
3. SALIDA.
Se recopila los resultados obtenidos en el proceso. La forma de los datos de
salida depende del empleo que se les vaya a dar a estos.
Por ejemplo: Un resumen impreso de ventas para la gerencia o simplemente
datos que se deben almacenar para procesamientos posteriores.
Fases:
El proceso del desarrollo de software comienza con una fase inicial de planificación, que
incluye un análisis de requisitos. Los clientes pueden tener una idea general del tipo de
producto que necesitan, pero esta información no nos aporta nada de cómo debe ser la
aplicación en realidad. Por ello los profesionales del software se fijan en los requisitos
que piden los clientes para estudiar qué requisitos están incompletos, cuales son
ambiguos y cuales son simplemente contradictorios. Para prevenir que los requisitos
que sean incorrectos, es útil hacer demostraciones prácticas de cómo funcionaría la
aplicación con frecuencia. La siguiente fase sería fijar el alcance del proyecto de
desarrollo y ponerlo por escrito en un documento de forma clara y concisa.
Algoritmo
Herramientas de un algoritmo
1
Siglas del American National Institute.
Diagrama de Flujo
Los diagramas de flujo son una manera de representar visualmente el flujo de datos a través
de sistemas de tratamiento de información. Los diagramas de flujo describen que
operaciones y en que secuencia se requieren para solucionar un problema dado.
Los Diagramas de flujo se dibujan generalmente usando algunos símbolos estándares; sin
embargo, algunos símbolos especiales pueden también ser desarrollados cuando sean
requeridos. Algunos símbolos estándares, que se requieren con frecuencia para diagramar
programas de computadora se muestran a continuación:
Inicio o fin del programa Disco magnético
Dentro de los símbolos fundamentales para la creación de diagramas de flujo, los símbolos
gráficos son utilizados específicamente para operaciones aritméticas y relaciones
condicionales:
+ Suma > Mayor que
- Resta < Menor que
* Multiplicación >= Mayor o igual que
/ División <= Menor o igual que
\ División entera <> Diferente que
^ Exponenciación Y Y lógico
= Igualdad O O lógico
Mod Módulo (resto de una No No lógico
división)
Los Diagramas de flujo2 deben escribirse de arriba hacia abajo, y/o de izquierda a derecha.
Los símbolos se unen con líneas, las cuales tienen en la punta una flecha que indica la
dirección que fluye la información procesos, se deben de utilizar solamente líneas de flujo
horizontal o verticales (nunca diagonales).
Se debe evitar el cruce de líneas, para lo cual se quisiera separar el flujo del diagrama a un
sitio distinto, se pudiera realizar utilizando los conectores. Se debe tener en cuenta que solo
se van a utilizar conectores cuando sea estrictamente necesario. No deben quedar líneas de
flujo sin conectar.
2 Los Diagramas de Flujo han sido elaborados con la Aplicación Diaw.exe 0.97.1.
Todo texto escrito dentro de un símbolo debe ser legible, preciso, evitando el uso de muchas
palabras. Todos los símbolos pueden tener más de una línea de entrada, a excepción del
símbolo final. Solo los símbolos de decisión pueden y deben tener más de una línea de flujo
de salida.
Diagrama flujo Diagrama N-S
n: Entero
r: Cadena
Leer n
F V
Escribir r
Ejemplo de Aplicación
//Variables
n1, n2, s : Entero
//Entrada
Leer n1, n2
//Proceso
s ← n1 + n2
//Salida
Escribir s
Fin
Cuestionario
1 ¿Qué es un algoritmo?
2 ¿Porqué es importante planificar (haciendo uso de algoritmos) una
aplicación?
3 Dados dos números a y b, elabore el algoritmo para hallar el resto.
IDENTIFICADORES
Los Identificadores son palabras que de alguna manera ayudan a identificar a un
conjunto de datos.
Los identificadores tienen las siguientes reglas:
Ejemplos:
Recuerda que debe de respetar las reglas por lo tanto puede ser:
Sueldo
Est_Civil
Sexo
Pagos, etc.
Te damos algunos ejemplos para establecer identificadores corto para los siguientes
ejemplos:
Recuerda que los identificadores son palabras que deberás de definir de acuerdo al
valor que quieras representar.
Ejercicios Propuestos
Tipo de datos
Numéricos
Lógicos
Carácter
Datos numéricos
Numérico entero
Ejm:
Edad
Numérico decimal
Ejm:
Talla
Sueldo
Datos lógicos
El tipo lógico (también denominado booleano) es aquel dato que solo puede tomar
unos de dos valores.
Verdadero (true)
Falso (false)
Este tipo de dato se utiliza para representar las alternativas (si/no) a determinadas
condiciones.
Datos Carácter
El tipo Carácter, es aquel dato que solo puede tomar valores de cadena.
Ejm:
Nombres
Apellidos
Dirección
Ejemplos:
Sexo ____________________
IGV ____________________
Nombres ____________________
Apellidos ____________________
Notas ____________________
Promedio ____________________
Peso de una persona ____________________
Edad ____________________
Tipo de datos
VARIABLES
Nombres de variables
Los nombres de variables en Java se pueden crear con mucha libertad. Pueden ser
cualquier conjunto de caracteres alfabéticos y alfanuméricos, sin algunos caracteres
especiales utilizados por java como operadores o separadores tales como: , . + - * / & “
#, etc. (Excepto _). Los nombres de variables tampoco deben empezar con caracteres
numéricos, ni contenedor en su nombre espacios en blanco.
Existe una serie de palabras reservadas las cuales tienen un significado especial para
Java y por lo tanto no se pueden utilizar como nombres de variables.
Int n1;
Int n1=10;
Char sexo=”F”;
String nombre=”Milenka”;
Constantes
Una constante es una variable que recibe un valor inicial al momento de ser declarada,
y luego de esta no admite cambios, ni alteraciones a dicho dato.
Operadores de Java
Java es un lenguaje rico en operadores, que son casi idénticos a los de C/C++, estos
operadores se describen brevemente en los apartados siguientes.
Operadores Aritméticos
Operadores de Asignación
Variable = Expresión
Ejm:
Int edad;
Edad=23;
Operadores de Incremento
Operadores de Comparación
Operador Significado
== Igual que
< Menor que
<= Menor igual que
> Mayor que
>= Mayor igual que
!= Diferente
Operadores Lógicos
Operadores de Concatenación
El operador más (+) se utiliza también para concatenar (unir) cadenas de caracteres.
AUTOEVALUACIÓN
Apellidos y Nombres :
_____________________________________________________
Carrera : Escuela Tecnológica de la Información
Curso : Fundamentos de Programación I
Seguridad de la Información
Mejorar la Programación
Reducción de espacio físico
Menor codificación
Data ordenada y clasificada
3. ¿Qué es un programa?
conjunto de pedidos que una vez ejecutadas realizarán una o varias tareas.
conjunto de instrucciones que una vez ejecutadas realizarán una o varias
tareas.
conjunto de entradas que una vez ejecutadas realizarán una o varias tareas.
____________________________________
____________________________________
____________________________________
____________________________________
6. ¿Qué es un identificador?
8. ¿Qué es un Dato?
Edad _____________________________________
IGV _____________________________________
Nombre _____________________________________
Dólar _____________________________________
Apellidos _____________________________________