CAC Programacion 1 A 34
CAC Programacion 1 A 34
CAC Programacion 1 A 34
Nuestro objetivo
Nuestros cursos están destinados a personas jóvenes y adultas, que busquen
desarrollarse profesional y personalmente, ampliando sus oportunidades
laborales de acuerdo a los desafíos que plantea el Siglo XXI.
El objetivo es brindar herramientas que faciliten la inserción laboral en el sector
Informática (IT), y en particular, fomentar la participación de las mujeres, con el fin
de mejorar su empleabilidad.
Modalidad
Clases online en vivo 2 veces por semana
Duración
20 semanas
Carga horaria
198 horas
Versión
2023.07.01
1
Herramientas y tecnologías que
aprenderemos
Visual Studio
Code Python IntelliJ IDEA Java
2
Temario del curso
1. Introducción a la algoritmia
Aprenderás sobre el procesamiento de información en un sistema
computacional y cómo fluye a través de él. Conocerás los diferentes tipos de
datos utilizados en programación y comprenderás la importancia de los
algoritmos en la resolución de problemas. Adquirirás las habilidades
necesarias para identificar características de algoritmos eficientes y entender
la diferencia entre algoritmo y programa. Abordarás los componentes
esenciales de un algoritmo, incluyendo la entrada, procesamiento y salida de
información. Además, explorarás los diagramas de flujo como una herramienta
visual para representar algoritmos, comprendiendo los elementos y símbolos
utilizados en su construcción.
3
número indeterminado de iteraciones utilizando bucles while y do-while.
Conocerás la diferencia entre bucles finitos e infinitos y aprenderás a
controlarlos utilizando instrucciones de control como break y continue.
7. Colecciones
Aprenderás sobre las colecciones de elementos en el lenguaje de
programación, comenzando por los Arrays. Dominarás la creación y
manipulación de Arrays, así como su uso para almacenar múltiples elementos
del mismo tipo en una secuencia ordenada. Conocerás las listas, tuplas y
diccionarios, y explorarás sus ventajas y aplicaciones en la programación.
Adquirirás habilidades para recorrer las colecciones y acceder a sus elementos,
además de incorporar, modificar y borrar elementos de las colecciones.
8. Funciones
Desarrollarás funciones que acepten parámetros de entrada y aprenderás a
utilizar la palabra reservada return para devolver datos al programa principal.
Adquirirás habilidades para procesar la información dentro de las funciones,
realizando operaciones y cálculos con los parámetros de entrada o variables
locales. También, trabajarás con funciones que no requieren parámetros de
4
entrada, llamadas funciones sin parámetros. Aprenderás a utilizar funciones
void para realizar tareas sin retornar valores hacia el programa principal.
9. Librerías
Explorarás el concepto de librerías en el lenguaje de programación y su
importancia para la reutilización de código. Conocerás las librerías más
utilizadas en el lenguaje dictado en la cursada, explorando ejemplos prácticos
de su uso y sus principales características. Aprenderás a importar y utilizar las
funciones y recursos de una librería en un programa. También, adquirirás
habilidades para explorar y utilizar librerías externas populares y ampliamente
utilizadas en el ámbito del lenguaje de programación.
5
Proyecto a desarrollar durante la cursada
Proyecto Final
Vamos a desarrollar una aplicación desde cero, abordando tanto el diseño como la
implementación de todas sus funcionalidades.
Trabajarás en un caso de uso específico, diseñando la lógica para la entrada de
datos, su procesamiento y la posterior salida de resultados.
Podrás elegir una temática relevante a tu interés o problemática específica para
desarrollar tu proyecto.
Realizarás una validación exhaustiva del procesamiento de datos para garantizar
la integridad y precisión de los resultados.
Aplicarás librerías o frameworks relevantes a la temática del proyecto para mejorar
la eficiencia y calidad de la aplicación.
Integrarás prácticas de seguridad y manejo adecuado de errores para asegurar la
confiabilidad y robustez de la aplicación.
Realizarás una presentación y documentación concisa que describirá las
funcionalidades, proceso de desarrollo y decisiones tomadas durante el proyecto.
6
Requerimientos para cursar
○ No se requieren conocimientos previos de programación para asistir a este
curso.
○ Acceso a Internet, manejo básico de exploradores web (Chrome, Firefox,
Edge, Opera, Safari), manejo básico de la computadora.
7
Codo a Codo inicial
Clase 01
Presentación del curso
Les damos la bienvenida
Vamos a comenzar a grabar la clase
Sobre Codo a Codo 4.0
Preparamos a los/as estudiantes para la demanda de las empresas
más innovadoras del área de IT.
Articulación y presencia en
93% de los egresados
CABA y las
5.000 considera que haber
Lógica Matemática o
Programación básica
Secundario
completo
2 Períodos de inscripciones vía Web
(Enero y Febrero / Junio y Julio)
Inglés
conocimientos básicos
Metodologías de Enseñanza
Ejercitación
Clase sincrónica Tutores
3 h semanales
asincrónica Egresados/as
6 h semanales
60 h 58 h
60 h 30 h Estructuras y 30 h
Herramientas Persistencia
funciones (al menos en horas extra)
de datos
54 h 27 h 27 h
90 h en común
Lenguajes Frameworks
específicos específicos
● Testing QA
208 h ● Big Data
● Diseño
UX/UI
2° CUATRIMESTRE 2023
del 31 de Julio al 15 de Diciembre de 2023
¿CUÁLES SON LOS REQUISITOS OBLIGATORIOS PARA SER UN
ESTUDIANTE REGULAR DE CODO A CODO?
Drive: link
Youtube: link
Tutor/a: Fernanda Torok
Contacto: Meet: link
fernanda.torok@bue.edu.ar
Coordinador pedagógico del curso: Asistencia: link
Emiliano S. Spinoso
HERRAMIENTAS DEL CURSO
Vas a contar con el acceso a la plataforma virtual donde encontrarás
diversos materiales de estudio, ejercicios de repaso, ejercicios
obligatorios, entre otros.
El alta a esta plataforma suele demorar, así que no te preocupes si aún
no podés acceder. Inténtalo durante las primeras dos semanas.
Una vez cumplidos todos los requisitos se te avisará vía mail sobre la
entrega de diplomas. La demora es de 4 a 6 meses.
Codo a Codo 4.0 2023
Plan de estudios
Curso: Codo a Codo Inicial
MÓDULO I: Algoritmia esencial utilizando pseudocódigo
1) Introducción a la algoritmia
● Cómo se procesa la información.
● Que es un dato. Que es un Algoritmo. Que es un programa.
● Características de los algoritmos. Entrada, procesamiento y salida de la información.
● Diagrama de flujo de un algoritmo.
2) Consultas SQL
● Creación de base de datos. Creación de tablas. Inserción, modificación y eliminación de datos.
● Consultas y subconsultas dentro de la BD.
● Clausulas: Select Insert Update Delete Where
¿Cuánto cobra un programador en
Argentina?
¿Cuánto cobra un programador en
Argentina?
El sueldo promedio de un programador junior sin experiencia en Argentina es de
$176.000 por mes, de acuerdo al sitio web Encuestas IT.
Los profesionales con pocos años de experiencia en el mercado laboral cobran un sueldo
mayor de aproximadamente 269.000 pesos mensuales.
Sin embargo, el sueldo promedio de un programador senior en el país es de 365.000
pesos por mes, de acuerdo al sitio web Encuestas IT.
En la Argentina esta profesión es muy demandada y suele ser una de las que menos ofertas
tiene en el campo digital y tecnológico. Según la Cámara de la Industria Argentina del
Software (Cessi), se encuentran alrededor de 5.000 vacantes laborales.
Fuente: https://www.iprofesional.com/tecnologia/382894-cuanto-cobra-un-programador-en-argentina-2023
Empleo IT: las 10 carreras con salida laboral de 2023
Presentación de herramientas
Les damos la bienvenida
Actual Proximo
Anterior
Sitio oficial:https://pseint.sourceforge.net/
¿Por qué PSeInt?
PSeInt está pensado para asistir a los estudiantes que se inician en la construcción de
programas o algoritmos computacionales. El pseudocódigo se suele utilizar como primer
contacto para introducir conceptos básicos como el uso de estructuras de control,
expresiones, variables, etc, sin tener que lidiar con las particularidades de la sintaxis de un
lenguaje real. Este software pretende facilitarle al principiante la tarea de escribir algoritmos
en este pseudolenguaje presentando un conjunto de ayudas y asistencias, y brindarle
ademas algunas herramientas adicionales que le ayuden a encontrar errores y comprender
la lógica de los algoritmos.
¿Qué es pseudocódigo?
El pseudocódigo es un lenguaje informal utilizado para describir un algoritmo. Es una forma
de representar la lógica y el flujo de un programa sin necesidad de utilizar la sintaxis
específica de un lenguaje de programación en particular.
Ya tenemos todo listo para comenzar nuestra primer unidad en Codo a Codo
Inicial. Pero.. ahora que ya conocés el programa y a tu profe, me gustaría
conocerte a vos..
Dato es un término que se refiere a hechos, eventos, transacciones, etc., que han
sido registrados. Es la entrada sin procesar de la cual se produce la información.
Información se refiere a los datos que han sido procesados y comunicados de tal
manera que pueden ser entendidos e interpretados por el receptor.
Este paso del dato a la información es crucial ya que los datos por sí solos no nos
dicen nada. No tienen ningún significado en particular, no son buenos ni malos en sí
mismos. Solo al procesarlos, es decir, al analizarlos, compararlos con otros, ponerlos
en contexto y relacionarlos, es que se convierten efectivamente en información. De
esta forma, la información es nada más ni nada menos que "datos
interpretados", a los que les damos un significado.
Ejemplo:
Por ejemplo, cuando una persona va al médico, le proporciona una serie de datos (sus síntomas).
Solamente con esos datos no se puede hacer demasiado: podrían significar cualquier cosa, pero el
médico, los procesa y los transforma en información (un diagnóstico) a partir de la cual puede
sugerir un tratamiento y por lo tanto, una solución al problema del consultante.
Historia de la computadora:
La historia de la computadora es el recuento de los eventos,
innovaciones y desarrollos tecnológicos del campo de la
informática y la automatización, que dieron origen a las
máquinas que conocemos como computadoras, computadores
u ordenadores. Registra además su mejoramiento y
actualización hasta alcanzar las versiones miniaturizadas y
veloces del siglo XXI.
Las computadoras son las máquinas de cálculo más
avanzadas y eficientes inventadas por el ser humano. Están
dotadas del suficiente poder de operaciones, la suficiente
autonomía y velocidad como para reemplazarlo en muchas
tareas, o permitirle dinámicas de trabajo virtuales y digitales
que nunca antes en la historia habían sido posibles.
La invención de este tipo de aparatos en el siglo
XX revolucionó para siempre la manera en que
entendemos los procesos industriales, el trabajo, la
sociedad y un sinfín de otras áreas de nuestra vida. Afecta
desde el modo mismo de relacionarnos, hasta el tipo de
operaciones de intercambio de información a escala mundial
que somos capaces de realizar.
Antecedentes:
Joseph Marie Jacquard inventó en 1802 un sistema de tarjetas perforadas.
La historia de la computadora tiene largos antecedentes, que se remontan a las primeras reglas de
cálculo y a las primeras máquinas diseñadas para facilitarle al ser humano la tarea de la aritmética. El
ábaco, por ejemplo, fue un importante adelanto en la materia, creado alrededor de 4.000 a. C.
También hubo inventos muy posteriores, como la máquina de Blaise Pascal, conocida como
Máquina de Pascal o Pascalina, creada en 1642. Consistía en una serie de engranajes que permitían
realizar operaciones aritméticas. Esta máquina fue mejorada por Gottfried Leibinitz en 1671 y se dio inicio
a la historia de las calculadoras.
Los intentos del ser humano por automatizar continuaron desde entonces: Joseph Marie Jacquard
inventó en 1802 un sistema de tarjetas perforadas para intentar automatizar sus telares, y en 1822
el inglés Charles Babbage empleó dichas tarjetas para crear una máquina de cálculo diferencial.
Solamente doce años después (1834), logró innovar su máquina y obtener una máquina analítica capaz de
las cuatro operaciones aritméticas y de almacenar números en una memoria (hasta 1.000 números de 50
dígitos). Por este motivo, a Babbage se le considera el padre de la computación, ya que esta
máquina representa un salto hacia el mundo de la informática como lo conocemos.
Invención de la computadora
La invención de la computadora no puede atribuirse a una sola persona. Se considera a Babbage
como el padre de la rama de saberes que luego será la computación, pero no será sino hasta mucho
más adelante que se hará la primera computadora como tal.
Otro importante fundador en este proceso fue Alan
Turing, creador de una máquina capaz de calcular
cualquier cosa, y que llamó “máquina universal” o
“máquina de Turing”. Las ideas que sirvieron para
construirla fueron las mismas que luego dieron
nacimiento al primer computador.
Otro importante caso fue el de ENIAC (Electronic
Numeral Integrator and Calculator, o sea,
Integrador y Calculador Electrónico Numeral), creado
por dos profesores de la universidad de Pensilvania en
1943, considerado el abuelo de los computadores
propiamente dicho. Consistía en 18.000 tubos al vacío
que llenaban un cuarto entero.
Historia del Hardware:
Desde los primeros sistemas informáticos, el hardware ha experimentado importantes cambios, con el fin de
obtener computadoras más veloces y capaces de desarrollar una mayor diversidad de tareas. Teniendo en
cuenta los adelantos más significativos, se distinguen al menos cuatro generaciones de hardware:
● Primera generación (1945-1956): Eran máquinas de cálculo que operaban mediante tubos al vacío.
● Segunda generación (1957-1963): Se inventaron los transistores, gracias a los cuales se redujo
enormemente el tamaño total de las computadoras.
● Tercera generación (1964-1971): Se diseñaron los primeros circuitos integrados, impresos en pastillas
de silicio, lo que permitió una mayor rapidez y efectividad en el procesamiento de la información.
El término hardware se utilizó en inglés a partir del siglo XV para designar utensilios y
herramientas fabricados con metales duros. Actualmente, hardware también se emplea con los
significados de ferretería, armamento y conjunto de barat as de metal.
La palabra se emplea en español y otros idiomas sin traducción. En el caso del español, se han
propuesto, sin demasiado éxito, varios términos y expresiones equivalentes: equipo, equipo
informático, componentes, soporte físico.
Tipos de hardware:
De acuerdo con la tarea que desempeña, el hardware se clasifica en cinco categorías
principales:
Hardware de entrada: Son dispositivos que permiten ingresar información al sistema. Pueden estar
integrados a la máquina o ser removibles. El teclado, el mouse, el micrófono y el escáner forman parte de este
tipo de dispositivos.
Hardware de salida: Son dispositivos semejantes a los de entrada, pero permiten extraer información del
sistema. Entre este tipo de dispositivos se encuentran el monitor, la impresora y los altavoces.
Hardware de entrada y salida: Son aquellos dispositivos que combinan las funciones de entrada y de salida
de información del sistema. Los discos externos y las memorias USB son componentes de entrada y salida por
ejemplo.
El hardware también se puede clasificar teniendo en cuenta su importancia. En este caso, se distinguen dos
grupos:
● Hardware crítico: Es aquel sin el cual la computadora no puede funcionar. Incluye la placa madre, la CPU,
la memoria RAM, la tarjeta gráfica y la fuente de alimentación.
● Hardware no crítico: Son los componentes que, aunque necesarios, no son imprescindibles para el
arranque de la computadora. A esta categoría pertenecen el disco duro y, en general, los dispositivos de
entrada y salida.
Componentes internos y dispositivos externos:
Como hemos visto, el hardware hace referencia a los diferentes elementos tangibles de una computadora
y hay varias formas de clasificarlo. A continuación, una de las formas más comunes de agruparse es en
interno y externo (periférico).
● Placa madre (o motherboard): Es la placa principal de cualquier sistema informático al que todos los
demás dispositivos se conectan, tanto de manera directa (como los circuitos eléctricos
interconectados) como indirecta (a través de puertos USB u otro tipo de conectores). Cuenta con un
software básico llamado BIOS que le permite realizar y sincronizar sus funciones básicas (como la
transmisión de datos, la administración de la energía eléctrica y el reconocimiento de la conexión
física de otros componentes externos).
Componentes internos y dispositivos externos:
● Memoria interna RAM: Es la memoria que almacena información, de manera temporal y rápida,
para que la computadora la utilice en el momento. Su capacidad de almacenamiento se mide en
unidades llamadas gigabytes (GB). A mayor cantidad de memoria RAM, más rápido puede funcionar
la computadora, por ejemplo, para abrir y usar varios programas a la vez. El contenido de la memoria
RAM se elimina tan pronto se apaga la computadora porque no almacena datos (archivos, videos,
programas, etc.), sino que conserva información sobre las acciones que se están realizando con esos
datos. No almacena el archivo o el programa en sí, sino la información necesaria para ejecutarlo y
mantenerlo funcionando.
Componentes internos y dispositivos externos:
● Memoria interna ROM o BIOS: Es la memoria que almacena información de manera permanente y que se denomina
de “solo lectura”, es decir, el usuario no puede alterar el contenido una vez que se almacenó esa información, solo
puede instalarlo o desinstalarlo. La memoria ROM almacena todo lo relacionado con instrucciones o lo que también
se denomina BIOS (sistema básico o programa de arranque) y que comprende las instrucciones de cómo se inicia la
máquina o cómo funcionan ciertos programas,entre otros.
● Placa de video: También conocida como “tarjeta gráfica” es un dispositivo de hardware interno que se conecta a la
placa madre y permite que la computadora muestre imágenes en el monitor. Básicamente, la única función que
cumple la tarjeta de vídeo en el conjunto de una computadora es procesar la información que le envía la CPU
(Unidad de Proceso Central), y convertirla en imágenes, las que luego enviará al monitor. Es decir que por un lado
ingresa información, es procesada y luego sale por el monitor, tan simple como eso. El tema es como lo hacen. En
este proceso intervienen los varios elementos que conforman una placa de video. A su vez, cada placa de video
siempre requiere de la instalación de un software para que le indique a la computadora cómo usar esa placa de
video. El usuario puede modificar la configuración de la imagen proyectada en el monitor, por ejemplo, la calidad
(mayor o menor definición), el tamaño, entre otros.
Componentes internos y dispositivos externos:
● Placa de sonido: Es un dispositivo de hardware interno que se conecta a la placa madre y se clasifica
según los canales que utiliza, por ejemplo, estéreo, cuadrafónico (sonido envolvente), MIDI
(conector de uso profesional), entre otros. La función principal de la placa es permitir a la
computadora reproducir sonidos (música, voz o cualquier señal de audio) a través de altavoces o
auriculares. También recibe sonidos del usuario a través de la conexión de un micrófono.
Componentes internos y dispositivos externos:
El hardware externo de una computadora está conformado principalmente por dispositivos de entrada y
salida:
Dispositivos de entrada: También llamados periféricos. Son piezas que reciben datos sin procesar y que la
computadora puede procesar a través del software correspondiente. Se dividen en dos categorías,
dispositivos de entrada manual, que deben ser operados por el usuario (teclado, mouse, pantalla táctil,
micrófono, etc.) y dispositivos de entrada automática, que accionan el ingreso de información por su cuenta,
de manera independiente del usuario (lector de banda magnética, reconocimiento de caracteres de tinta
magnética, lector de PIN y chip, lector de código de barras, etc.).
Componentes internos y dispositivos externos:
Dispositivos de salida: Son piezas que envían hacia fuera los datos procesados por la
computadora. Hay dos tipos, de salida temporal (como el monitor, que actualiza
constantemente la imagen de salida en la pantalla) y de salida permanente (como la
impresora, que reproduce información sobre un papel que perdura como una copia
impresa).
Componentes internos y dispositivos externos:
Dispositivos de entrada-salida: Los periféricos de entrada y salida, abreviados e/s o también i/o (del
inglés input/output), son aquellos que cumplen tanto con el ingreso de información al sistema como
con su extracción. Esto puede ocurrir de manera simultánea o por turnos.
Son ejemplos de periféricos mixtos:
Las pantallas táctiles, que permiten al mismo tiempo mostrar la información del sistema visualmente e
interactuar con ella a través de los dedos o de otros instrumentos ópticos como lápices digitales.
Las impresoras multifuncionales, que cumplen las funciones de un escáner y una impresora, o sea,
permiten al usuario tanto digitalizar documentos como imprimirlos.
Los equipos de realidad virtual, normalmente cascos y guantes que proyectan directamente la información
digital a la vista y los oídos del usuario, y le permiten retroalimentar el sistema con los movimientos de su
cuerpo.
Las tarjetas de red o bluetooth, que permiten el envío y la recepción de información proveniente de otros
sistemas computarizados, mediante la codificación y decodificación de señales ópticas, ondas de radio o
impulsos eléctricos a través del cableado.
Qué es Software?
El software es el soporte lógico de un sistema informático, que comprende el conjunto de
instrucciones lógicas necesarias para cumplir tareas específicas en conjunto con el hardware.
De esta manera, el software envía instrucciones que el hardware ejecuta, haciendo posible su
funcionamiento.
El software se construye con una serie de “reglas”(código del programa) escritas en algún
lenguaje de programación. Estas reglas definen cómo debe comportarse el sistema
informático (es decir, el software y también el hardware), indicando su lógica y estructura.
Ahora bien, estas reglas no pueden escribirse de cualquier forma, por ello existen los
lenguajes de programación, que nos permiten darle comportamiento al software.
Algunos de los sistemas operativos más famosos son Windows, de la empresa Microsoft y Mac0S de la empresa Apple.
A su vez, existen otras alternativas libres (pagas o gratuitas) basadas en otro sistema operativo que es Unix. Un
ejemplo de esto es Ubuntu que es libre y gratuito. Pero atención, Mac0S también fue diseñado a partir de la base de
Unix pero es privado y pago. ¿Cómo es esto? ¿Cuáles son las diferencias entre software libre, gratuito y privado?
Se conoce como software libre a todo programa que respeta la libertad de los usuarios y la comunidad. A grandes rasgos,
significa que los usuarios tienen la libertad de ejecutar, copiar, distribuir, estudiar, modificar y mejorar el software. Es
decir, el software libre es una cuestión de libertad, no de precio. Para entender el concepto, debemos pensar “libre” como
en “libre expresión”.
En inglés, a veces en lugar de “free software” decimos “libre software ”, empleando ese adjetivo francés o español,
derivado de “libertad”, para mostrar que no implica que el software es gratuito. Se puede haber pagado dinero para
obtener copias de un programa libre, o puede haber obtenido copias sin costo, pero con independencia de cómo se
obtuvieron sus copias, siempre se tiene la libertad de copiar y modificar el software, incluso de vender copias.
Software de aplicación
En informática, se entiende por software de aplicación, a aquellos programas generalmente
instalados en el sistema operativo por el usuario, y diseñados para llevar a cabo un objetivo
determinado y concreto, de tipo lúdico, instrumental, comunicativo, informativo, etc.
Dicho de otro modo, todos aquellos programas que no tienen que ver con el funcionamiento del
computador, sino que se instalan en él con funciones determinadas, ya sea como herramientas de
trabajo (hoja de cálculo, procesador de palabras, programas de diseño gráfico, etc.), de ocio
(videojuegos, reproductores de audio o video, etc.) o de información (enciclopedias digitales,
navegador de Internet, etc.), entre otras.
Todos los programas existentes provienen de un software de programación, y cada software de este tipo
permite “escribir” un lenguaje o protocolo diferente, aunque muchos, claro, son el equivalente a
políglotas.
● Google Chrome.
● Mozilla Firefox.
● Opera.
● Safari.
● Microsoft Edge.
EDITORES DE TEXTO
Son programas que te permiten realizar o
escribir código fuente (HTML, CSS, PHP,
JavaScript) de tus proyectos. Al ser dinámicos,
son idóneos para cuando desarrollas uno con
varios lenguajes de programación. Algunos de
ellos son:
● Sublime Text.
● Atom.
● Visual Studio Code.
Código fuente: es el conjunto de líneas de textos, las cuales son las directrices
que debe seguir la computadora para realizar dicho
programa.
TERMINAL O CONSOLA
Fuente: https://tutorial.djangogirls.org/es/intro_to_command_line/
Recordá:
● Revisar la Cartelera de Novedades.
● Hacer tus consultas en el Foro.
Windows 7
Windows 8
Windows 8
Windows 10
Windows 10
Configuración de Windows 10
El cuadro de búsqueda
permite encontrar
configuraciones
Windows 10 es un sistema
operativo orientado a la
nube y nos ofrece acceso a
las aplicaciones Office
365
Interfaz de usuario
• Centro de
actividades
OneDrive, el servicio
de almacenamiento
en la nube de
Microsoft, se
encuentra ahora
integrado en el
Explorador de
Windows.
Requiere cuenta
Microsoft.
Opciones de configuración
Categoría
Existe un cuadro de
búsqueda que nos
permite buscar
aplicaciones.
Windows tiene
su propio
antivirus,
Windows
Defender, que
debe estar
actualizado para
protegernos de
programas
maliciosos.
Dos veces al año, Microsoft libera actualizaciones de
características y nuevas funcionalidades
Aplicaciones
En Windows hay dos tipos de aplicaciones: Aplicaciones de escritorio:
Aplicaciones de escritorio - Sólo se pueden instalar y usar en PC o Tablet
Aplicaciones universales con W10
Aplicaciones
universales
Se adquieren en la Tienda Microsoft
Algunas son gratuitas y otras son de
pago (en ese caso se requiere cuenta
Microsoft).
Correo, Contactos, Calendario, Paint
3D… son aplicaciones universales que
vienen incluidas en W10
Se pueden instalar en diversos
dispositivos: PC, Tablet o Smartphone.
Muchas aplicaciones tienen versiones
para sistemas operativos Android y
Mac
La Tienda Microsoft es un portal similar a Google Play o
Apple Store, desde el que se pueden adquirir:
Aplicaciones
Tienda Juegos
Microsoft Música
Películas y Series TV
Windows 10 revisa de
todas las aplicaciones de
la Tienda Microsoft,
también las que vienen
incluidas con el sistema
operativo, se actualicen
de forma automática.
También se pueden
obtener actualizaciones
de forma manual.
Microsoft Edge: el nuevo navegador basado en
Chromium, que sustituye a la anterior versión de
Nuevo Microsoft Edge.
Podemos
Correo contactos y agregar varias
calendario son tres cuentas de
aplicaciones que correo, de varios
están conectadas proveedores
entre sí (Outlook,
Google,
Yahoo...)
Fotos, Música, Películas y TV
Windows 10 incluye el
acceso a la versión web de
las aplicaciones Office 365.
Permite almacenar trabajos
y documentos de forma
segura en OneDrive.
Requiere cuenta Microsoft.
Aplicaciones
Ofimática
Atajos de teclado
Win Abre el menú Inicio
Win + Q Abre Cortana preparada para
comando de voz
La etimología del vocablo proviene del latín “systēma” que a su vez proviene del griego “σύστημα”, que se
traduce como “unión de elementos de forma organizada”. Un sistema es una serie de elementos que
están interconectados entre sí y cuyo funcionamiento es como un todo. Los elementos que lo
conforman pueden ser diversos, como un grupo de lineamientos o principios perfectamente estructurados
acerca de una teoría, ciencia o materia. Algunos ejemplos pueden ser los sistemas de información, los
sistemas económicos y políticos o el cuerpo humano, entre otros.
Características de un sistema
Ahora bien, los sistemas son a su vez el objeto de estudio de la Teoría General de Sistemas, una disciplina
que los aborda desde una perspectiva múltiple e interdisciplinaria. Según esta teoría, cualquier sistema es
reconocible dados sus límites y partes interrelacionadas e interdependientes (sus llamados subsistemas), a
punto tal que la modificación de un elemento modifica necesariamente el funcionamiento del resto del
sistema. Asimismo, dentro de un sistema es posible prever, con mayor o menor precisión, el
comportamiento de sus componentes si se modifican los demás.
¿Qué es un sistema? - Características
A continuación se presentarán algunas de sus principales características:
● Propósito: todos los sistemas deben tener un propósito, tanto sus objetivos como las relaciones que
se dan dentro de él. Esto tiene que ver con la sinergia que surge de cada sistema, o sea que el todo
sería mucho más que la suma de las partes. Esta visión permitiría apreciar aún más las interacciones,
particularidades y procesos que por lo general no se perciben si se estudian los aspectos que
conforman el todo por separado. Toda relación y todo objetivo debe poder responder el por qué y para
qué.
● Globalismo o totalidad: son de origen orgánico; por ello, si existe una acción que provoca
modificaciones en cualquier elemento del mismo, es probable que se den restauraciones en el resto de
los elementos a causa de la relación que hay entre cada uno de ellos. Las consecuencias totales de
dichos cambios se presentarán como un ajuste de esta estructura, todo esto es de gran relevancia a la
hora de entender su significado y el estudio de los mismos.
● Entropía: la entropía es definida como la tendencia que tienen estas estructuras para desgastarse,
desintegrarse, para bajar los estándares e incrementar la aleatoriedad. La segunda ley de la
termodinámica afirma que con el tiempo la entropía de los sistemas se eleva. Por ejemplo, en el
ámbito de la computación, se puede apreciar como los dispositivos se van deteriorando con el uso de un
dispositivo, a la larga comienzan a surgir deterioros.
¿Qué es un sistema? - Características
● Homeostasis: es el equilibrio común que hay entre las partes. Generalmente estas tienden a
adaptarse, para de esa forma lograr un balance internamente que les permita hacerle frente a los
cambios del medio en el que se encuentran. Esto es conocido también bajo el nombre de
autorregulación y es una característica que no todos los sistemas logran alcanzar con igual éxito. Por
ejemplo, hoy en día, en el mundo de la informática, los sistemas de inteligencia artificial tienen esta
característica super desarrollada buscando crear sistemas que sean cada vez más autónomos y
adaptativos frente a escenarios cambiantes.
Ahora bien, ¿por qué nos importa todo esto en el mundo Informático? Básicamente, toda esta teoría de los
sistemas es la base en donde hoy se apoyan diferentes profesionales para resolver los desafíos del mundo
informático. Una computadora, tablet o celular suelen ser pensados como sistemas informáticos ya que su
principal finalidad es almacenar, procesar y representar información de forma tal que sea útil para un ser
humano u otro tipo de sistemas.
Asimismo, hoy en día la computación está compuesta por dos grandes sistemas: el hardware y el software.
Estos dos grandes sistemas, que son casi indivisibles como el cuerpo y la mente, van a ser nuestros
principales espacios de trabajo. En esta unidad, nos dedicaremos a comprender, desde una mirada
sistémica, cómo se conforman e interrelacionan ambos sistemas.
Herramientas Digitales
Herramientas Digitales
Aspectos de seguridad
Los datos son valores, números, medidas, textos,
documentos en bruto, la información es el valor de esos
datos, es lo que aporta conocimiento. Los manuales de
procedimientos, los datos de los empleados, de los
proveedores y clientes de la empresa, la base de datos de
facturación son datos estructurados de tal forma que se
convierten en información, que aportan valor como
compañía.
Los pilares de la seguridad de la información se fundamentan
en esa necesidad que todos tienen de obtener la información,
de su importancia, integridad y disponibilidad de la
información para sacarle el máximo rendimiento con el
mínimo riesgo.
La seguridad está fundamentada por 3 pilares, pero puede
haber más que puedan fundamentar a la seguridad, en este
caso, si alguno de los lados es débil se perderá seguridad o
usabilidad, si falta alguno de los lados la organización queda
expuesta a ataques, para esto se debe conocer en detalle
cuál es la función de cada lado en el gráfico.
Con esto se puede definir qué especie o rango de valores acepta y qué
clase de operaciones se puede realizar.
Tipos de datos
El caracter, que puede ser una letra, un símbolo o un número entre comillas, es un dato
alfanumérico.
Cuando agrupamos más de un carácter se forma una cadena de texto, una cadena de
caracteres.
“Hola”, “asd@3”, “42”, “Argentina es campeón” son todos ejemplos de tipo de dato caracter.
En el caso del “42”, lo que hace que esto sea de tipo caracter y no numérico es el uso de las
comillas para enmarcarlo: aquí, eso no es un número, sino una cadena de caracteres que,
coincidentemente, representa un número en forma de texto.
Lógicos (booleanos)
Este tipo de dato puede representar sólo dos valores, como pueden ser
Verdadero o Falso, 1 o 0.
Ejemplo: la expresión booleana |8 < 4| daría Falso como resultado, dado que 8
no es menor que 4.
Tipos de lenguajes de programación
Ejemplos en la vida cotidiana pueden ser: lavarse los dientes, una receta de
cocina, caminar de un punto a otro, etc.
Fuente:
C. Cimino.
Ejemplos en PSeInt
Este algoritmo
representado mediante
un diagrama de flujo
simplemente imprime
por consola la frase “Hola
Mundo”.
Análisis y resolución de Problemas
1 2 3 4
Análisis del Análisis del Análisis del Análisis del
problema
Análisis del problema
Diseñar el problema problema
Depurar el
problema Algoritmo Codificar programa
1- Análisis del problema
Ejercicio
Primer intento
Identificando las entradas y salidas
Entradas Salidas
Mi sueldo bruto Mi sueldo neto
El valor del monotributo
Vamos al código!!
Segundo intento
No te olvides de dar el presente
Recordá:
● Revisar la Cartelera de Novedades.
● Hacer tus consultas en el Foro.
CONCEPTOS INTRODUCTORIOS
Antes de comenzar a transitar nuestro camino, será necesario entender cuál es nuestra
principal herramienta de trabajo y el sector en el que nos desenvolveremos.
Si analizamos nuestro entorno, podremos identificar varios artefactos que son denominados
“inteligentes”, algunos de ellos son: los smartphones, los aires acondicionados, los smartwatchs,
etc. Se les atribuye tal nombre, al estar computarizados. Sin embargo, cada uno de ellos, operan de
manera diferente y cada uno cumple distintas funciones en la cotidaneidad.
Para entender la diferencia de cada uno de estos artefactos y por consiguiente, poder abordar
algunas areas de la informatica, es necesario preguntarnos ¿qué es una computadora?
Una computadora es un objeto que surge de la sumatoria de dos partes bien diferenciadas,
que se necesitan entre si para poder operar, estas partes son denominadas como hardware y
software. Si bien es cierto que se puede programar desde un dispositivo móvil, por motivos de
comodidad y de rendimiento, el programador usualmente utiliza lo que se conoce comercialmente
como computadora de escritorio o portátil para desempeñar su trabajo. Partiendo de este concepto,
podemos enfocarnos en esas partes que la conforman:
v1.0.0
Introducción a la Algoritmia
Instructora: Peletay, Milena Abigail
Un programa es un conjunto de uno o mas algoritmos, que trabajan de forma ordenada, a fin
de cumplir con determinado propósito, realizar una tarea o trabajos específicos, en una
computadora.
Un algoritmo, es un conjunto ordenado de instrucciones finitas bien definidas que resuelven
un problema. Un manual de instrucciones para colgar una televisión en la pared, una receta de
cocina para preparar un postre, las indicaciones de un GPS para llegar a destino, son algunos de las
tareas diarias que conforman algoritmos, ya que cumplen con ciertas características que hacen a su
esencia. Todo algoritmo debe ser:
• Preciso: Sin ambigüedad.
v1.0.0
Introducción a la Algoritmia
Instructora: Peletay, Milena Abigail
• Ordenado: Constituir una secuencia clara y precisa, un paso a paso, para poder
llegar a un determinado resultado.
• Finito: Ser un número determinado de pasos.
• Concreto: Ofrecer una solución especifica a un problema especifico.
• Definido: El mismo algoritmo debe dar el mismo resultado al recibir la misma
entrada.
v1.0.0
Introducción a la Algoritmia
Instructora: Peletay, Milena Abigail
Como vimos anteriormente, dar una solución a un problema de manera eficaz, implica ser
muy conscientes a la hora de definir la secuencia de instrucciones y qué instrucciones le daremos a
la computadora. De ello depende el resultado que obtendremos.
Pensemos que estamos configurando un robot, y queremos programarlo para que pueda
lavarse los dientes. Los pasos que el autómata debería llevar adelante son:
1. Tomar la pasta de dientes con la mano derecha.
2. Con la mano izquierda destapar la pasta de dientes.
3. Dejar la tapa en el lavamanos
4. Con la mano izquierda ya liberada, tomar el cepillo de dientes
5. Posicionar la pasta de dientes sobre las cerdas del cepillo
6. Depositar la pasta en el cepillo: Apretar la pasta de dientes mientras la deslizamos sobre las
cerdas, y soltar cuando corresponda para que no caiga al piso
7. Introducir el cepillo en la boca
8. Cepillar: Mover el cepillo de izquierda a derecha cuando este posicionado en cada diente
etc…..
Este es un algoritmo que apunta a resolver esa tarea. Ahora bien, ¿qué pasaría si movemos
una instrucción de lugar? Imaginemos que lo establecemos de la siguiente manera:
1.Introducir el cepillo en la boca
2.Tomar la pasta de dientes con la mano derecha.
3.Con la mano izquierda destapar la pasta de dientes.
4.Dejar la tapa en el lavamanos
5.Con la mano izquierda ya liberada, tomar el cepillo de dientes
6.Posicionar la pasta de dientes sobre las cerdas del cepillo
7.Depositar la pasta en el cepillo: Apretar la pasta de dientes mientras la deslizamos sobre
las cerdas, y soltar cuando corresponda para que no caiga al piso
8.Cepillar: Mover el cepillo de izquierda a derecha cuando este posicionado en cada diente
v1.0.0
Introducción a la Algoritmia
Instructora: Peletay, Milena Abigail
Un poco de historia..
En este grupo de estudio, nos enfocaremos en aprender la sintaxis básica del lenguaje de
programación de alto nivel Python 3.11.
Si partimos de una visión holística de la profesión, lograremos entender los cómo y por qué
del oficio del programador.
v1.0.0
Introducción a la Algoritmia
Instructora: Peletay, Milena Abigail
Algunos consejos...
Si bien apuntaremos a desarrollar habilidades duras(nos instruiremos en Python), te dejo
algunos consejos que considero necesarios destacar antes de que inicies tu camino en el mundo de
la programación:
v1.0.0
Introducción a la Algoritmia
Instructora: Peletay, Milena Abigail
refrescar conceptos, pensar en otras soluciones a través de ejemplos, aprender cosas nuevas,
cada vez que se te presente un problema, para llegar más rápido a la solución.
v1.0.0
NOTA: Esta lista no es exhaustiva, es una guía de preguntas orientativa a la hora de
comenzar el análisis de cualquier problemática que queramos informatizar.
Sería un buen ejercicio si pueden completar esta lista con preguntas que les surjan y que
consideren útiles a la hora de encarar los ejercicios.
● Entender el problema
○ ¿Cuáles son las entradas y salidas? Identificar variables y/o constantes a
utilizar.
○ ¿Con qué tipos de datos voy a trabajar? Es decir, ¿Cuál es la naturaleza de
esos datos?
○ ¿Cuáles son las restricciones que se pueden aplicar a dichos datos?
○ Pensar casos particulares del problema, por ejemplo en el ejercicio de
números primos, pensar cómo tendrían que ser las operaciones si el número
fuera un 5, o un 7, luego generalizar. Pensar que pasa datos "extremos o
problemáticos", por ejemplo el 0, un número negativo, etc.
● Diseñar el algoritmo
○ ¿Cómo estará estructurado nuestro algoritmo? Esta pregunta está orientada
a implementar una estrategia conocida como top-down, en la cual
desglosamos el problema que plantea el ejercicio en problemas más
pequeños e independientes entre sí para poder encararlos de a uno.
■ Parte declarativa
■ Etapa de validación (Aplicar restricciones a los datos de entrada).
● ¿Qué salidas o mensajes obtendrá el usuario durante el
proceso de validación?
● Algoritmo principal o parte de procesos.
○ ¿Cuáles son los pasos que debemos realizar y en qué orden para resolver el
problema?
■ ¿Requiere algún proceso repetitivo? Es decir, hay pasos que se
tengan que repetir? En caso afirmativo, ¿Sabemos cuantas veces?
■ Si no sabemos cuantas veces se repetirán esos pasos, bajo qué
condiciones se evaluarán?
■ ¿Cuáles son esos pasos que se repiten?
■ ¿Hay otras condiciones que tenga que tener en cuenta en mi
programa? ¿Cuáles? ¿En qué parte del proceso?
■ ¿Vamos a necesitar variables "temporales", "intermedias", “internas”,
por ejemplo: contadores, acumuladores, banderas? ¿En qué parte del
proceso?
● En caso del contador y/o acumulador, pensar dónde y con qué
valor inicializarlo, y en qué parte/s del proceso deberá
actualizarse.
● En el caso de la bandera, que eventos del programa
querremos "recordar" o "marcar" para luego ser utilizados,
¿dónde los necesitaremos?
Palabras reservadas
Es una palabra que tiene un significado gramatical especial para ese lenguaje y no puede ser
usada como identificador de objetos en el código (nombre de variables, de constantes, de
funciones, etc).
Con Paso En una instrucción repetitiva para (Para), se utiliza para indicar
el <valor_incremento> que se sumará, en cada iteración del bucle, a la
variable inicializada.
De Otro Modo Caso por defecto en una instrucción de control alternativa múltiple (Segun).
Para usar las funciones se debe colocar su nombre y entre paréntesis el o los argumentos que
requiera. Esta función devolverá un valor y nos facilitará realizar ciertos cálculos o usar código
ya escrito.
Donde nombreFuncion es el nombre de la función y arg1, … son los argumentos que requiere
la función para devolvernos un resultado.
Funciones matemáticas
Veamos Algunos ejemplos
Funciones para cadenas de texto
Hoy Clase 5
Introducción a la Algoritmia,
Introducción a la algoritmia Variables y tipos de datos Operadores.
● Retomando:Algoritmos.
Concepto y Diagrama de
flujo.
● Variables y constantes
● Operador de asignación.
● Input & Output
● Operadores aritméticos
Algoritmos
Es una secuencia lógica de pasos ordenados para resolver un problema
Ejemplos en la vida cotidiana pueden ser: lavarse los dientes, una receta de
cocina, caminar de un punto a otro, etc.
Fuente:
C. Cimino.
Como se ven en PSeInt
Este algoritmo
representado mediante
un diagrama de flujo
simplemente imprime
por la ventana la frase
“Hola Mundo”.
Ejercicio
1 2 3 4
Análisis del Análisis del Análisis del Análisis del
problema
Análisis del problema
Diseñar el problema problema
Depurar el
problema Algoritmo Codificar programa
1- Análisis del problema
Detonador de conocimientos previos..
¿Qué tienen en común las siguientes imágenes?
¿Qué es una variable?
Convención de nomenclatura
● Lower Camel Case o Camel Case: nombreVariable
● Pascal Case o Upper Camel Case: NombreVariable
● Snake Case: nombre_variable
● Kebab Case: nombre-variable
Inicializar una variable. El operador de asignación.
Una vez que reservamos la “cajita” en la memoria
ram, que indicamos el nombre y el tipo de dato que
vamos a guardar allí, podemos proceder a guardar
un dato siempre que sea del tipo que hemos
indicado anteriormente. Todo esto gracias al
operador de asignación “=”
Reasignar un dato a una variable
El operador de asignación, siempre
examinará lo que hay en la derecha
y lo asociará al objeto que tendrá a
la izquierda. Las variables son
“cajitas simples”(hay otras mas
complejas), que admiten un dato a
la vez. Cuando utilicemos éste
operador para guardar un dato en
una variable a la que ya le hemos
guardado un dato con anterioridad,
estaremos “actualizando” el dato
asociado.
¿Qué es una constante?
Si consideramos una variable como una "cajita"
que puede almacenar un valor que puede
cambiar durante la ejecución del programa,
entonces podríamos decir que una constante es
una "cajita" que tiene un valor fijo que no cambia
durante la ejecución del programa.
Escribir «objeto»
Con el operador , podremos concatenar objetos, de modo que el mensaje que se muestre
sea mucho mas interesante
Instrucción Leer(input)
Anteriormente vimos cómo la maquina podía recibir
la orden de exteriorizar información a través de la
instrucción Escribir.
Leer «identificadorVariable»
Veamos como funciona
Suma +
Resta -
Multiplicación *
División /
Potencia ↑
Módulo MOD
Veamos un ejemplo más...
Ahora integrando todos los conceptos vistos...
Jerarquía de operadores aritméticos
Como programadores, estaremos en situaciones que nos demandaran realizar calculos
un poco más complejos, para ello es importante respetar cierta jerarquia, ya que la
computadora priorizara resolver algunos primeros que otros...
La jerarquía de operadores en PSeInt, de mayor a menor prioridad, es la siguiente:
1 Paréntesis.
2 Exponentes.
3 Multiplicación, división y resto: se realizan en orden de izquierda a derecha, es decir,
primero se realizan todas las multiplicaciones, luego todas las divisiones y,
finalmente, todos los restos.
4 Suma y resta: también se realizan en orden de izquierda a derecha.
Primer intento
Identificando las entradas y salidas
Entradas Salidas
Mi sueldo bruto Mi sueldo neto
El valor del monotributo
Vamos al código!!
Segundo intento
Recordá:
● Revisar la Cartelera de Novedades.
● Hacer tus consultas en el Foro.
Hoy Clase 6
Variables y Operadores
Variables y tipos de datos Operadores y estructuras de
● Retomando con control
demostracion: Variables y
tipos de datos. Operador de
asignación.
● Input & Output
● Operadores aritméticos
● Resolucion de ejercicio
Veamos los siguientes ejemplos
(ésta variable
solo admitirá
enteros)
(la primera admitirá
enteros, la segunda
una cadena de
caracteres)
(ambas
admitirán
enteros)
¿Cómo nombrar una variable?
Reglas generales
*No utilizar la letra ñ
*Comenzar con una letra
¿por qué son importantes
*Puede contener números y guiones las convenciones en
*No puede contener espacios programación?
*No utilizar palabras reservadas
En variables cortas de una palabra, el nombre se recomienda siempre en
minúsculas, incluso su primera letra.
Convención de nomenclatura
● Lower Camel Case o Camel Case: nombreVariable
● Pascal Case o Upper Camel Case: NombreVariable
● Snake Case: nombre_variable
● Kebab Case: nombre-variable
Operador de asignacion
El operador de asignación, siempre
examinará lo que hay en la derecha
y lo asociará al objeto que tendrá a
la izquierda. Las variables son
“cajitas simples”(hay otras mas
complejas), que admiten un dato a
la vez. Cuando utilicemos éste
operador para guardar un dato en
una variable a la que ya le hemos
guardado un dato con anterioridad,
estaremos “actualizando” el dato
asociado.
¿Qué es una constante?
Si consideramos una variable como una "cajita"
que puede almacenar un valor que puede
cambiar durante la ejecución del programa,
entonces podríamos decir que una constante es
una "cajita" que tiene un valor fijo que no cambia
durante la ejecución del programa.
Escribir «objeto»
Con el operador , podremos concatenar objetos, de modo que el mensaje que se muestre
sea mucho mas interesante
Instrucción Leer(input)
Anteriormente vimos cómo la maquina podía recibir
la orden de exteriorizar información a través de la
instrucción Escribir.
Leer «identificadorVariable»
Veamos como funciona
Suma +
Resta -
Multiplicación *
División /
Potencia ↑
Módulo MOD
Veamos un ejemplo más...
Ahora integrando todos los conceptos vistos...
Jerarquía de operadores aritméticos
Como programadores, estaremos en situaciones que nos demandaran realizar calculos
un poco más complejos, para ello es importante respetar cierta jerarquia, ya que la
computadora priorizara resolver algunos primeros que otros...
La jerarquía de operadores en PSeInt, de mayor a menor prioridad, es la siguiente:
1 Paréntesis.
2 Exponentes.
3 Multiplicación, división y resto: se realizan en orden de izquierda a derecha, es decir,
primero se realizan todas las multiplicaciones, luego todas las divisiones y,
finalmente, todos los restos.
4 Suma y resta: también se realizan en orden de izquierda a derecha.
Primer intento
Identificando las entradas y salidas
Entradas Salidas
Mi sueldo bruto Mi sueldo neto
El valor del monotributo
Vamos al código!!
Segundo intento
Recordá:
● Revisar la Cartelera de Novedades.
● Hacer tus consultas en el Foro.
Hoy Clase 7
Operadores
Variables y tipos de datos Estructuras de control
● Operadores aritméticos y
resolucion de ejercicio
● Operadores relacionales
● Operadores logicos
● Resolucion de ejercicio
● Introduccion a estructuras
de control
Retomando conceptos.. ¿qué es un operador?
Suma +
Resta -
Multiplicación *
División /
Potencia ↑
Módulo MOD
Veamos un ejemplo más...
Ahora integrando todos los conceptos vistos...
Jerarquía de operadores aritméticos
Como programadores, estaremos en situaciones que nos demandaran realizar calculos
un poco más complejos, para ello es importante respetar cierta jerarquia, ya que la
computadora priorizara resolver algunos primeros que otros...
La jerarquía de operadores en PSeInt, de mayor a menor prioridad, es la siguiente:
1 Paréntesis.
2 Exponentes.
3 Multiplicación, división y resto: se realizan en orden de izquierda a derecha, es decir,
primero se realizan todas las multiplicaciones, luego todas las divisiones y,
finalmente, todos los restos.
4 Suma y resta: también se realizan en orden de izquierda a derecha.
>= == !=
res = 13 >= 13 res = 10 == 10 res = 15 != 15
res es Verdadero res es Verdadero res es Falso
Ejemplos
Qué muestra en pantalla ?
Operadores aritméticos y relacionales
&Y |O !
AND OR NOT
Operador NOT
NOT
Operador NOT su tabla de verdad
!VERDADERO FALSO
!FALSO VERDADERO
Operador AND
&Y
AND
Operador AND su tabla de verdad
|O
OR
Operador OR su tabla de verdad
1. Operadores aritméticos
2. Operadores relacionales
3. Operadores lógicos
Ejercicio de cierre
1. 2000
2. 2004
3. 2008
4. 2012
5. 2016
1. 2001
2. 2003
3. 2005
4. 2007
5. 2009
Recordá:
● Revisar la Cartelera de Novedades.
● Hacer tus consultas en el Foro.
Estructuras de
Operadores Estructuras de control.Bucles
control.Condicionales
1. 2000
2. 2004
3. 2008
4. 2012
5. 2016
1. 2001
2. 2003
3. 2005
4. 2007
5. 2009
Detonador de conocimientos previos..
¿Conoces este juego de mesa?
En el juego de la oca, hay casillas especiales que te permiten avanzar varias
casillas de golpe, retroceder a una casilla anterior, perder un turno o volver a
tirar el dado. Estas casillas especiales son condiciones que afectan tu progreso
en el juego.
La sintaxis es:
Si <<expresión_booleana» Entonces
«instrucciones>>
FinSi
Pero… ¿no seria conveniente definir una instrucción que se ejecute en el caso de
que el estudiante haya obtenido una calificacion del 1 al 6?
¿No seria conveniente definir cuales son las notas admitidas para mostrar
el mensaje de reprobado?
Estructuras de Control II
Estructuras de Control II Repaso general PSeInt
● Concepto de estr repetitiva
● Mientras
● Repetir Hasta Que
● Para
● Contador, Acumulador y
Bandera
Tipos de ciclos
Repetir
<instrucciones>
Hasta Que <expresión_booleana>
Ejemplo
Para
La instrucción Para ejecuta una secuencia de
instrucciones un numero determinado de veces.
La sintaxis
Es una variable
Es una variable
Es una variable
Hoy Clase 11
Repaso
Estructuras de control Repaso
● Ejercicio de repaso 1
● Ejercicio de repaso 2
● Ejercicio de repaso 3
● Trivia
Ejercicio de repaso 1
Hoy Clase 12
Repaso
Repaso Produccion de CheatSheet
● Ejercicio de repaso 1
● Ejercicio de repaso 2
● Ejercicio de repaso 3
● Trivia
Ejercicio de repaso 1
Crea un programa que solicite un color, y en funcion del color
ingresado muestre un mensaje indicando si el color es primario,
secundario, o terciario; y que indique un mensaje cuando el dato
ingresado no sea un color. Por ej: que cuando ingrese “Mario” , el
programa muestre “El dato ingresado no corresponde a un color”
Nota: los colores primarios son amarillo, azul , rojo; los secundarios
son verde, naranja, violeta; y los terciarios amarillo verdoso, amarillo
anaranjado, rojo anaranjado, rojo violeta, azul violeta y azul verdoso.
Ejercicio de repaso 2
INPUT OUTPUT
Leer <variable> Escribir <<variable o expresión>>
OPERADORES
ASIGNACIÓN CONCATENACIÓN ARITMÉTICOS RELACIONALES LÓGICOS
Jerarquía: 1º se leen los operadores aritméticos: 1. Paréntesis 2. Exponentes 3. Multiplicación, división y resto 4. Suma y resta . 2º los operadores relacionales y
3º los operadores lógicos. Se realizan las operaciones de Izq a der.
ESTRUCTURAS DE CONTROL
CONDICIONALES BUCLES
Hoy Clase 13
Producción de repaso
Repaso Instalacion de VSC y Python 3
● Presentacion de
herramientas de
produccion de resumen
● Produccion de resumen
Presentación de herramientas para la
producción del resumen
➔ Enfocarnos en sintaxis
➔ Aprovechar todo el espacio disponible de la hoja(incluso
ocupar los bordes)
➔ Usar colores que ayuden con la lectura del resumen
➔ El documento final debe tener una, dos o tres hojas como
máximo
Recordá:
● Revisar la Cartelera de Novedades.
● Hacer tus consultas en el Foro.
https://www.python.org/downloads/
● Repaso de caracteristicas
● Output
● Funcion type()
● Input
● Casting
¿Qué es Python?
El compilador no permite que un programa se ejecute El intérprete ejecuta el programa desde la primera línea y
hasta que esté completamente libre de errores. detiene la ejecución sólo si encuentra un error.
Compile una vez y ejecútelo en cualquier momento. El Cada vez que ejecutan el programa, se interpreta línea
programa compilado no necesita compilarse cada vez. por línea.
El error se informa cuando se encuentra el primer error. El
Los errores se informan después de que se comprueba
resto del programa permanece sin marcar hasta que se
todo el programa, los errores sintácticos y de otro tipo.
resuelve el error.
El intérprete no genera código de memoria intermedio.
El programa compilado ocupa más memoria porque todo
Por lo tanto, los programas de intérprete son eficientes en
el código objeto tiene que residir en la memoria.
la memoria.
Por ejemplo: C, C ++, CLEO, C #. Por ejemplo: JavaScript, Python, BASIC, etc.
Fuertemente tipado:
Función print()
Funcion type()
Función input()
Casting
● f-strings
● operadores aritmeticos
● operadores relacionales
● operadores logicos
● operadores asignacion
● Intro a arreglos
● operadores de pertenencia
Mejorando nuestros outputs
disyuncion or disyuncion o
● aritméticos
● relacionales
● lógicos
https://docs.python.org/es/3/reference/expressions.html?highlight=oper
ators#operator-precedence
Asignacion
Asignacion = Asignacion =
in Devuelve True
cuando el valor se
encuentra en una
secuencia
is Devuelve True
cuando dos var se
refieren al mismo
objeto en la memoria.
● Condicional Simple
● Condicional Doble
● Variables y condicionales
● Condicional Multiple (elif)
● Estructura Match
Estructuras de Control en Python
Condicionales
IF- CONDICIONAL SIMPLE
if <<expresionBooleana>>:
sangría<<bloqueDeInstruccionesEnCasoTrue>>
IF-ELSE - CONDICIONAL DOBLE
if <<expresionBooleana>>:
sangría<<bloqueDeInstruccionesEnCasoTrue>>
else:
sangría<<bloqueDeInstruccionesEnCasoFalse>>
IF-ELSE y variables
if <<expresionBooleana>>:
sangría<<bloqueDeInstruccionesEnCasoTrue>>
elif <<expresionBooleana2>>:
sangría<<bloqueDeInstruccionesEnCasoTrue>>
else:
sangría<<bloqueDeInstruccionesEnCasoFalse>>
MATCH - CONDICIONAL Múltiple
● Introducido en python 3.10. Equivalente al Segun. Sintaxis:
match <<expresionNumericaOAlfanum>>:
sangríacase <<opcion1>>:
sangríasangría<<bloqueDeInstrucciones>>
sangríacase <<opcion2>>:
sangríasangría<<bloqueDeInstrucciones>>
sangríacase _:
sangríasangría<<bloqueDeInstruccionesEnCasoQueNingunoCoincida>>
Material extra:
01-Introduccion a Python
https://www.youtube.com/watch?v=ZBE33BKtzLk
02-Cadenas en Python
https://www.youtube.com/watch?v=udrtC26_l04
03-Numeros en Python
https://www.youtube.com/watch?v=_qNQzBKPhKs
04-Estructuras de control en Python
https://www.youtube.com/watch?v=Weeq4-EcjSM
Recordá:
● Revisar la Cartelera de Novedades.
● Hacer tus consultas en el Foro.
● Bucle while
● Bucle for
● Funcion range
● Break, continue , else
Estructuras de Control en Python
Bucles
WHILE- BUCLE
while <<expresionBooleana>>:
sangría<<bloqueARepetirEnCasoTrue>>
FOR - BUCLE
Sentencias con las que podremos tener ciertos controles en los ciclos.
Recordá:
● Revisar la Cartelera de Novedades.
● Hacer tus consultas en el Foro.
● Arreglos
● Listas
● Tuplas
Arreglos
<<nombreLista>>[<<indice>>]
Actualizamos un dato de acuerdo al indice
<<nombreLista>>[<<indice>>] = <<nuevoDatoEnIndice>>
MÉTODOS. ¿Qué son?
<<nombreLista>>.<<nombreMetodo>>(<<argumento>>)
Función dir()
dir(<<elemento>>)
Metodos de las listas
sintaxis metodo ¿que hace?
<nombre_lista>.append(<elemento>) añade un elemento
al final
<nombre_lista>.pop(<posición>) devuelve un
elemento y lo borra
<<nombreTupla>>[<<indice>>]
Metodos de las tuplas
sintaxis metodo ¿que hace?
<nombre_tupla>.count(<elemento>) devuelve el numero
de veces que
aparece un
elemento en la tupla
● Arreglos
● Diccionarios
● Metodos de diccionarios
● Repaso funcion len
● Operador del
Arreglos
<<valor>> <<valor>>
nombreDic
clave 1 clave 2
Accedemos a cada uno de los valores con su clave
<<nombreDic>>[<<clave>>]
Actualizamos un valor de acuerdo a su clave
<<nombreDic>>[<<clave>>] = <<nuevoDatoAsociadoAClave>>
MÉTODOS. ¿Qué son?
<<nombreDic>.<<nombreMetodo>>(<<argumento>>)
Función dir()
dir(<<elemento>>)
Metodos de los diccionarios
sintaxis metodo ¿que hace?
<nombre_diccionario>.copy() devuelve otro dict,
que es una copia
de ese dict
dict.fromkeys(<secuenciaDeClaves>, <valor>) devuelve un dict con las
claves de la secuencia y
el mismo valor
Metodos de diccionarios
sintaxis metodo ¿que hace?
<nombre_diccionario>.get(<clave>,<valorSiNoHayClave>) devuelve un valor segun
una clave, si no
encuentra la clave
devuelve un valor por
defecto
len(<<elemento>>)
Operador del
del <<elemento>>
Recordá:
● Revisar la Cartelera de Novedades.
● Hacer tus consultas en el Foro.
Hoy Clase 21
1 al 5 y, en función de ese
número, determine e imprima el
nombre del dedo de la mano
correspondiente, utilizando un
(5)
arreglo con los nombres de los
(1)
dedos.
Ejercicio 3
Estás desarrollando un programa para una aplicación de
navegación y necesitas representar los puntos cardinales y sus
correspondientes grados en un círculo de brújula. Crea un
registro que contenga los puntos cardinales (Norte, Sur, Este,
Oeste) y sus respectivos grados (0, 180, 90, 270) en un círculo
de brújula. Al iniciar el programa debera mostrar la informacion
con el siguiente formato "En tu brujula encontraras..."
seguido de
"El <<puntoCardinal>> a <<grados>> grados ."
Desafio extra…
Desarrolla un programa que gestione una agenda
telefonica. El programa debe permitir al usuario
realizar las siguientes acciones: 1->agregar un
numero de telefono con el nombre del contacto,
2->buscar un numero por el nombre y 3->mostrar la
lista de contactos. El programa finaliza cuando se
ingrese un 0.
Recordá:
● Revisar la Cartelera de Novedades.
● Hacer tus consultas en el Foro.
Producción de repaso
Arreglos Funciones
● Produccion de resumen
● Kahoot de repaso
Producción : ¿Que haremos?
➔ Enfocarnos en sintaxis
➔ Aprovechar todo el espacio disponible de la hoja(incluso
ocupar los bordes)
➔ Usar colores que ayuden con la lectura del resumen
➔ El documento final debe tener una, dos o tres hojas como
máximo
Momento KAHOOT! Juguemos una trivia!!
nombreLista.index(<<dato>>)
#Devuelve el índice del dato
nombreLista.remove(<<dato>>)
#Elimina el dato de la lista
nombreLista.pop(<<índice>>)
#Elimina el dato en el índice de la
lista y lo devuelve
nombreLista.clear()
#Deja vacía la lista
nombreLista.reverse()
#Modifica la lista original, invierte
el orden de los datos
nombreLista.sort()
#Ordena de menor a mayor
nombreLista.sort(reverse = True)
#Ordena de mayor a menor
nombreDict.get(<<clave>>,
<<valorPorDefecto>>)
#Devuelve el valor del dict si
encuentra la clave. Si no la
encuentra devuelve el valor por
defecto
nombreDict.items()
#Devuelve un iterable, una lista con
tuplas que son los pares del dict
nombreDict.keys()
#Devuelve un iterable con claves
nombreDict.values()
#Devuelve un iterable con valores
nombreDict.setdefault(<<clave>>,
<<valor>>)
#Si existe la clave devuelve su
valor. Si no existe, la añade con su
valor
nombreDict.update(<<otroDict>>)
#Si las claves existen las actualiza.
Si no existen las añade
nombreDict.popitem()
#Elimina del dict y devuelve al
último par agregado en versiones
sup 3.7
nombreDict.pop(<<clave>>)
#Elimina del dict y devuelve
nombreDict.clear()
#Vacía el dict
VARIABLES y CONSTANTES
DECLARACIÓN E INICIALIZACIÓN
nombreVariable = <<datoAGuardar>> #variable
NOMBRECONSTANTE = <<datoQueNoSeDeberiaActualizar>> #constante, en python no podemos generar una constante como tal
OPERADORES
a=5 #asignación + #cuan + #suma > #Mayor que and in #true si se is # devuelve del #destruye el
a += 5 #a = a + 5 do los datos - # resta < #Menor que #conjunción encuentra en la true si los elemento
a -= 5 #a= a-5 son ** # potencia >= #mayor o igual or # secuencia #sino operandos se
a *= 5 #a= a*5 alfanumerico *# que disyunción devuelve false refieren al
a **= 5 #a = a ** 5 s multipli <= #menor o not #negación mismo objeto
a /= 5 #a= a/5 cación igual que not in #true si
a //= 5 #a= a//5 , #distintos / #división == #igual que no se encuentra is not
a %= 5 #a= a%5 tipos de datos // #división != #distinto que en la secuencia #devuelve true
entera #sino devuelve si los
%# módulo false operandos no
se refieren al
mismo objeto
Jerarquía:
ESTRUCTURAS DE CONTROL
CONDICIONALES
IF-ELIF-ELSE- CONDICIONAL Múltiple MATCH - CONDICIONAL Múltiple CONDICIONAL SIMPLE: CONDICIONAL DOBLE:
if<<expresionBooleana>>:
sangría<<bloqueDeInstruccionesEnCasoTrue>> match<<expresionNumericaOAlfanu if - else:
elif<<expresionBooleana>>:
m>>: if <<expresionBooleana>> : if <<expBool>>:
sangría<<bloqueDeInstruccionesEnCasoTrue>> sangríacase<<opcion1>>: SANGRÍA<<bloqueDeInstruc SANGRÍA<<bloqueenTrue>>
sangríasangría<<bloqueDeInstruccio cionesEnCasoTrue>> else:
else<<expresionBooleana>>:
sangría<bloqueDeInstruccionesEnCasoFalse>>
nes>> SANGRÍA<<bloqueenFalse>>
sangríacase<<opcion2>>:
sangríasangría<<bloqueDeInstruccio
nes>>
sangríacase_:
sangríasangría<<bloqueDeInstruccio
nesEnCasoQueNingunoCoincida>>
BUCLES
● Funciones y Procedimientos
● Argumentos posicionales,
nombrados, y opcionales
Funciones
print()
input()
len()
type()
Las reglas para el nombre de una función son las mismas que
para la de una variable, y por ello refrescamos lo siguiente:
*NOTA: Teóricamente los llamaremos procedimientos, aunque recordemos que en Python a nivel
práctico hablamos solamente de funciones .
Función que retorna un valor
Para poder retornar un valor usamos return:, una vez que Python ejecute la
instrucción return, saldrá del bloque de código de la función retornando el
valor ubicado a la derecha de dicha instrucción.
Parámetros y argumentos
Es por eso que se genera un error donde indica que hay múltiples valores para el
argumento nombre.
Cantidad de argumentos
Los argumentos son obligatorios, si definimos n cantidad de parámetros
debemos llamar la función con n cantidad de argumentos:
Argumentos opcionales
Los argumentos pueden ser opcionales, para ello el parámetro cuando se
define la función debe asignársele un valor predeterminado.
Python según el tipo de dato del argumento define si ese argumento se pasa
por valor o referencia a la función..
Argumentos por valor
Cuando invocamos una función en Python, si el argumento enviado es de tipo
int, str, float o bool, este argumento será enviado por valor, lo que significa
que dentro del cuerpo de la función se trabaja con una copia de el dato,
manteniendo el valor original de la variable por fuera de la función.
La variable miNumero
pasada como argumento
se pasa por valor, se
trabaja dentro de la
función con una copia de
la misma, por eso no se
modifica.
Argumentos por referencia
Cuando invocamos una función en Python, si el argumento enviado es una
colección (por ejemplo una lista, un diccionario, etc ), este argumento será
enviado por referencia (se le envía su dirección de memoria), lo que significa
que dentro del cuerpo de la función se trabaja con el propio elemento,
alterando el contenido de la variable.
La variable miNumeros
pasada como argumento
se pasa por referencia, se
trabaja dentro de la
función con esa misma
variable, por eso se
modifica.
Funciones: Scope, ámbito o alcance de variables.
- Excepción: Si una variable local tiene el mismo nombre que una global, cuando
se utiliza dentro de su ámbito, la local oculta a la global.
Ejemplos:
● Funciones generalidades
● Modulos + Desafio
Repasando...
En programación, una función es un bloque de código que realiza una tarea específica y puede
ser invocado (llamado) desde otro lugar del programa para ejecutar esa tarea. Las funciones son
una forma de organizar y reutilizar el código, ya que encapsulan una secuencia de instrucciones
en una unidad lógica y modular.
Una función generalmente acepta entradas (argumentos o parámetros) y puede devolver una
salida (valor de retorno). Los argumentos son valores que se pasan a la función cuando es
llamada, y el valor de retorno es el resultado que la función devuelve al lugar desde donde fue
llamada...
Trabajando con funciones...
- resources/
-modulo1.py
-modulo2.py
-modulo3.py
En Python, no hay un nombre específico que debas dar a los módulos. Puedes elegir un nombre
descriptivo y significativo que refleje el propósito o la funcionalidad.
Utiliza nombres en minúsculas: Es común utilizar nombres en minúsculas.
Utiliza nombres descriptivos: Elige nombres que sean descriptivos y concisos para tus módulos. El
nombre del módulo debe reflejar su funcionalidad o el área temática en la que se centra. Esto facilitará
a otros desarrolladores y a ti mismo entender el propósito del módulo.
Evita palabras reservadas: Evita nombres genéricos o demasiado comunes que puedan entrar en
conflicto con los nombres de otros módulos o con las palabras clave de Python. Trata de ser específico
y único en la elección del nombre.
Deben comenzar con una letra o un guion bajo (_).
El resto del nombre puede consistir en letras, dígitos y guiones bajos.
No se permiten espacios, caracteres especiales (como !, @, #, etc.) ni guiones medios (-)
Como importar una funcion que se encuentra en un modulo de la carpeta modules:
Traer dos o más funciones que esten en un mismo modulo en la carpeta modules:
● Kahoot repaso!
● Modulos + Desafio
Kahoot!
Repasamos los conceptos fundamentales. Resolvemos dudas a través de una trivia.
- resources/
-modulo1.py
-modulo2.py
-modulo3.py
En Python, no hay un nombre específico que debas dar a los módulos. Puedes elegir un nombre
descriptivo y significativo que refleje el propósito o la funcionalidad.
Utiliza nombres en minúsculas: Es común utilizar nombres en minúsculas.
Utiliza nombres descriptivos: Elige nombres que sean descriptivos y concisos para tus módulos. El
nombre del módulo debe reflejar su funcionalidad o el área temática en la que se centra. Esto facilitará
a otros desarrolladores y a ti mismo entender el propósito del módulo.
Evita palabras reservadas: Evita nombres genéricos o demasiado comunes que puedan entrar en
conflicto con los nombres de otros módulos o con las palabras clave de Python. Trata de ser específico
y único en la elección del nombre.
Deben comenzar con una letra o un guion bajo (_).
El resto del nombre puede consistir en letras, dígitos y guiones bajos.
No se permiten espacios, caracteres especiales (como !, @, #, etc.) ni guiones medios (-)
Como importar una funcion que se encuentra en un modulo de la carpeta modules:
Traer dos o más funciones que esten en un mismo modulo en la carpeta modules:
● Desafio
¡Llegó el momento de escribir código!
● Finalizamos el desafio
anterior y comenzamos
uno nuevo
¡Continuamos escribiendo código!
-El juego consiste en tratar de adivinar la edad de una ballena azul llamada Lola, que
se encuentra cumpliendo años.
- Por ronda, cada jugador podrá ingresar un número en su intento de adivinanza, de la edad de Lola.
-El programa compara el número ingresado por cada jugador con la edad de Lola y brinda
retroalimentación (“soy mas joven”, “soy mayor”, “adivinaste! esa es mi edad!”) para ayudar a los
jugadores a adivinar en la siguiente oportunidad.
-Finalización del juego: El juego termina cuando uno de los jugadores adivina correctamente el
número o cuando se completaron 4 rondas, y ninguno acertó.
Recordá:
● Revisar la Cartelera de Novedades.
● Hacer tus consultas en el Foro.
● Acercándonos a un nuevo
tema
● Desafío
Acercándonos a un nuevo tema..
En el siguiente ejemplo, luego de importar random, se llama a la función randint con
dos argumentos, 0 y 10. randint genera un número entero aleatorio dentro del rango
especificado (en este caso, entre 0 y 10, incluyendo el 0 y el 10).
¡Llegó el momento de escribir código!
-El juego consiste en tratar de adivinar la edad de una ballena azul llamada Lola, que
se encuentra cumpliendo años.
- Por ronda, cada jugador podrá ingresar un número en su intento de adivinanza, de la edad de Lola.
-El programa compara el número ingresado por cada jugador con la edad de Lola y brinda
retroalimentación (“soy mas joven”, “soy mayor”, “adivinaste! esa es mi edad!”) para ayudar a los
jugadores a adivinar en la siguiente oportunidad.
-Finalización del juego: El juego termina cuando uno de los jugadores adivina correctamente el
número o cuando se completaron 4 rondas, y ninguno acertó.
Recordá:
● Revisar la Cartelera de Novedades.
● Hacer tus consultas en el Foro.
¿Te atreves a adivinar qué ha comprado para ti? Si logras adivinarlo, ¡podrás
recibir tu regalo antes de lo previsto! Pero si no aciertas, Julia se pondrá
manos a la obra para envolverlo, si completa la envoltura, tendrás que esperar
hasta la Nochebuena para recibir tu obsequio.
Requerimientos Generales:
● Elección del Regalo: Comienza por definir una lista de regalos predefinidos, de la cual se seleccionará uno
al azar en cada partida. Este regalo es el que Julia habrá elegido para ti. Al principio, deberás ver la palabra
como una serie de guiones bajos, uno por cada letra de la palabra oculta. Por ejemplo, si el regalo es
"remera", lo verás como "_ _ _ _ _ _".
● Verifica tus Adivinanzas: Cada letra que ingreses se verificará para saber si está presente en la palabra a
adivinar. Si adivinas correctamente, verás la posición de la letra en la palabra. Por ejemplo, si adivinas la
letra "e", la palabra podría mostrarse como "_ e _ _ e _".
● Intentos fallidos: Solo podras fallar 6 veces.
● Muestra la Caja de Regalo: A medida que fallas al intentar adivinar letras, se mostrará progresivamente una
figura de una caja de regalos. Recuerda que tú eres el único jugador en este emocionante juego y que este
sera el mecanismo por el cual te enteraras si estas a punto de perder al agotar tus posibilidades de fallar.
● Control del Final del Juego: El juego termina cuando adivinas toda la palabra correctamente o cuando se
completa la figura de la caja de regalos. ¿Serás capaz de descubrir qué regalo te ha preparado Julia antes
de que termine de envolverlo?
Recordá:
● Revisar la Cartelera de Novedades.
● Hacer tus consultas en el Foro.
● Completamos el último
Desafío
● Atendemos consultas sobre
el PFI
¡Llegó el momento de escribir código!
¿Te atreves a adivinar qué ha comprado para ti? Si logras adivinarlo, ¡podrás
recibir tu regalo antes de lo previsto! Pero si no aciertas, Julia se pondrá
manos a la obra para envolverlo, si completa la envoltura, tendrás que esperar
hasta la Nochebuena para recibir tu obsequio.
Requerimientos Generales:
● Elección del Regalo: Comienza por definir una lista de regalos predefinidos, de la cual se seleccionará uno
al azar en cada partida. Este regalo es el que Julia habrá elegido para ti. Al principio, deberás ver la palabra
como una serie de guiones bajos, uno por cada letra de la palabra oculta. Por ejemplo, si el regalo es
"remera", lo verás como "_ _ _ _ _ _".
● Verifica tus Adivinanzas: Cada letra que ingreses se verificará para saber si está presente en la palabra a
adivinar. Si adivinas correctamente, verás la posición de la letra en la palabra. Por ejemplo, si adivinas la
letra "e", la palabra podría mostrarse como "_ e _ _ e _".
● Intentos fallidos: Solo podras fallar 6 veces.
● Muestra la Caja de Regalo: A medida que fallas al intentar adivinar letras, se mostrará progresivamente una
figura de una caja de regalos. Recuerda que tú eres el único jugador en este emocionante juego y que este
sera el mecanismo por el cual te enteraras si estas a punto de perder al agotar tus posibilidades de fallar.
● Control del Final del Juego: El juego termina cuando adivinas toda la palabra correctamente o cuando se
completa la figura de la caja de regalos. ¿Serás capaz de descubrir qué regalo te ha preparado Julia antes
de que termine de envolverlo?
Consultas sobre el Proyecto Final
Integrador
https://aulasvirtuales.bue.edu.ar/mod/forum/view.php?id=394460&group=65216
Recordá:
● Revisar la Cartelera de Novedades.
● Hacer tus consultas en el Foro.
https://docs.python.org/es/3/library/random.html?highlight=random#module-random
Módulos estándar: Datetime
Manipular fechas y horas. Veamos qué ofrece este módulo:
https://docs.python.org/es/3/library/datetime.html?highlight=datetime#module-datetime
Módulos estándar: Math
Funciones para ir un paso más allá en matemática.
https://docs.python.org/es/3/library/math.html?highlight=math#module-math
Recuerda que estos son algunos de los módulos estándar que nos ofrece Python.
Puedes seguir explorando otros, por ej: cmath
https://docs.python.org/es/3/library/cmath.html#module-cmath
¿Que es una librería o biblioteca?
https://pypi.org/project/openpyxl/
Modo lectura. Abre el archivo para lectura “r” archivo = open('misContactos.txt', 'r')
(por defecto).
Modo anexar. Abre el archivo para añadir “a” archivo = open('misContactos.txt', 'a')
contenido al final. Si el archivo no existe, lo
crea.
Algunos métodos de los archivos: read() y readlines()
read() lee el contenido completo del archivo y lo devuelve como una sola cadena de
caracteres (string)
readlines() lee todas las líneas del archivo y las devuelve como una lista donde cada
elemento es una línea del archivo. Cada línea termina con el carácter de nueva línea (\n)
a menos que sea la última línea del archivo y no tenga un carácter de nueva línea al final
Algunos métodos de los archivos: write()
Nos servira para escribir en el archivo. Importante, aclarar saltos de linea con \n , de lo
contrario, por mas que ejecutemos de manera seguida el metodo write() siempre
estaremos escribiendo en la misma linea que ya este escrita.
archivo.close()
Función open()
https://docs.python.org/es/3/library/random.html?highlight=random#module-random
¿Que es un paquete?
https://docs.python.org/es/3/library/tkinter.html
Ventanas
import tkinter as tk
entrada = tk.Entry(ventana)
entrada.pack()
IntVar() y StringVar()
IntVar() y StringVar() son algunas de las clases que se utilizan para crear variables especiales
asociadas a widgets específicos, sobre todo a widgets que nos permiten obtener datos que pueden cambiar,
como por ejemplo un Entry.
Por ejemplo, en un Entry (campo de entrada) puedes asociar una StringVar() para rastrear y modificar el
texto dentro del campo. Cualquier cambio en la variable se reflejará automáticamente en el campo de entrada y
viceversa.
def mostrar_texto():
print("¡Botón presionado!")
def mostrar_mensaje_error():
messagebox.showerror("ERROR", "¡Ingrese un valor distinto a 0!")
Tkinter
¡analicemos código!
https://docs.python.org/es/3/library/tkinter.html
¿Que es una librería o biblioteca?
https://pypi.org/project/openpyxl/
https://openpyxl.readthedocs.io/en/stable/
Recordá:
● Revisar la Cartelera de Novedades.
● Hacer tus consultas en el Foro.
● ¿Que es un paquete?
Tkinter
● ¿Que es una libreria?
Openpyxql
● Base de datos relacionales
¿Que es un paquete?
https://docs.python.org/es/3/library/tkinter.html
¿Que es una librería o biblioteca?
https://pypi.org/project/openpyxl/
https://openpyxl.readthedocs.io/en/stable/
Base de datos relacionales
Colección de datos persistentes, relacionados y estructurados.
Persistentes: se almacenan en archivos.
Relacionados: cooperan en la descripción de informaciones.
Estructurados: se mantienen en estructuras (registros, tablas, documentos, etc).
INSERT INTO Libro (Titulo, CantidadEjemplares, NombreAutor) VALUES ('El Aleph', 50,
'Jorge Luis Borges')
import sqlite3