0% encontró este documento útil (0 votos)
92 vistas25 páginas

Ficha 01 - Presentación General (Prof. Frittelli)

Este documento presenta conceptos fundamentales sobre algoritmos y programación. Explica que un algoritmo es una secuencia de pasos para resolver un problema, y que un programa es un algoritmo escrito en un lenguaje de programación de forma que pueda ser ejecutado por una computadora. Luego, introduce conceptos como variables, tipos de datos, y funciones básicas en Python como input(), print(), int() y float() para la entrada y salida de datos. El documento provee una introducción general a estos temas clave de algoritmos y programación.

Cargado por

Pedro Yanover
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPTX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
92 vistas25 páginas

Ficha 01 - Presentación General (Prof. Frittelli)

Este documento presenta conceptos fundamentales sobre algoritmos y programación. Explica que un algoritmo es una secuencia de pasos para resolver un problema, y que un programa es un algoritmo escrito en un lenguaje de programación de forma que pueda ser ejecutado por una computadora. Luego, introduce conceptos como variables, tipos de datos, y funciones básicas en Python como input(), print(), int() y float() para la entrada y salida de datos. El documento provee una introducción general a estos temas clave de algoritmos y programación.

Cargado por

Pedro Yanover
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPTX, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 25

Algoritmos y Estructuras de Datos

(AED) 2021

Universidad Tecnológica Nacional


Facultad Regional Córdoba
Ingeniería en Sistemas de Información
Director de Cátedra: Ing. Valerio Frittelli
Cursos: 1k01 al 1k19
Ficha 01: Fundamentos de
Programación
 ¿Qué es un Algoritmo?
Es la secuencia finita y ordenada de pasos que permite
resolver un problema.

 ¿Qué es una Computadora?


Es un aparato electrónico capaz de ejecutar (con
velocidad y precisión) un algoritmo.

 ¿Qué es un Programa?
Es un algoritmo escrito en forma técnica, de forma que
pueda ser interpretado y ejecutado por una computadora.
Algoritmos...

 Estructura de un Algoritmo

 El bloque de los Procesos contiene los pasos o instrucciones


que permiten transformar los Datos en los Resultados
buscados.
 Esos pasos típicamente se basan en un conjunto mínimo y
esencial de acciones válidas, que designamos como
Conjunto de Instrucciones Primitivas.
...y más Algoritmos...

 Las instrucciones primitivas son aquellas que mínimamente


se espera que sean comprendidas por quien ejecuta el
algoritmo.
 Ejemplo: Cuáles son las instrucciones primitivas que debe
comprender una persona para aplicar el conocido algoritmo
de sumar dos números de varios dígitos?
 Escribir los números uno sobre el otro y alinearlos hacia la
derecha.
 Sumar dos números de un dígito.
 Acarrear hacia la izquierda el primer dígito si la suma de dos
números de un dígito da un resultado de dos dígitos.
...y aún más Algoritmos!
 A pensar un poco ahora: Se pide diseñar un algoritmo básico para
cambiar una rueda de un automóvil. La rueda está sujetada por un
conjunto de 6 seis tuercas.
 … Pero sólo están permitidas las siguientes instrucciones o
acciones primitivas:
 Levantar el auto con el aparejo adecuado (un “gato”).
 Bajar el auto y desacoplar el aparejo o “gato”.
 Ajustar una tuerca.
 Desajustar una tuerca.
 Quitar una rueda de su lugar en la punta del eje.
 Colocar una rueda en la punta del eje.
 Repetir n veces una instrucción (o conjunto de instrucciones) que
se escriba tabulado hacia la derecha.
¿Solución? (Básica...)

1.) Repetir 6 veces:


1.1.) Desajustar la siguiente tuerca.
2.) Levantar el auto con el aparejo o “gato”.
3.) Quitar la rueda de la punta del eje.
4.) Colocar la rueda de auxilio en la punta del eje.
5.) Bajar el auto y desacoplar el aparejo o “gato”.
6.) Repetir 6 veces:
6.1.) Ajustar la siguiente tuerca.
Programas...
• El algoritmo anterior puede ser entendido por una persona,
pero no por una computadora.
• Para que una computadora pueda interpretar y aplicar un
algoritmo, el mismo debe plantearse en términos de
instrucciones primitivas muy técnicas y específicas, sin
ambigüedad ni errores.
• Se llama Lenguaje de Programación a una especificación de
símbolos, palabras especiales y reglas para combinarlos, que
permite escribir un algoritmo de forma que sea válido para
una computadora.
• Un algoritmo escrito mediante un Lenguaje de
Programación, es un Programa.
...y más Programas!
 Existen muchos Lenguajes de Programación, y cada uno se basa
en distintas estrategias y principios de programación: Python,
Java, C, C++, C#, Ada, Pascal… y muchos más.
 Con todos ellos, los Datos se almacenan dentro de la computadora
en un dispositivo llamado memoria. Las instrucciones o Procesos
del programa operan con esos datos y se obtienen Resultados que
son alojados en otros lugares de la misma memoria, para luego ser
presentados al usuario que ejecutó el programa.
Memoria y Variables
 La memoria puede entenderse como una tabla en la que cada
casillero (o grupo de casilleros) puede almacenar algún tipo de
valor o dato. En general, un casillero de la memoria se llama
celda de memoria o también byte.

 Cada grupo de bytes se asocia a un nombre o identificador,


obteniendo así una variable. Y cada variable puede almacenar
valores de ciertos tipos básicos que cada lenguaje provee.
Tipos de Datos en Python
 En Python, los tipos de datos más usuales son los siguientes:

 Y las siguientes son instrucciones básicas (o “instrucciones


primitivas”) de Python para manejo de variables:
a. Asignación de un valor: variable = 10
b. Visualización de su valor en pantalla: print(variable)
c. Carga desde el teclado de una cadena: variable =
input(‘mensaje’)
d. Carga de un entero: variable = int( input(‘mensaje’) )
e. Carga de un flotante: variable = float( input(‘mensaje’) )
Asignación – Creación de
Variables
 En Python, una variable es creada cuando se le asigna un
valor, y esa variable asume el tipo del valor que se le
asigna inicialmente. Para asignar un valor a una variable,
se usa el operador de asignación (=).
edad = 20 # crea una variable int con valor inicial 20
nombre = 'Ana' # crea una variable de tipo cadena (str) con valor 'Ana'
estudia = True # crea una variable de tipo boolean, con valor True
promedio = 8.79 # crea una variable float, con valor 8.79
 Note que un valor de tipo cadena de caracteres (str) se
encierra entre comillas simples ('Ana'), pero también es
válido en Python usar comillas dobles ("Ana").
El Shell de Python
 Al instalar Python en una computadora, se dispone de un programa
conocido como el Shell de Python (de hecho, Python ES este
programa...), que permite ejecutar instrucciones de Python una a
una, y probar su funcionamiento.
 Se puede correr el shell en consola negra de comandos, o se puede
correr en una ventana blanca de alto nivel con un poco más de
funcionalidades disponibles. Esta última se conoce como el IDLE
de Python, y es la que usaremos.
 En Windows, suele estar en la carpeta llamada C:\Program Files\
Python38\Lib\idlelib y es el programa idle.pyw. (también accesible
desde el grupo de programas Python en el Menú Inicio de
Windows).
Ejemplos de Instrucciones
(Ejecutar en el IDLE Python)
>>> x = 10
>>> print(x)
>>> print(‘Valor de x:’, x)
>>> edad = 22
>>> nom = 'Ana' # o bien: nom = "Ana"
>>> prom = 8.79
>>> print(‘Nombre:’, nom, ‘Edad:’, edad, ‘Promedio:’, prom)
Identificadores de Variables
 El nombre de una variable es provisto por el programador, pero
no cualquier nombre es válido. Se aplican las siguientes reglas
(que son de Python 2, aunque Python 3 es más amplio):
 Sólo puede contener letras del alfabeto inglés (mayúsculas y/o
minúsculas), o dígitos (0 al 9), o el guion bajo ( _ ).
 El nombre de una variable no debe comenzar con un dígito.
 Las palabras reservadas del lenguaje no pueden usarse como nombres.
 El nombre puede contener cualquier cantidad de caracteres de longitud.
 Python es case sensitive: hace diferencia entre minúsculas y mayúsculas,
y toma como diferentes a dos nombres de variables que no sean
exactamente iguales. El identificador sueldo no es igual al identificador
Sueldo: Python los tomará a ambos como dos variables diferentes.
Identificadores de Variables
 Las reglas anteriores son las que fija la versión Python 2. Pero en
Python 3 se permite usar letras acentuadas, o que no sean del
alfabeto inglés, o de idiomas no occidentales. Ejemplos:

 Los siguientes no son válidos en ninguna de las dos versiones:


Carga por teclado
 La función input() permite asignar a una variable un valor
tomado desde el teclado mientras se ejecuta la instrucción,
en lugar de asignar un valor fijo:
nombre = input('Ingrese su nombre: ')
 Cuando input() se ejecuta, hace lo siguiente:
1) Muestra en la consola estándar el mensaje que recibe entre sus
paréntesis.
2) Pone al programa en modo de espera, hasta que el usuario escriba una
cadena en el teclado y presione <Enter>.
3) Luego del <Enter>, la función toma la cadena que el usuario cargó, y la
asigna en la variable del lado izquierdo del operador de asignación.
Carga por teclado

nombre = input('Ingrese su nombre: ')


direccion = input('Ingrese su dirección: ')
 El valor cargado y retornado por input() es siempre de tipo
cadena de caracteres (str). Incluso si el usuario carga un
número, el mismo será devuelto en formato de cadena...
edad = input('Ingrese su edad: ')

 Si en este ejemplo, el usuario ingresa un 25, el valor


retornado será de la forma '25' (cadena) que NO ES un int...
Carga por teclado
 Si se desea cargar por teclado un número entero, el valor
retornado por input() debe ser convertido a int, y eso puede
hacerse con la función int():

edad = int(input('Ingrese su edad: '))

 En el ejemplo, se ejecuta input(), la cual retorna la cadena


cargada, y esa cadena es tomada a su vez por int(), que intenta
convertirla a un número entero. Si la cadena sólo contiene dígitos
(y a lo sumo el signo menos), la conversión se hará, y edad
quedará asignada con el número entero. Pero si la cadena no
representa a un número entero, la función se interrumpirá y
lanzará un error.
Carga por teclado
 A su vez, la función float() permite convertir una cadena a un
valor float, siempre y cuando la cadena efectivamente represente
un número en coma flotante:
sueldo = float(input('Ingrese su sueldo: '))

 El siguiente ejemplo muestra la forma de cargar por teclado tres


variables, de tipos str, int y float respectivamente:

nombre = input('Ingrese su nombre: ')


edad = int(input('Ingrese su edad: '))
sueldo = float(input('Ingrese su sueldo: '))
Atención a las diferencias (1)...

a. No es lo mismo 15 que '15'. El primero es un int, el


segundo un valor str (o sea, una cadena de caracteres).
# Ejemplo correcto... # Ejemplo incorrecto...
x1 = 15 x1 = '15'
x2 = x1 + 1 x2 = x1 + 1
print(‘Valor de x2:’, x2) # efecto: error al ejecutar...
# muestra: Valor de x2: 16 # no puede sumar str + int
b. ¿Qué ocurrirá aquí?
n1 = int(input('Edad: '))
n1 = input('Edad: ') n2 = n1 + 1
n2 = n1 + 1 print('Nueva edad:', n2)
# error: str + int... # ¡correcto!
Atención a las diferencias (2)...

a. Al usar print(), lo que se escribe entre comillas simples o dobles


es un valor str (una cadena) y se muestra en forma literal.
x1 = 15
print(' x1')
# muestra: x1
b. Lo que no se encierra entre comillas se asume como un nombre
de variable. Si la misma existe, se muestra su valor. Si no existe,
Python lanza un error:
print(Hola)
x1 = 15 # error: no existe la variable llamada Hola
print(x1) print('Hola')
# muestra: 15 # correcto... muestra: Hola
Tipado Dinámico
 Dijimos que en Python, una variable es creada cuando se le
asigna un valor, y esa variable asume el tipo del valor que se
le asigna:
x = 10 # se crea x de tipo int.
y = 'Ana' # se crea y de tipo str.
z = True # se crea z de tipo boolean.
 Lo anterior implica que si a una variable que ya estaba
creada se le asigna un valor de otro tipo, la misma será
nuevamente creada y cambiará de tipo:
x = 10 # se crea x de tipo int.
x = 'Hola' # x cambia al tipo str.
x = True # x vuelve a cambiar, al tipo boolean.
Operadores Aritméticos en
Python
 Son símbolos que actúan sobre el valor de una variable o una
constante, aplicando operaciones aritméticas básicas.

 Recuerde: en una expresión de asignación, se evalúa y ejecuta


primero el lado derecho del operador =, y luego el resultado se
asigna en la variable del lado izquierdo.
Operadores Aritméticos
(ejemplo)
 En este ejemplo mostramos la forma de usar los operadores
aritméticos de la tabla anterior:
a = int(input("Primer valor: "))
b = int(input("Segundo valor: "))
suma = a + b
resta = a – b
prod = a * b
ce = a // b # cociente entero...
cr = a / b # cociente real (o flotante)...
re = a % b # resto entero de dividir a por b...
pot = a ** b
print('Suma:', suma, 'Resta:', resta, 'Producto:', prod)
print('Cociente entero:', ce, 'Cociente real:', cr)
print('Resto entero:', re, 'Potencia:', pot)
Muchas gracias...

Ing. Valerio Frittelli


Director Cátedra de AED
 Mail: vfrittelli@gmail.com
 Celular: +5493515959185
 También pueden contactarme por mensajería interna del Aula
Virtual.
 Horarios de oficina: Para atención de alumnos de cualquier
curso, por cualquier duda o consulta: antes de entrar a clase en
el 1k01 o el 1k04, o en el recreo, o al finalizar la clase.

También podría gustarte

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy