PDF de programación - Problemas, algoritmos y programas - Programación I - C++

Imágen de pdf Problemas, algoritmos y programas - Programación I - C++

Problemas, algoritmos y programas - Programación I - C++gráfica de visualizaciones

Publicado el 7 de Julio del 2019
120 visualizaciones desde el 7 de Julio del 2019
1,4 MB
10 paginas
Creado hace 2a (17/10/2016)
1

Problemas, algoritmos y programas

2

4

Introducción

Programación

Algoritmo

Características de los algoritmos

Lenguajes algorítmicos

Lenguajes de programación

Desarrollo de programas

Introducción

PROGRAMACIÓN I

C++

Grado en Estadística Aplicada. EUE.

Introducción

3

Informática (Ciencia de la computación) (RAE)

Conjunto de conocimientos científicos y técnicas que hacen posible el
tratamiento automático de la información por medio de ordenadores

Computadora (RAE)

Máquina electrónica, analógica o digital,
dotada de una memoria de gran capacidad
y de métodos de tratamiento de la información,
capaz de resolver problemas matemáticos y
lógicos mediante la ejecución de programas
informáticos

Introducción

Introducción

Hardware- Conjunto de componentes que integran la parte material del ordenador

5

1 Bit = 0 / 1
1 Bit = 0 / 1
1 Byte = 8 bits = 1 carácter
1 Byte = 8 bits = 1 carácter
1 Kilobyte (KB) = 1024 Bytes
1 Kilobyte (KB) = 1024 Bytes
1 Megabyte (MB) = 1024 KB
1 Megabyte (MB) = 1024 KB
1 Gigabyte (GB) = 1024 MB
1 Gigabyte (GB) = 1024 MB
1 Terabyte (TB) = 1024 GB
1 Terabyte (TB) = 1024 GB
1 Petabyte (PB) = 1024 TB
1 Petabyte (PB) = 1024 TB

210 = 1024  1000

Todo el mundo debería aprender a programar

7

6

8

 Software- Conjunto de programas, instrucciones y reglas

informáticas para ejecutar tareas en un ordenador

La programación

Análisis del problema, estableciendo
con precisión lo que se plantea. (QUÉ)
Especificación

Solución conceptual del problema,
describiendo un método (algoritmo)
que lo resuelva. (CÓMO)

Escritura del algoritmo en un
lenguaje de programación.

9

11

Algoritmo

 Un algoritmo es la descripción precisa de los pasos que nos

llevan a la solución de un problema planteado

 Estos pasos son, en general, acciones u operaciones que se

efectúan sobre ciertos objetos

 La descripción de un algoritmo afecta a tres partes: entrada

(datos), proceso (instrucciones) y salida (resultados)

10

12

La programación
 Para llegar a ser un programador eficaz se necesita aprender a

resolver problemas de un modo riguroso y sistemático.
 Esto significa que sólo se puede llegar a realizar un buen

programa con el diseño previo de un algoritmo.

Resolución de un problema

Problema

Diseño del
Algoritmo

Programa de
computadora

Algoritmo

 Para poder definir correctamente un problema, es conveniente

responder a las siguientes preguntas:
 ¿Qué entradas se requieren?
 ¿Cuál es la salida deseada?
 ¿Qué método produce la salida deseada?

Ejemplo:
Se desea obtener el coste final de un automóvil sabiendo que

el importe inicial es de 12.000 € y los descuentos a aplicar
son del 10% si la venta se produce antes de Junio de 2016 y
del 20% si se produce con posterioridad.

Entradas: Coste original y los descuentos según el mes.
Salidas: Coste del automóvil hasta Junio, coste del automóvil a partir

de Junio.

Proceso: Cálculo del descuento aplicado hasta Junio y a partir de Junio.

Características de un algoritmo

13

1. Precisión

Un algoritmo debe expresarse de forma no ambigua. La
precisión afecta por igual a dos aspectos:
(a) Al orden (encadenamiento o concatenación) de los pasos que

han de llevarse a cabo.

(b) Al contenido de las mismas, pues cada paso debe ”saberse

realizar“ con toda precisión, de forma automática.

Características de un algoritmo

14

2. Determinismo

Todo algoritmo debe responder del mismo modo ante las
mismas condiciones.

La acción de barajar un mazo de cartas no es
un algoritmo, ya que es y debe ser un proceso
no determinista.

Por ejemplo, una receta de cocina, es un método, pero
carece de precisión para ser un algoritmo, al tener
expresiones de la forma “una pizca de sal”

3. Finitud
La descripción de un algoritmo debe ser finita.

Preparación de un tinto de verano

15

Preparación de un tinto de verano

16

1. Tomar un vaso vacío.
2. Colocar tres cubitos de hielo en el vaso.
3. Echar vino tinto hasta la mitad del vaso.
4. Añadir gaseosa hasta llenar el vaso.
5. Agitar tres segundos el contenido.

1. Tomar un vaso.
2. Colocar algunos cubitos de hielo en el vaso.
3. Echar vino tinto en el vaso.
4. Añadir gaseosa al contenido del vaso.
5. Agitar el contenido.

Preparación de un tinto de verano

Calcular la media de tres números con
Calculadora

18

20

17

19

1. Tomar un vaso vacío.
2. Colocar tres cubitos de hielo en el vaso.

a) Sacar la cubitera del congelador.
b) Rociar la parte inferior con agua.
c) REPETIR

d) Extraer un cubito.
e) Echarlo al vaso.

f) HASTA QUE el no de cubitos sea 3.
g) Rellenar los huecos de la cubitera con agua.
h) Meter de nuevo la cubitera en el congelador.

3. Echar vino tinto hasta la mitad del vaso.
4. Añadir gaseosa hasta llenar el vaso.
5. Agitar tres segundos el contenido.

Cualidades deseables de un algoritmo

Un algoritmo ha de ser suficientemente general y que se
ejecute eficientemente.
1. Generalidad

Es deseable que un algoritmo sirva para una clase de problemas
lo más amplia posible.

la clase de problemas para resolver una ecuación de segundo
grado, ax2 + bx + c = 0 es más general que la consistente en
resolver ecuaciones de primer grado, a + bx = 0

2. Eficiencia

En términos muy generales, se considera que un algoritmo es
tanto más eficiente cuantos menos pasos emplea en llevar a cabo
su cometido.

La suma de dos números naturales, la regla tradicional que se
aprende en enseñanza primaria es más eficiente que el
rudimentario procedimiento de contar con los dedos, de uno en uno.

1. Pulsar la tecla “ON"
2. Teclear el primer numero
3. Pulsar la tecla “+"
4. Teclear el segundo numero
5. Pulsar la tecla “+"
6. Teclear el tercer numero
7. Pulsar la tecla “/"
8. Pulsar la tecla “3"
9. Pulsar la tecla “="
10. La media de los tres números aparece en la pantalla
11. Pulsar la tecla “OFF"

Lenguajes algorítmicos

 Una vez ideado el algoritmo, el modo más natural e

inmediato (y también el menos formal) de expresar esa
organización es redactándolo con palabras y frases del
lenguaje cotidiano

 Todo lenguaje algorítmico debe poseer mecanismos con los
que expresar las acciones así como el orden en que han de
llevarse a cabo

Características de los lenguajes algorítmicos

Lenguajes algorítmicos

21

 Tienden un puente entre la forma humana de resolver

problemas y su resolución mediante programas de
ordenador.

 Cierta independencia de los lenguajes de programación

particulares, de modo que están libres de sus limitaciones
y así los algoritmos escritos en ellos se pueden traducir
indistintamente a un lenguaje de programación u otro.

Las únicas restricciones que deberán imponerse a estos lenguajes
proceden de las características que tienen los algoritmos:
expresar sus acciones (qué deben realizar y cuándo) con la
precisión necesaria
 que estas acciones sean deterministas.

22

 Las acciones, se expresan mediante instrucciones

(también llamadas órdenes o sentencias) que son
comparables a verbos en infinitivo: asignar. . , leer. . ,
escribir. . . y otras.

 La concatenación de las instrucciones expresa en qué
orden deben sucederse las acciones; esto es, cómo se
ensamblan unas tras otras.

 Los modos más usados para ensamblar órdenes son la

secuencia, la selección y la repetición

Los diagramas de flujo

Pseudocódigo

Lenguajes algorítmicos

23

Pseudocódigo
 Es un lenguaje utilizado para definir algoritmos con una sintaxis muy

parecida a la de un lenguaje de programación.

 Las instrucciones se escriben en palabras similares al inglés o al español,

facilitando así la comprensión el algoritmo.

 La ventaja es que es muy fácil pasar de pseudocódigo a un lenguaje de

programación.

Diagramas de flujo

 Es la representación gráfica de un algoritmo.
 Permite representar la secuencia de operaciones que se deben realizar para
la resolución de un problema, es decir, permite representar el flujo de
información desde su entrada hasta su salida.
 Dispone de un conjunto de símbolos gráficos con significado referente al
tipo de instrucción que se va a realizar.
 Dichos símbolos van unidos con flechas que indican el orden de secuencia
a seguir.

DFD- Edita e interpreta diagramas de flujo
DIA- edita diagramas de flujo

Pseudocódigo

24

Secuenciales

Selectivas

Iterativas o
Repetitivas

hacer
instrucciones
mientras condición

25

27

Ejercicios

 Sumar dos números
 Valor absoluto
 Decidir si un número es par o impar
 Dado un nº real escribir la nota a la que corresponde:

suspenso, aprobado, notable, sobresaliente, matrícula de
honor

 Sumar los pares desde 2 hasta un número dado
 Resolver una ecuación de segundo grado
 Dado un número decir si es o no primo

Calcular el área de un triángulo

1.- Entrada de datos: base y altura.

Leer base y altura

2.- Calcular el área, base por altura

dividido por 2

3.- Sacar en pantalla o impresora

el área

Diagramas de flujo

26

Indica el inicio y final del diagrama de flujo

Indica la entrada y salida de datos

Símbolo de proceso.

Indica la realización de una operación.

si

?

no

Símbolo de decisión.

Indica operaciones de comparación entre datos.

En función del resultado se sigue por distintos caminos.

Llamada a otro proceso complejo. Llamada a subrutina.

Indica la salida de información por impresora.

Conector. Representa la continuidad del diagrama.

Línea de flujo.

Indica el sentido de ejecución de las operaciones

Realizar la suma de todos los números pares

entre 2 y 100

28

Inicialmente SUMA vale 0.

el valor de NUMERO es 2.

hacer

Inicio

SUMA =0

NUMERO =2

SUMA=SUMA+ NUMERO

acumular NUMERO a SUMA.

NUMERO = NUMERO + 2

aumentar el valor de NUMERO en dos
unidades.

mientras el valor de NUMERO 100

Escribir SUMA

si

?

NUMERO100

no

Visualizar SUMA

Fin

Ejercicios

29

 Mcd, algoritmo de Euclides

1 Se divide el número mayor entre el menor.
2 Si:

1 La división es exacta, el divisor es el m.c.d.
2 La división no es exacta,
  • Links de descarga
http://lwp-l.com/pdf16241

Comentarios de: Problemas, algoritmos y programas - Programación I - C++ (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad

Revisar política de publicidad