SlideShare une entreprise Scribd logo
1  sur  23
Metodología de la
Programación
Pasos a seguir para el desarrollo de un
programa (fases):

– Análisis del problema.
– Diseño de el/los algoritmos.
– Codificación del programa.
– Compilación.
– Verificación/depuración.
– Documentación.
Ejemplo
– Leer el radio de un círculo y calcular e imprimir su
  superficie y la longitud de
la circunferencia.
• Análisis
– Entradas: Radio del círculo (variable RADIO).
– Salidas: Superficie del círculo (variable AREA),
  Circunferencia del círculo
(variable CIRCUNFERENCIA).
– Variables: RADIO, AREA, CIRCUNFERENCIA
  (tipo real).
Diseño de el/los algoritmos
– Conjunto preescrito de operaciones (reglas o
  instrucciones) bien
definidas para resolver un problema en un
  número finito de pasos
– Un algoritmo: Finito (Resultado en el tiempo),
  Definido (No puede ser
ambiguo), Preciso (ejecución paso a paso).
– El diseño del algoritmo es bastante
  independiente del lenguaje de
programación (sí depende del enfoque)
– Definir paso a paso con detalle
– Diseño descendente o modular:
Algoritmo
Diagrama de flujo
Opciones De Diagramas de Flujo
Pseudocódigo
Se trata de un lenguaje imitación del de un ordenador.
No está estandarizado.
• Cada programador tiene el propio.
• Mezcla de lenguaje natural, símbolos, términos y
características de varios lenguajes de programación.
Codificación del programa
– Escribir el algoritmo en un lenguaje de programación
• Permite ser leído y ejecutado por el ordenador.
– Tipos de lenguajes:
• De bajo nivel (dependen de la máquina sobre la que se ejecuta):
– Lenguaje Máquina (escritura en binario)
– Ensambladores: (escritura simbólica)
• De alto nivel (no dependen de la máquina):
– Imperativos:
Estructurados Orientados a Objeto
• FORTRAN i Java
• C i C++
• PASCAL i Ada 95
– Declarativos:
• LISP / PROLOG
– La salida de la fase de codificación son los programas fuente (que todavía no se
pueden ejecutar directamente sobre el ordenador)
– Un programa se compone de un conjunto de instrucciones que indican las
operaciones elementales a ejecutar y la manera en que se encadenan.
Compilación y enlace
– Salvo que el programa se escriba directamente en lenguaje
máquina (muy improbable) siempre debe existir un
traductor.
– La fase de compilación y enlace permite leer el programa
escrito en lenguaje de alto nivel y traducirlo a lenguaje
maquina.
– Hay tres tipos de traductores:
     – Compiladores.
     – Interpretes.
     – Ensambladores
Compilación
(Fases de un compilador)
Compilación y enlace
Verificación/depuración
– Errores en tiempo de ejecución
• división por cero, apertura de ficheros
  inexistentes,...
– Errores lógicos (los más difíciles de
  detectar)
• Resultados incorrectos
– Optimización del algoritmo.
Compilación y enlace +
Verificación y depurado
Documentación
– Se genera a lo largo de todas la fases
– Debe permitir acceder al programa a una persona
   distinta al
programador.
– Interna:
      – Código de programa fuente
      – Comentarios
– Externa:
• Especificación de requisitos
• Listado de programa fuente
• Explicación de los algoritmos (CLARO y CONCISO)
• Diagramas de flujo o pseudocódigo.
• Especificación de datos, formatos de pantalla,...
• ...
Programación Estructurada
• Teorema de la Programación Estructurada
Todo algoritmo puede ser descrito utilizando
solamente tres tipos De estructuras de control:
secuencial, alternativa, y repetitiva.
• Secuencia
– Todas las acciones se ejecutan
sucesivamente, una a continuación
de otra sin posibilidad de
bifurcaciones.
• Sentencias Alternativa
– Una estructura alternativa bifurca el
flujo de un algoritmo según se
cumplan una o varias condiciones.
Sentencias Repetitivas:
– Una estructura de control repetitiva permite ejecutar una
   o varias
acciones un número de veces que puede estar definido a
   priori o
indefinido hasta que se cumpla una determinada
   condición.
Tipos de sentencias de control repetitivas:
– PARA: El nº de repeticiones se conoce antes de
   iniciar el bucle.
– MIENTRAS: Repite las acciones mientras la
   condición se cumple.
– HACER MIENTRAS: Se realiza siempre una vez la
   acción y luego se
vuelve a realizar mientras la condición se cumpla
– REPETIR HASTA: Repite las acciones mientras la
   condición sea
falsa (no existe en C)
Ejemplo
   • Diseñar un algoritmo que resuelva una ecuación de
    segundo grado:
   – Datos de entrada:
   • Coeficientes a,b,c
   – Datos de salida:
   • Soluciones de la ecuación si las hay
   – Nota:
   • El algoritmo únicamente resolverá la ecuación en el
   caso de existir 2 soluciones diferentes (opción 1)
   • En cualquier otro caso mostrara un mensaje de error.
   • Diseñar el algoritmo para hacer una tortilla de patata
   • Diseñar el algoritmo que resuelva la ecuación de
    segundo grado
   dando todas las posibles soluciones (opción 2).
   Ejemplo (opción 1):
   Ecuación de Segundo Grado – Pseudocódigo
   Algoritmo „Ecuación de segundo grado‟
   {Cálculo de una ecuación de segundo grado}
   Variables
   a, b, c; /*Introducir las constantes con sus signos*/
   x1, x2 /*Valores de Salida*/
   Inicio
   Escribir (“Introduzca dato A:”); /*Entrada de Datos*/
   Leer (a);
   Escribir (“Introduzca dato B:”);
   Leer (b);
   Escribir (“Introduzca dato C:”);
   Leer (c);
   Si (a != 0) entonces
   Si (b2-4*a*c > 0) /*Condición para evitar la raíz cuadrada de
   un nº negativo*/
   x1:=(-b+sqrt((b*b)-(4*a*c)))/(2*a);
   x2:=(-b-sqrt((b*b)-(4*a*c)))/(2*a);
   Escribir („Valor x1=„,x1,‟y Valor x2=„,x2);
   sino /* Raíz negativa */
   Escribir (“Datos Incorrectos”);
   fin_si
   sino
   Escribir (“ No se trata de una ecuación de 2º grado”)
   fin_si
   Fin

Contenu connexe

Tendances

Aula 2 - Introdução à programação de computadores - parte 2
Aula 2 - Introdução à programação de computadores - parte 2Aula 2 - Introdução à programação de computadores - parte 2
Aula 2 - Introdução à programação de computadores - parte 2
Pacc UAB
 
Unidade iii tipos de softwares
Unidade iii   tipos de softwaresUnidade iii   tipos de softwares
Unidade iii tipos de softwares
Daniel Moura
 
Presentacion analisis y diseño de sistemas
Presentacion analisis y diseño de sistemasPresentacion analisis y diseño de sistemas
Presentacion analisis y diseño de sistemas
Maria Jimenez
 
Agentes Inteligentes - IA
Agentes Inteligentes - IAAgentes Inteligentes - IA
Agentes Inteligentes - IA
Thiago Marinho
 
Aula 3 - Algoritmos computacionais - parte 2
Aula 3 - Algoritmos computacionais - parte 2Aula 3 - Algoritmos computacionais - parte 2
Aula 3 - Algoritmos computacionais - parte 2
Pacc UAB
 
Fundamentos de Programacion
Fundamentos de ProgramacionFundamentos de Programacion
Fundamentos de Programacion
neyvajms
 
Introdução à Engenharia de Software
Introdução à Engenharia de SoftwareIntrodução à Engenharia de Software
Introdução à Engenharia de Software
Nécio de Lima Veras
 
Aula 2 - Introdução à programação de computadores - parte1
Aula 2 - Introdução à programação de computadores - parte1Aula 2 - Introdução à programação de computadores - parte1
Aula 2 - Introdução à programação de computadores - parte1
Pacc UAB
 
Backpropagation con momentum
Backpropagation  con momentumBackpropagation  con momentum
Backpropagation con momentum
ESCOM
 

Tendances (20)

Aula 2 - Introdução à programação de computadores - parte 2
Aula 2 - Introdução à programação de computadores - parte 2Aula 2 - Introdução à programação de computadores - parte 2
Aula 2 - Introdução à programação de computadores - parte 2
 
Unidade iii tipos de softwares
Unidade iii   tipos de softwaresUnidade iii   tipos de softwares
Unidade iii tipos de softwares
 
Presentacion analisis y diseño de sistemas
Presentacion analisis y diseño de sistemasPresentacion analisis y diseño de sistemas
Presentacion analisis y diseño de sistemas
 
Material Algoritmos e Estruturas de Dados - 1º Bimestre
Material Algoritmos e Estruturas de Dados - 1º BimestreMaterial Algoritmos e Estruturas de Dados - 1º Bimestre
Material Algoritmos e Estruturas de Dados - 1º Bimestre
 
Aula 01 - Algoritmo e Programação
Aula 01 - Algoritmo e ProgramaçãoAula 01 - Algoritmo e Programação
Aula 01 - Algoritmo e Programação
 
Lógica de programação { para iniciantes }
Lógica de programação { para iniciantes }Lógica de programação { para iniciantes }
Lógica de programação { para iniciantes }
 
Aula Lógica de Programação - cap1
Aula Lógica de Programação - cap1 Aula Lógica de Programação - cap1
Aula Lógica de Programação - cap1
 
Agentes Inteligentes - IA
Agentes Inteligentes - IAAgentes Inteligentes - IA
Agentes Inteligentes - IA
 
Engenharia de Software para Jogos
Engenharia de  Software para JogosEngenharia de  Software para Jogos
Engenharia de Software para Jogos
 
Aula 3 - Algoritmos computacionais - parte 2
Aula 3 - Algoritmos computacionais - parte 2Aula 3 - Algoritmos computacionais - parte 2
Aula 3 - Algoritmos computacionais - parte 2
 
La maquina de Turing, sus tipos y aplicaciones.
La maquina de Turing, sus tipos y aplicaciones.La maquina de Turing, sus tipos y aplicaciones.
La maquina de Turing, sus tipos y aplicaciones.
 
Lógica de Programação e Algoritmos
Lógica de Programação e AlgoritmosLógica de Programação e Algoritmos
Lógica de Programação e Algoritmos
 
Fundamentos de Programacion
Fundamentos de ProgramacionFundamentos de Programacion
Fundamentos de Programacion
 
Aula 04 coneitos de auditoria de sistemas
Aula 04   coneitos de auditoria de sistemasAula 04   coneitos de auditoria de sistemas
Aula 04 coneitos de auditoria de sistemas
 
Introdução à Engenharia de Software
Introdução à Engenharia de SoftwareIntrodução à Engenharia de Software
Introdução à Engenharia de Software
 
Metodologia orientada a objeto
Metodologia orientada a objetoMetodologia orientada a objeto
Metodologia orientada a objeto
 
Logica Programação. ...
Logica Programação. ...Logica Programação. ...
Logica Programação. ...
 
Aula 2 - Introdução à programação de computadores - parte1
Aula 2 - Introdução à programação de computadores - parte1Aula 2 - Introdução à programação de computadores - parte1
Aula 2 - Introdução à programação de computadores - parte1
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Backpropagation con momentum
Backpropagation  con momentumBackpropagation  con momentum
Backpropagation con momentum
 

En vedette

Distribuciones de software libre
Distribuciones de software libreDistribuciones de software libre
Distribuciones de software libre
magisterioinfantil
 
Metodologia para el analisis y planteamiento del problema
Metodologia para el analisis y planteamiento del problemaMetodologia para el analisis y planteamiento del problema
Metodologia para el analisis y planteamiento del problema
yenmary
 
Ejemplo de una introduccion
Ejemplo de una introduccionEjemplo de una introduccion
Ejemplo de una introduccion
Mechi Ra
 
Sofware Libre Y Comercial
Sofware Libre Y ComercialSofware Libre Y Comercial
Sofware Libre Y Comercial
gueste4801f
 

En vedette (19)

Conceptos básicos y metodología de la programación
Conceptos básicos y metodología de la programaciónConceptos básicos y metodología de la programación
Conceptos básicos y metodología de la programación
 
Metodologia de la programacion a traves del pseudocodigo miguel angel rodri...
Metodologia de la programacion a traves del pseudocodigo   miguel angel rodri...Metodologia de la programacion a traves del pseudocodigo   miguel angel rodri...
Metodologia de la programacion a traves del pseudocodigo miguel angel rodri...
 
Distribuciones de software libre
Distribuciones de software libreDistribuciones de software libre
Distribuciones de software libre
 
Software de programacion
Software de programacionSoftware de programacion
Software de programacion
 
Metodologia
MetodologiaMetodologia
Metodologia
 
Software de programación
Software de programaciónSoftware de programación
Software de programación
 
Metodologia para el analisis y planteamiento del problema
Metodologia para el analisis y planteamiento del problemaMetodologia para el analisis y planteamiento del problema
Metodologia para el analisis y planteamiento del problema
 
Algorítmos - Conceptos básicos
Algorítmos - Conceptos básicosAlgorítmos - Conceptos básicos
Algorítmos - Conceptos básicos
 
Software Libre y Software Comercial.
Software Libre y Software Comercial.Software Libre y Software Comercial.
Software Libre y Software Comercial.
 
Programacion Extrema
Programacion ExtremaProgramacion Extrema
Programacion Extrema
 
Metodologias agiles
Metodologias agilesMetodologias agiles
Metodologias agiles
 
Metodologias agiles
Metodologias agilesMetodologias agiles
Metodologias agiles
 
Metodología orientadas a objetos
Metodología orientadas a objetosMetodología orientadas a objetos
Metodología orientadas a objetos
 
Ejemplo de una introduccion
Ejemplo de una introduccionEjemplo de una introduccion
Ejemplo de una introduccion
 
Diagrama de Flujos Ejemplos.
Diagrama de Flujos Ejemplos.Diagrama de Flujos Ejemplos.
Diagrama de Flujos Ejemplos.
 
Sofware Libre Y Comercial
Sofware Libre Y ComercialSofware Libre Y Comercial
Sofware Libre Y Comercial
 
Metodologias agiles Programacion Xtrema
Metodologias agiles Programacion Xtrema Metodologias agiles Programacion Xtrema
Metodologias agiles Programacion Xtrema
 
Software online
Software onlineSoftware online
Software online
 
Modelado Orientado a Objetos
Modelado Orientado a ObjetosModelado Orientado a Objetos
Modelado Orientado a Objetos
 

Similaire à Metodología de la programación

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
Boris Salleg
 
Diagramas flujo
Diagramas flujoDiagramas flujo
Diagramas flujo
infobran
 
Programación modular estructurada.ppt
Programación modular estructurada.pptProgramación modular estructurada.ppt
Programación modular estructurada.ppt
Leydi Hernandez
 

Similaire à Metodología de la programación (20)

Tema 4 -_introduccion_a_razonamiento_algoritmico
Tema 4 -_introduccion_a_razonamiento_algoritmicoTema 4 -_introduccion_a_razonamiento_algoritmico
Tema 4 -_introduccion_a_razonamiento_algoritmico
 
Desarrollo de lógica algorítmica_PARTE 1.PPTX
Desarrollo de lógica algorítmica_PARTE 1.PPTXDesarrollo de lógica algorítmica_PARTE 1.PPTX
Desarrollo de lógica algorítmica_PARTE 1.PPTX
 
Algoritmos (DFD, Pseudocodigos).pptx
Algoritmos (DFD, Pseudocodigos).pptxAlgoritmos (DFD, Pseudocodigos).pptx
Algoritmos (DFD, Pseudocodigos).pptx
 
Unidad 1
Unidad 1Unidad 1
Unidad 1
 
Semana 1 - Principios de Algoritmos.pdf
Semana 1 - Principios de Algoritmos.pdfSemana 1 - Principios de Algoritmos.pdf
Semana 1 - Principios de Algoritmos.pdf
 
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
 
Programación
ProgramaciónProgramación
Programación
 
Algoritmo
AlgoritmoAlgoritmo
Algoritmo
 
Algoritmos con decisiones.pptx
Algoritmos con decisiones.pptxAlgoritmos con decisiones.pptx
Algoritmos con decisiones.pptx
 
Desarrollo de lógica algorítmica
Desarrollo de lógica algorítmicaDesarrollo de lógica algorítmica
Desarrollo de lógica algorítmica
 
01_IntroduccionAlgoritmos (1).pdf
01_IntroduccionAlgoritmos (1).pdf01_IntroduccionAlgoritmos (1).pdf
01_IntroduccionAlgoritmos (1).pdf
 
Algoritmos y pseudocodigo imagenes
Algoritmos y pseudocodigo imagenesAlgoritmos y pseudocodigo imagenes
Algoritmos y pseudocodigo imagenes
 
Algoritmos y pseudocodigo
Algoritmos y pseudocodigoAlgoritmos y pseudocodigo
Algoritmos y pseudocodigo
 
Unidad 2
Unidad 2Unidad 2
Unidad 2
 
Algoritmos y programacion en C++
Algoritmos y programacion en C++Algoritmos y programacion en C++
Algoritmos y programacion en C++
 
02 algoritmos
02 algoritmos02 algoritmos
02 algoritmos
 
Diagramas flujo
Diagramas flujoDiagramas flujo
Diagramas flujo
 
Programación modular estructurada.ppt
Programación modular estructurada.pptProgramación modular estructurada.ppt
Programación modular estructurada.ppt
 
TEMA11.ppt
TEMA11.pptTEMA11.ppt
TEMA11.ppt
 
Clase 2
Clase 2Clase 2
Clase 2
 

Plus de Ansd

Programa 10
Programa 10Programa 10
Programa 10
Ansd
 
Programa 9
Programa 9Programa 9
Programa 9
Ansd
 
Programa 8
Programa 8Programa 8
Programa 8
Ansd
 
Programa 7
Programa 7Programa 7
Programa 7
Ansd
 
Programa 6
Programa 6Programa 6
Programa 6
Ansd
 
Programa 5
Programa 5Programa 5
Programa 5
Ansd
 
Programa 4
Programa 4Programa 4
Programa 4
Ansd
 
Programa 3
Programa 3Programa 3
Programa 3
Ansd
 
Programa 2
Programa 2Programa 2
Programa 2
Ansd
 
Programa1
Programa1Programa1
Programa1
Ansd
 
Reporte dfd
Reporte dfdReporte dfd
Reporte dfd
Ansd
 
Ensayo de el pensamiento logico aplicado a la programacion
Ensayo de el pensamiento logico aplicado a la programacionEnsayo de el pensamiento logico aplicado a la programacion
Ensayo de el pensamiento logico aplicado a la programacion
Ansd
 

Plus de Ansd (12)

Programa 10
Programa 10Programa 10
Programa 10
 
Programa 9
Programa 9Programa 9
Programa 9
 
Programa 8
Programa 8Programa 8
Programa 8
 
Programa 7
Programa 7Programa 7
Programa 7
 
Programa 6
Programa 6Programa 6
Programa 6
 
Programa 5
Programa 5Programa 5
Programa 5
 
Programa 4
Programa 4Programa 4
Programa 4
 
Programa 3
Programa 3Programa 3
Programa 3
 
Programa 2
Programa 2Programa 2
Programa 2
 
Programa1
Programa1Programa1
Programa1
 
Reporte dfd
Reporte dfdReporte dfd
Reporte dfd
 
Ensayo de el pensamiento logico aplicado a la programacion
Ensayo de el pensamiento logico aplicado a la programacionEnsayo de el pensamiento logico aplicado a la programacion
Ensayo de el pensamiento logico aplicado a la programacion
 

Metodología de la programación

  • 2. Pasos a seguir para el desarrollo de un programa (fases): – Análisis del problema. – Diseño de el/los algoritmos. – Codificación del programa. – Compilación. – Verificación/depuración. – Documentación.
  • 3.
  • 4. Ejemplo – Leer el radio de un círculo y calcular e imprimir su superficie y la longitud de la circunferencia. • Análisis – Entradas: Radio del círculo (variable RADIO). – Salidas: Superficie del círculo (variable AREA), Circunferencia del círculo (variable CIRCUNFERENCIA). – Variables: RADIO, AREA, CIRCUNFERENCIA (tipo real).
  • 5. Diseño de el/los algoritmos – Conjunto preescrito de operaciones (reglas o instrucciones) bien definidas para resolver un problema en un número finito de pasos – Un algoritmo: Finito (Resultado en el tiempo), Definido (No puede ser ambiguo), Preciso (ejecución paso a paso). – El diseño del algoritmo es bastante independiente del lenguaje de programación (sí depende del enfoque) – Definir paso a paso con detalle – Diseño descendente o modular:
  • 9. Pseudocódigo Se trata de un lenguaje imitación del de un ordenador. No está estandarizado. • Cada programador tiene el propio. • Mezcla de lenguaje natural, símbolos, términos y características de varios lenguajes de programación.
  • 10. Codificación del programa – Escribir el algoritmo en un lenguaje de programación • Permite ser leído y ejecutado por el ordenador. – Tipos de lenguajes: • De bajo nivel (dependen de la máquina sobre la que se ejecuta): – Lenguaje Máquina (escritura en binario) – Ensambladores: (escritura simbólica) • De alto nivel (no dependen de la máquina): – Imperativos: Estructurados Orientados a Objeto • FORTRAN i Java • C i C++ • PASCAL i Ada 95 – Declarativos: • LISP / PROLOG – La salida de la fase de codificación son los programas fuente (que todavía no se pueden ejecutar directamente sobre el ordenador) – Un programa se compone de un conjunto de instrucciones que indican las operaciones elementales a ejecutar y la manera en que se encadenan.
  • 11. Compilación y enlace – Salvo que el programa se escriba directamente en lenguaje máquina (muy improbable) siempre debe existir un traductor. – La fase de compilación y enlace permite leer el programa escrito en lenguaje de alto nivel y traducirlo a lenguaje maquina. – Hay tres tipos de traductores: – Compiladores. – Interpretes. – Ensambladores
  • 14. Verificación/depuración – Errores en tiempo de ejecución • división por cero, apertura de ficheros inexistentes,... – Errores lógicos (los más difíciles de detectar) • Resultados incorrectos – Optimización del algoritmo.
  • 15. Compilación y enlace + Verificación y depurado
  • 16. Documentación – Se genera a lo largo de todas la fases – Debe permitir acceder al programa a una persona distinta al programador. – Interna: – Código de programa fuente – Comentarios – Externa: • Especificación de requisitos • Listado de programa fuente • Explicación de los algoritmos (CLARO y CONCISO) • Diagramas de flujo o pseudocódigo. • Especificación de datos, formatos de pantalla,... • ...
  • 17.
  • 18. Programación Estructurada • Teorema de la Programación Estructurada Todo algoritmo puede ser descrito utilizando solamente tres tipos De estructuras de control: secuencial, alternativa, y repetitiva. • Secuencia – Todas las acciones se ejecutan sucesivamente, una a continuación de otra sin posibilidad de bifurcaciones. • Sentencias Alternativa – Una estructura alternativa bifurca el flujo de un algoritmo según se cumplan una o varias condiciones.
  • 19. Sentencias Repetitivas: – Una estructura de control repetitiva permite ejecutar una o varias acciones un número de veces que puede estar definido a priori o indefinido hasta que se cumpla una determinada condición. Tipos de sentencias de control repetitivas: – PARA: El nº de repeticiones se conoce antes de iniciar el bucle. – MIENTRAS: Repite las acciones mientras la condición se cumple. – HACER MIENTRAS: Se realiza siempre una vez la acción y luego se vuelve a realizar mientras la condición se cumpla – REPETIR HASTA: Repite las acciones mientras la condición sea falsa (no existe en C)
  • 20.
  • 21. Ejemplo  • Diseñar un algoritmo que resuelva una ecuación de segundo grado:  – Datos de entrada:  • Coeficientes a,b,c  – Datos de salida:  • Soluciones de la ecuación si las hay  – Nota:  • El algoritmo únicamente resolverá la ecuación en el  caso de existir 2 soluciones diferentes (opción 1)  • En cualquier otro caso mostrara un mensaje de error.  • Diseñar el algoritmo para hacer una tortilla de patata  • Diseñar el algoritmo que resuelva la ecuación de segundo grado  dando todas las posibles soluciones (opción 2).
  • 22.
  • 23. Ejemplo (opción 1):  Ecuación de Segundo Grado – Pseudocódigo  Algoritmo „Ecuación de segundo grado‟  {Cálculo de una ecuación de segundo grado}  Variables  a, b, c; /*Introducir las constantes con sus signos*/  x1, x2 /*Valores de Salida*/  Inicio  Escribir (“Introduzca dato A:”); /*Entrada de Datos*/  Leer (a);  Escribir (“Introduzca dato B:”);  Leer (b);  Escribir (“Introduzca dato C:”);  Leer (c);  Si (a != 0) entonces  Si (b2-4*a*c > 0) /*Condición para evitar la raíz cuadrada de  un nº negativo*/  x1:=(-b+sqrt((b*b)-(4*a*c)))/(2*a);  x2:=(-b-sqrt((b*b)-(4*a*c)))/(2*a);  Escribir („Valor x1=„,x1,‟y Valor x2=„,x2);  sino /* Raíz negativa */  Escribir (“Datos Incorrectos”);  fin_si  sino  Escribir (“ No se trata de una ecuación de 2º grado”)  fin_si  Fin