Algoritmos

  1. Definir algoritmo

Link: https://informaticafrida.blogspot.com/2009/03/algoritmo.html            

Un Algoritmo, se puede definir como una secuencia de instrucciones que representan un modelo de solución para determinado tipo de problemas. O bien como un conjunto de instrucciones que realizadas en orden conducen a obtener la solución de un problema. Por lo tanto podemos decir que es un conjunto ordenado y finito de pasos que nos permite solucionar un problema.

Los algoritmos son independientes de los lenguajes de programación. En cada problema el algoritmo puede escribirse y luego ejecutarse en un lenguaje de diferente programación. El algoritmo es la infraestructura de cualquier solución, escrita luego en cualquier lenguaje de programación.

 

  1. Como se pueden representar

Representación de Algoritmos

Link: https://www.buenastareas.com/ensayos/Representacion-De-Algoritmos/15591.html

Hay distintos métodos de representar los algoritmos como:

Pseudocódigo: este tipo de representación mezcla el lenguaje de programación con un idioma, ya sea español, inglés o cualquier otro, se puede definir como un lenguaje de especificación de algoritmos. Es la representación narrativa de los pasos que debe de seguir un algoritmo. Este método es más compacto, más fácil de escribir y más fácil de transcribir a un lenguaje de programación que el diagrama de flujo.

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
Diagrama de flujo: son herramientas gráficas para representar algoritmos. Está compuesto por símbolos, como: rectángulos rombos, cuadrados, etc., unidos por flechas, estos símbolos representan acciones y orden en cómo se realizan estas. Es decir, los diagramas de flujo son diagramas que emplean símbolos gráficos para representar algoritmos.

https://upload.wikimedia.org/wikipedia/commons/2/26/AlgoritmoRaiz.png
 

Diagrama de Nassi-Schneiderman: También conocido como diagrama de Chapín, es un método se representación de algoritmos que combina la descripción textual con la descripción gráfica, es como una combinación del Pseudocódigo con el diagrama de flujo. Por lo general todo lo que se puede representar en un diagrama de flujo se puede representar en este tipo de diagrama. Este tipo de representación cuenta con un conjunto limitado de símbolos para representar los pasos del algoritmo. El diagrama Nassi-Shneiderman refleja la descomposición del problema en una forma simple usando cajas anidadas para representar cada uno de los sub-problemas.

https://www.monografias.com/trabajos19/algoritmos/Image9011.gif

Nivel de implementación: consiste en expresar un algoritmo mediante una maquinaria, un programa de computadora o algún objeto que realice las acciones planteadas por el algoritmo en cuestión. En general, la implementación es el objetivo de diseñar un algoritmo (pero no siempre).x|

                                                                                            https://algoritmos.bligoo.es/media/users/17/898521/images/public/186581/1323136249277-220px-LampFlowchart-es.svg.png?v=1323093513873

 

  1. Enunciar algunos operadores relacionales  en seudocódigos

Link: www.carlospes.com/curso_de_lenguaje_c/imagenes/fig_11_03_operadores_relacionales.gif     

https://www.carlospes.com/curso_de_lenguaje_c/imagenes/fig_11_03_operadores_relacionales.gif

 

  1. Defina y de un ejemplo de cada clase de algoritmo

Link: https://html.rincondelvago.com/algoritmos_5.html

Existen dos clases de algoritmos, las cuales son:

Algoritmos Cualitativos: Son todos aquellos pasos o instrucciones descritos por medio de palabras que sirven para llegar a la obtención de una respuesta o solución de un problema cualquiera.

Algoritmos Cuantitativos: Son aquellos pasos o instrucciones que involucran cálculos numéricos para llegar a un resultado satisfactorio.

https://www.inacap.cl/data/sede_virtual/Ayudantias/elementos_de_la_programacion/images/cap1/imagen9.gif

  1. En las expresiones lógicas se pueden utilizar 2 tipos de operadores, cuáles son?

Link: https://genaro11.blogspot.com/2013/03/algoritmos-operadores-y-operandos.html

  • Operadores Aritméticos

Son aquéllos que permiten la realización de cálculos aritméticos. Utilizan operandos numéricos y proporcionan resultados numéricos.

Operador

Operación

+

Suma

-

Resta

*

Multiplicación

/

División real

Div

División entera

Mod

Residuo

^

Exponenciación

 

Ejemplos:

7+3 = 10 10 Div 4 = 2
7-3 = 4 20 Mod 3 = 2
7*3 = 21 5 Mod 7 = 5
10/4= 2.5 4 ^ 2 = 16

En la expresión 7+3, los valores 7 y 3 se denominan operandos. El valor de la expresión 7+3 se conoce como resultado de la expresión.

Todos los operadores aritméticos no existen en todos los lenguajes de programación, por ejemplo, en Fortran no existen Div y mod.


Operadores Div y Mod


El símbolo / se utiliza para la división real, y el operador Div representa la división entera.

Expresión

Resultado

Expresión

Resultado

10.5/3.0

3.5

10 Div 3

3

1/4

0.25

18 Div 2

9

2.0/4.0

0.5

30 Div 30

1

30/30

1.0

10 Mod 3

1

6/8

0.75

10 Mod 2

0

 


Operadores Relacionales


Permiten realizar comparaciones de valores de tipo numérico o carácter. Estos operadores sirven para expresar las condiciones en los algoritmos. Proporcionan resultados lógicos.

Operador

Significado

Menor que

Mayor que

=

Igual que

<=

Menor o igual que

>=

Mayor o igual que

<> 

Diferente de

 

El formato general para las comparaciones es:

expresión1 operador de relación expresión2


El resultado de la operación será Verdadero o Falso. Así por ejemplo, si A=4 y B=3, entonces:

A>B Es Verdadero
(A-2) < (B-4) Es Falso
 

Los operadores de relación se pueden aplicar a cualquiera de los cuatro tipos de datos estándar: enteros, real, lógico y carácter.

‘A’ < ‘K’ = Verdadero
‘A’ > ‘a’ = Falso
‘MARIA’ < ‘JUAN’ = Falso (se considera la primera letra)
‘JAIME’ > ‘JORGE’ = Falso

Nota: La comparación de cadenas se rige por el código ASCII.

 

  1. Pasos necesarios para elaborar 1 algoritmo

Link: https://sites.google.com/site/tutoriasdeingenieria/algoritmos/estructura-de-tres-pasos-para-solucionar-algoritmos-y-ejercicios-de-algoritmos-basicos

Paso 1. Identificar los datos de entrada, para asignar una variable que lo represente y en la cual se realice el proceso de lectura por el teclado.

Paso 2. Identificar los procesos y transformaciones necesarias para dar solución al planteamiento, fórmulas, procesos, operaciones numéricas, deben ser identificadas, en este paso se sugiere declarar variables para almacenar temporalmente las respuestas deseadas.

Paso 3. El último paso es mostrar los resultados pedidos. Imprimir por pantalla lo que le están solicitando.

Paso 4. Realizar la prueba escritorio del sistema para entender y clarificar las acciones que el sistema hace.

 

Ejemplo: Construir un programa que lea dos números e imprima la división del primer número por el segundo, sin usar el operador de división.

#Algoritmo construido en python 3.2

n1=float(input("digite número"))

n2=float(input("digite divisor"))

r=n1*n2**-1

print("la division es",r)