algoritmos introducción a la computación. semana 05 objetivos: desarrollo de conceptos básicos: -...
TRANSCRIPT
ALGORITMOSALGORITMOS
Introducción a la Computación
Semana 05
Objetivos:
• Desarrollo de conceptos básicos:- Algoritmos - Pseudocodigo- Diagrama de Flujo - Programación (en Java y C++)
• Visualización de Datos
• Empleo de Comentarios
Introducción a la Computación
DescripciónProblema
DefiniciónSolución
DiseñoSolución
DesarrolloSolución
DepuraciónPruebas
Document.
Ingeniería reversa
Método de las 6’D
n veces
MÉTODO PARA LA SOLUCION DE PROBLEMAS UTILIZANDO LA COMPUTADORA
Etapa 01
Etapa 02
Etapa 03
Etapa 04
Etapa 05
Etapa 06
ALGORITMO
Desarrollosolución
PROGRAMACION
PSEUDOCODIGO
DIAGRAMAS DE FLUJO
JAVA
LENGUANJE C++
Método de las 6’D
Diseñosolución
Herramientas: Lenguajes de Programación:
Etapas para la solución de problemas
Definición:
El algoritmo constituye una lista completa de pasos secuenciales y una descripción de datos necesarios para resolver un determinado problema.
• Una lista de pasos secuenciales que deben ser ejecutados.
• Una descripción de los datos que son manipulados por estos pasos.
ALGORITMO - CONCEPTOS BÁSICOS
ALGORITMO
Características:
• Una descripción de acciones que deben ser ejecutadas (Pasos Secuenciales).
• Una descripción de los datos que son manipulados por estas acciones (Estructuras de Datos).
• Un algoritmo debe ser preciso indicando el orden de realización de cada paso.
• Todo algoritmo debe ser finito. Si se sigue un algoritmo este debe terminar en algún momento.
• Un algoritmo debe estar definido. Si se sigue un algoritmo dos veces se debe obtener el mismo resultado.
ALGORITMO - CONCEPTOS BÁSICOS
Algoritmo
• Un algoritmo puede tener o no datos de entrada.
• Un algoritmo producirá uno o mas datos de salida.
• Los datos de entrada y salida deben almacenarse en variables.
• El resultado que se obtenga debe satisfacer los requerimientos de la persona interesada (efectividad).
• Debe ser estructurado. Es decir, debe ser fácil de leer, entender, usar y cambiar si es preciso.
ALGORITMO - CONCEPTOS BÁSICOS
Características:
Algoritmo
Se dispone de diversas herramientas para ayudar a los programadores a desarrollar los algoritmos.
Herramientas:
Algoritmos
Pseudocódigo
Diagrama de flujo
ALGORITMO - CONCEPTOS BÁSICOS
Herramientas:
Algoritmo
Un pseudocódigo permite expresar un algoritmo con palabras en castellano que son semejantes a las instrucciones de un lenguaje de programación.
Algoritmo Mensaje
ENTRADA: sueldoSALIDA: sueldo
INICIOREAL sueldosueldo = 0LEER sueldosueldo = sueldo * 0.85ESCRIBIR sueldo
FIN
ALGORITMO - CONCEPTOS BÁSICOS
Algoritmo - PSEUDOCÓDIGO
Definición:
ALGORITMO - CONCEPTOS BÁSICOS
Algoritmo - PSEUDOCÓDIGO
Reglas básicas
ENTRADA En este se consideran las variables que serán utilizadas para almacenar los datos ingresados por el usuario
SALIDA En este se consideran las variables que serán utilizadas para almacenar los datos que serán mostrados al usuario
INICIO/FIN Estas reglas especifican el inicio y el final del algoritmo. Todas las instrucciones se colocan entre estas reglas y constituyen el cuerpo del algoritmo. En el cuerpo del algoritmo se encontrarán los pasos a seguir para el desarrollo de la solución.
ALGORITMO - CONCEPTOS BÁSICOS
Algoritmo – DIAGRAMA DE FLUJO
Definición:
Es una herramienta que mediante el empleo de símbolos especializados y líneas de flujo, nos permite ilustrar el flujo lógico de pasos y datos de un algoritmo.
INICIO
LEER i
i<100
i = i*1.20
FIN
IMPRIMIR
ENTERO i
Símbolos básicosINICIO / FIN
Este símbolo permite marcar el inicio y el final del algoritmo
ENTRADA Este símbolo es empleado para el ingreso de datos y la visualización de la información que resulta del procesamiento
SALIDA Este símbolo es empleado para la visualización de la información que resulta del procesamiento
DECISION
Permite seleccionar entre dos posibles alternativas de solución
PROCESO
Empleado para signar valores a variables y resultado de operaciones matemáticas
FLUJOS (LINEAS)
Permiten unir los diagramas y mostrar la secuencia lógica de la solución del problema
CONECTOR
Permiten unir los diagramas y mostrar la secuencia lógica de la solución del problema
ESTRUCTURAS DE DATOS
ALGORITMO - CONCEPTOS BÁSICOS
PROGRAMACION
La programación es la traducción del modelamiento y los algoritmos en sentencias que la computadora puede comprender y ejecutar.
En términos sencillo es la acción de escribir programas para una computadora utilizando alguno de los lenguajes de programación existentes.
ALGORITMO - CONCEPTOS BÁSICOS
PROGRAMACION – Java
Definición:Java es un lenguaje de Programación Orientado a Objetos desarrollado por Sun Microsystems.
Es un lenguaje de propósito general que puede ser utilizado para el desarrollar cualquier tipo de aplicaciones.
package domApli ;
class PrgBienvenida {
public static void main (String arg [] ) {
}}
Estructura básica:
ALGORITMO - CONCEPTOS BÁSICOS
PROGRAMACION – C++
Definición:“C” es un lenguaje de Programación de propósito general desarrollado en los laboratorios de Bell en 1983.
C++ es un lenguaje orientado a objetos y es una versión ampliada y mejorada del Lenguaje C.
#include <iostream>
using namespace std ;
int main( ) { return 0 ;
}
Estructura básica:
ESTRUCTURAS LÓGICAS
La visualización de datos nos permite mostrar los datos a través de la pantalla de la computadora.
VISUALIZACIÓN DE DATOS
Definición:
ESTRUCTURAS LÓGICAS
Visualización de datos
System.out.print (nombreVariable) ;
System.out.print (x + 2);
System.out.print ( “Hola” ) ;
ESCRIBIR nombreVariable
ESCRIBIR x + 2
ESCRIBIR “Hola”
En Pseudocódigo
En Java – Clase System En “C” – cout<<
En DF
cout << nombreVariable ;
cout << (x + 2);
cout << “Hola” ;
Previamente antes de la declaración de main() debe colocarse #include <iostream.h> y using std::cout;
nombreVariable
x + 2
“Hola”
ESTRUCTURAS LÓGICAS
Visualización de datos
Ejemplo: Desarrollo una solución que permita mostrar el saludo “Bienvenidos al desarrollo de algoritmos”
Algoritmo Saludo
ENTRADA: SALIDA: “Bienvenidos al desarrollo de algoritmos”
INICIOESCRIBIR “Bienvenidos al desarrollo de algoritmos”
FIN
INICIO
FIN
“Bienvenidos al desarrollo de algoritmos”
ESTRUCTURAS LÓGICAS
JAVA
package dominioDeLaAplicacion ;class PrgSaludo {
public static void main (String arg [] ) { System.out.print (“Bienvenidos al desarrollo de algoritmos”) ; }}
“C”
#include <iostream>using std::cout ;
int main ( ) { cout << “Bienvenidos al desarrollo de algoritmos” ; return 0;}
ESTRUCTURAS LÓGICAS
Ejemplo: Desarrollo una solución que permita mostrar el saludo: “Bienvenidos al desarrollo de algoritmos estamos creando una segunda línea”
package dominioDeLaAplicacion ;class PrgSaludo2 {
public static void main (String arg [] ) { System.out.println ( “Bienvenidos al desarrollo de algoritmos”) ; System.out.print ( “Estamos mostrando datos en la segunda línea”) ; }}
#include <iostream>using std::cout ;using std::endl ;
int main ( ) { cout << “Bienvenidos al desarrollo de algoritmos” << endl ; cout << “Estamos mostrando datos en la segunda línea”;
return 0;}
JAVA
C++
ESTRUCTURAS LÓGICAS
Visualización de datos / Modificadores \n \t
package dominioDeLaAplicacion ;class PrgSaludo2 {
public static void main (String arg [] ) { System.out.print (“Bienvenidos al desarrollo de algoritmos \n estamos creando
una segunda línea”) ; }}
#include <iostream>using std::cout ;
int main () { cout << “Bienvenidos al desarrollo de algoritmos \n estamos creando una segunda
línea” ;
return 0;}
\n : Permite crear una línea adicional, similar al System.out.println y a endl
\t : Permite hacer una tabulación.
JAVA
C++
ESTRUCTURAS LÓGICAS
package dominioDeLaAplicacion ;class PrgSaludos {
public static void main (String arg [] ) { System.out.print ( “nombre: \ t Danae Flores \ n ”) ; System.out.print (“Edad: \ t 11 años”) ; }
}
\t : Permite crear un espacio de tabulación antes de iniciar el párrafo que esta a continuaciónNombre: Danae FloresEdad: 11 años
Visualización de datos / Modificadores \n \t
#include <iostream>using std::cout ;
int main ( ) { cout << “nombre: \ t Danae Flores \ n ” ; cout << “Edad: \ t 11 años” ; return 0 ; }
JAVA
C++
ESTRUCTURAS LÓGICAS
COMENTARIOS
// Este es un comentario de una línea
/ * Este es un comentario para múltiples líneas */
En Pseudocódigo
En Java En “C++”
En DF
// Este es un comentario de una línea
/ * Este es un comentario para múltiples líneas */
COMENTARIO Este es un comentario Este es un comentario
ESTRUCTURAS LÓGICAS
/* Este programa, permitira mostra un mensaje empleandolos modificadores \n y \t */
public static void main (String arg [] ) {
// Visuaización de datosSystem.out.print (“nombre: \ t Danae Flores \n Edad: \ t 11 años”);
}
/* Este programa, permitira mostra un mensaje empleandolos modificadores \n y \t */
#include <iostream> using std::cout ;
int main ( ) { // Visuaización de datos cout << “nombre: \ t Danae Flores \n Edad: \ t 11 años” ; return 0; }
JAVA
C++
Libros de Consulta