Want to create interactive content? It’s easy in Genially!

Get started free

Introducción a la Programación - UPANA Cobán

jorge Armando Pá Bot

Created on January 26, 2024

Diapositivas para uso en clase.

Start designing with a free template

Discover more than 1500 professional designs like these:

Transcript

Presentación
Indice
Unidad 2
Unidad 3
Unidad 1

Introducción

Introducción a la Programación

Presentación

Objetivos

Recursos

Indice

Evaluación

Motivación

Interactividad

Unidad 1

Introducción

Declaración y asignación de variables y Tipos de datos y sus características.

Variables

Objetivo

Datos

Recursos

Carácteristicas

Evaluación

Motivación

Indice

Consejo

Unidad 1

Introducción

Operadores aritméticos, lógicos y de comparación.

Presentación

Objetivo

Recursos

Indice

Evaluación

Motivación

Consejo

Unidad 1

Expresiones y evaluación. Estructuras de control de flujo

Introducción

Objetivo

Recursos

Indice

Evaluación

Motivación

Consejo

Unidad 1

Introducción

Bucles: for, while, y do-while.

Objetivo

Recursos

Indice

Evaluación

Motivación

Conclusión

Unidad 2

Introducción

Pensamiento Algorítmico

Objetivo

Recursos

Evaluación

Motivación

Conclusión

Unidad 3

Estructuras de Datos Básicas

Recursos

Evaluación

Comentar código

Introducción a la programación

Unidad 1: Fundamentos de Programación

S1 - Introducción a la programación
S2 - Declaración y asignación de variables y Tipos de datos y sus características.
S3 - Operadores aritméticos, lógicos y de comparación.
S4 - Estructuras de control de flujo: if, else, y switch.
S5 - Bucles: for, while, y do-while.

Recursos

Expresiones y operadores
expresiones condicionales en Python
Control de flujo en Python
Flujo de ejecución en JavaScript
Eloquent JavaScript - Pag. 29 - 39
El Libro de Python - Estructuras de Control
GitHub
VS Code Dev

En Python, al igual que en JavaScript, hay varios tipos de variables y tipos de datos que se pueden utilizar para almacenar y manipular información. Aquí tienes una descripción de los tipos de variables y datos más comunes en Python:

En JavaScript, hay varios tipos de variables y tipos de datos que se pueden utilizar para almacenar y manipular información. Aquí tienes una descripción de los tipos de variables y datos más comunes en JavaScript:

Variables Globales: Declaradas fuera de funciones o bloques de código, tienen un alcance global en todo el programa. Variables Locales: Declaradas dentro de funciones o bloques de código, tienen un alcance limitado al bloque o función en el que se declaran. Variables de Instancia: Utilizadas en la programación orientada a objetos, son variables asociadas a objetos particulares y pueden ser accedidas a través de la instancia del objeto. Variables de Clase: También utilizadas en la programación orientada a objetos, son variables asociadas a la clase en sí misma y son compartidas por todas las instancias de la clase.

var: Esta es una palabra clave utilizada para declarar variables en JavaScript antes de la introducción de let y const. Las variables declaradas con var tienen un alcance de función o global. let: Es una palabra clave introducida en ES6 (ECMAScript 2015) que se utiliza para declarar variables con un alcance de bloque, lo que significa que solo están disponibles dentro del bloque en el que se declaran. const: También introducida en ES6, const se utiliza para declarar variables que no pueden ser reasignadas después de su inicialización. Sin embargo, el valor de una constante declarada con const aún puede ser mutable si es un objeto o un array.

Convenciones de Nomenclatura

Jorge Pá

Ingeniero en Sistemas

Software Engineer Fullstack

Habilidades

Actualmente laboro para Babel Group en el rol de outsorsing para el área bancaría y soporte en el ciclo de vida de desarrollo de software.

VB

JS

C#

BI

Develop/DevOps/Fullstack

Educación y Experiencia

2015

2012

2008

2023

2017

2022

Introducción

En la programación, las estructuras de control de flujo en JavaScript son esenciales para dirigir el comportamiento del programa. Desde condicionales hasta bucles, estas herramientas permiten tomar decisiones y repetir tareas, facilitando la creación de programas dinámicos y eficientes.

Con JavaScript, puedes controlar todo lo que sucede en la página del cliente, lo que te da una gran cantidad de control y flexibilidad.

- Douglas Crockford -

Introducción

JavaScript es un lenguaje de programación usado en páginas web para hacerlas interactivas y dinámicas. Permite crear elementos como botones, animaciones y efectos visuales, mejorando la experiencia del usuario. También se usa en el desarrollo de aplicaciones móviles y juegos.

Python es un lenguaje de programación popular y fácil de aprender que se utiliza en una amplia variedad de aplicaciones, desde desarrollo web y científico hasta inteligencia artificial y automatización. Es conocido por su sintaxis clara y legible, lo que lo hace ideal para principiantes en programación.

"JavaScript es el único lenguaje que tengo que conocer para hacer que las aplicaciones web funcionen."

- Ryan Dahl - Software Engineer - NodeJS

Motivación
  1. Creatividad y Expresión
  2. Resolución de Problemas
  3. Oportunidades Profesionales
  4. Innovación y Cambio Social
  5. Autonomía y Flexibilidad
  6. Potencial de Ganancias
  7. Aprendizaje Continuo

Acertijo

El puente de los 17 minutos

Formulario

Introducción a la programación

Unidad 1: Fundamentos de Programación

S1 - Introducción a la programación
S2 - Declaración y asignación de variables y Tipos de datos y sus características.
S3 - Operadores aritméticos, lógicos y de comparación.
S4 - Estructuras de control de flujo: if, else, y switch.
S5 - Bucles: for, while, y do-while.
Introducción

En el vasto mundo de la programación, los operadores son herramientas esenciales que nos permiten realizar diversas operaciones, desde cálculos matemáticos hasta evaluaciones de condiciones lógicas. En este curso, nos sumergiremos en el tema de los operadores aritméticos, lógicos y de comparación en el contexto del lenguaje de programación Python y JavaScript.

Python es un lenguaje tan simple que cualquiera puede comenzar a programar con él, y tan poderoso que nadie nunca necesita cambiar a otro.

- Larry Wall - Creador del lenguaje PERL

Ejercicios

Ejercicios en clase, el archivo se debe de subir a grupo de teams. Valor 2 puntos

suma

Multiplicar

While

For

Factorial

Exposiciones

Prueba Psicotécnica

5 ejercicios para resolver en 5 a 10 minutos.

Prueba

Motivación
  1. Desarrollo Web Interactivo
  2. Ecosistema de Herramientas y Frameworks
  3. Aprendizaje Continuo y Adaptabilidad
  4. Facilidad de Aprendizaje
  5. Versatilidad y Aplicaciones Diversas
  6. Aplicaciones en Inteligencia Artificial y Ciencia de Datos

Interactividad

Fomentar la participación activa de los estudiantes haciendo preguntas, promoviendo la discusión y realizando actividades cortas durante la presentación.

Motivación

Los bucles son esenciales en programación para automatizar tareas repetitivas y manipular datos de manera eficiente. Dominar los bucles mejora la eficiencia del código y permite crear algoritmos más dinámicos y flexibles, lo que es fundamental para desarrollar software efectivo y funcional.

Historia

Natural

XIX

1990

Comienzos

Internet y la Web

1950

Primeros Lenguajes

La Era de la Computación en la Nube y la Inteligencia Artificial

XXI

1960

Lenguajes de Alto Nivel

Programación

2024

1980

Ustedes

Revolución Personal

Introducción a la programación

Unidad 1: Fundamentos de Programación

S1 - Introducción a la programación
S2 - Declaración y asignación de variables y Tipos de datos y sus características.
S3 - Operadores aritméticos, lógicos y de comparación.
S4 - Estructuras de control de flujo: if, else, y switch.
S5 - Bucles: for, while, y do-while.

Recursos

Microsoft Developer
Google Developer
React Dev
Angular Dev
Bootstrap
GitHub
fullstackopen
Visual Studio Code
freecodecamp
Visual Studio
hackerrank
Android Studio
refactoring
Sublime Text
techdevguide
NPM
Postman
NodeJS
Motivación

Base de la Programación: Los operadores son los componentes básicos de cualquier programa en Python ó JavaScript. Comprender cómo funcionan estos operadores es fundamental para construir algoritmos y resolver problemas de programación.

Manipulación de Datos: Con los operadores aritméticos, es posible realizar cálculos matemáticos básicos y avanzados, lo que es esencial para la manipulación y procesamiento de datos en cualquier aplicación.

Toma de Decisiones: Los operadores de comparación y lógicos son fundamentales para evaluar condiciones y tomar decisiones en un programa. Esto es crucial para crear lógica de control de flujo, como bucles y condicionales, que son necesarios en casi todos los programas.

dominar las herramientas fundamentales que permiten dirigir el flujo de ejecución de un programa, capacitar al estudiante para tomar decisiones lógicas y repetir acciones según las condiciones, lo que facilita la creación de programas más dinámicos y eficientes.

Introducción a la programación

Unidad 1: Fundamentos de Programación

S1 - Introducción a la programación
S2 - Declaración y asignación de variables y Tipos de datos y sus características.
S3 - Operadores aritméticos, lógicos y de comparación.
S4 - Estructuras de control de flujo: if, else, y switch.
S5 - Bucles: for, while, y do-while.

Recursos

Aprende JavaScript dev
Aprende JavaScript org
Aprende Python
Python org
Artículo JS vs Python
GitHub
Eloquent JavaScript
Google Chrome Dev
El Libro de Python
Introducción a la programación

Unidad 1: Fundamentos de Programación

S1 - Introducción a la programación
S2 - Declaración y asignación de variables y Tipos de datos y sus características.
S3 - Operadores aritméticos, lógicos y de comparación.
S4 - Estructuras de control de flujo: if, else, y switch.
S5 - Bucles: for, while, y do-while.

Recursos

Bucles en JS
Bucles en Python
Microsoft Bucles python
Eloquent JavaScript Pag. 29-39
Code Runner
El Libro de Python
npm i prompt-sync
const prompt = require("prompt-sync")({sigint : true});

Escribir y Ejecutar Programas Básicos: Podrán escribir y ejecutar programas simples en un lenguaje de programación, utilizando conceptos fundamentales como variables, estructuras de control y funciones.

  • Comprender Fundamentos de Programación.
  • Aplicar Conceptos en la Resolución de Problemas.
  • Desarrollar Habilidades Prácticas en Programación.

Conclusión

Los bucles son una herramienta poderosa para cualquier programador, permitiendo automatizar tareas repetitivas, procesar grandes volúmenes de datos y crear programas más eficientes y flexibles. Comprender cómo y cuándo utilizar los bucles de manera efectiva es esencial para el desarrollo de software robusto y funcional.

Motivación

Pensar de manera algorítmica te ayuda a resolver problemas de manera estructurada y ordenada. Es como seguir un mapa paso a paso para llegar a una solución. Al desarrollar esta habilidad, te vuelves más eficiente en la resolución de problemas y más confiado en tu capacidad para enfrentar desafíos.

Introducción

Los bucles son una característica fundamental en la programación que permiten ejecutar un bloque de código repetidamente según ciertas condiciones. Estas estructuras de control son esenciales para automatizar tareas repetitivas y realizar operaciones sobre conjuntos de datos de manera eficiente.

Importancia

Radica en su capacidad para mejorar la eficiencia y la legibilidad del código. Al utilizar bucles, los programadores pueden reducir la cantidad de código necesario para realizar una tarea, lo que facilita su mantenimiento y comprensión. Además, los bucles permiten crear algoritmos más dinámicos y flexibles, adaptándose a diferentes situaciones y escenarios.

Elaboración de diagramas de flujo para el parcial.
Introducción a la programación

Unidad 1: Fundamentos de Programación

S1 - Introducción a la programación
S2 - Declaración y asignación de variables y Tipos de datos y sus características.
S3 - Operadores aritméticos, lógicos y de comparación.
S4 - Estructuras de control de flujo: if, else, y switch.
S5 - Bucles: for, while, y do-while.
Introducción

Es la habilidad de formular problemas en términos de algoritmos, es decir, secuencias lógicas de pasos bien definidos para resolver un problema computacional. Se trata de un proceso fundamental en la programación y la resolución de problemas, que implica la capacidad de descomponer un problema complejo en pasos más simples y lógicos. Al dominar el Pensamiento Algorítmico, los individuos pueden desarrollar soluciones eficientes y efectivas para una amplia variedad de problemas, desde tareas simples hasta desafíos más complejos. Esta habilidad es esencial en campos como la informática, la ciencia de datos y la ingeniería de software, donde la capacidad de diseñar algoritmos sólidos es clave para el éxito.

Operadores Aritméticos, lógicos y de comparación.

Realiza de manera conciente y honesta el siguiente test.

Test

Recursos

Diseño y Construcción de Algoritmos
Algoritmos y Estructura de Datos
Algoritmia y Base de Datos
LucidChart
SmartDraw
Canvas
Miro
¿Qué es programación?

Proceso de escribir, diseñar, probar y mantener el código fuente de un programa de computadora. Esta actividad implica utilizar lenguajes de programación, que son conjuntos de instrucciones y reglas que permiten a los programadores comunicarse con las computadoras y crear software funcional.

"Programar es más que una simple tarea mecánica. Es una expresión creativa de nuestras ideas y una forma de dar vida a la innovación."

- Reshma Saujani, fundadora y directora ejecutiva de Girls Who Code.

Motivación

Las estructuras de control de flujo son como las herramientas mágicas que te permiten dar vida a tus programas. Con ellas, puedes tomar decisiones inteligentes y hacer que tus programas se adapten a diferentes situaciones, lo que te convierte en un verdadero mago de la programación.

Mutabilidad: Algunos tipos de datos, como los objetos y los arrays, son mutables, lo que significa que su contenido puede cambiar después de su creación. Inmutabilidad: Otros tipos de datos, como los números, las cadenas y los booleanos, son inmutables, lo que significa que no pueden ser modificados después de su creación. Coerción: JavaScript realiza coerción de tipos automáticamente en ciertas situaciones, lo que puede causar comportamientos inesperados. Por ejemplo, la concatenación de una cadena y un número convierte automáticamente el número en una cadena. Comparación de Igualdad: JavaScript tiene dos operadores de igualdad, == y ===. El operador == realiza una comparación con conversión de tipos, mientras que el operador === realiza una comparación estricta sin conversión de tipos.

Mutabilidad: Algunos tipos de datos, como las listas y los diccionarios, son mutables, lo que significa que su contenido puede cambiar después de su creación.Inmutabilidad: Otros tipos de datos, como las tuplas y las cadenas, son inmutables, lo que significa que no pueden ser modificados después de su creación. Indexación: Algunos tipos de datos, como las listas y las cadenas, admiten la indexación para acceder a elementos individuales mediante un índice numérico. Iterabilidad: Muchos tipos de datos en Python, como las listas, las tuplas y los diccionarios, son iterables, lo que significa que se pueden recorrer en bucles for.

Conclusión

Es una habilidad fundamental en la programación y en la resolución de problemas en general. Nos permite abordar problemas de manera estructurada, encontrar soluciones eficientes y desarrollar la confianza necesaria para enfrentar desafíos en cualquier campo. Al dominar el Pensamiento Algorítmico, nos convertimos en solucionadores de problemas más efectivos y creativos.

Number (Número): Representa valores numéricos, ya sea enteros o de punto flotante. Ejemplos: 10, 3.14, -5. String (Cadena): Representa texto encerrado entre comillas simples ('') o dobles (""). Ejemplos: "Hola", 'Mundo', "123". Boolean: Representa un valor lógico verdadero o falso. Ejemplos: true, false. Undefined: Representa un valor no definido. Se asigna automáticamente a las variables que se declaran pero no se inicializan. Ejemplo: let x; Null: Representa la ausencia de valor o un valor nulo. Ejemplo: let y = null; Object (Objeto): Representa una colección de pares clave-valor. Ejemplo: let persona = {nombre: "Juan", edad: 30}; Array (Arreglo): Representa una colección ordenada de elementos. Ejemplo: let numeros = [1, 2, 3, 4, 5]; Function (Función): Representa un bloque de código reutilizable que puede ser ejecutado cuando se invoca. Ejemplo: function sumar(a, b) { return a + b; }

Enteros (int): Representa números enteros. Ejemplos: 10, -5, 1000. Flotantes (float): Representa números de punto flotante, es decir, números con decimales. Ejemplos: 3.14, -0.5, 2.0. Cadenas (str): Representa texto encerrado entre comillas simples ('') o dobles (""). Ejemplos: "Hola", 'Mundo', "123". Booleanos (bool): Representa un valor lógico verdadero (True) o falso (False). Listas (list): Representa una colección ordenada y mutable de elementos. Ejemplo: [1, 2, 3, 'a', 'b', 'c']. Tuplas (tuple): Similar a las listas, pero son inmutables una vez creadas. Ejemplo: (1, 2, 3, 'a', 'b', 'c'). Diccionarios (dict): Representa una colección de pares clave-valor. Ejemplo: {'nombre': 'Juan', 'edad': 30}. Conjuntos (set): Representa una colección no ordenada y sin elementos duplicados. Ejemplo: {1, 2, 3, 4, 5}.

Prueba de tipos de datos

6 preguntas para resolver en 5 a 10 minutos.

Prueba

Comprender los operadores aritméticos, lógicos y de comparación en Python y JavaScript, así como enseñarles cómo utilizar estos operadores de manera efectiva en sus programas.

aritméticos
aritméticos

lógicos

lógicos

comparación

comparación

Dominar el uso de bucles para automatizar tareas repetitivas, iterar sobre datos y escribir código más eficiente.

Desarrollar la capacidad de analizar problemas, diseñar algoritmos eficientes y resolver problemas computacionales de manera sistemática y efectiva utilizando el Pensamiento Algorítmico.

Control de flujo

Recursos

Operadores Básicos en Python con ejemplos
explorando operadores lógicos
Operadores aritméticos JS
Operadores aritméticos y de asignación en Python
GitHub
Eloquent JavaScript
Google Chrome Dev
El Libro de Python

"Desarrollar habilidades sólidas en la programación que permitan diseñar y crear soluciones tecnológicas innovadoras, abriendo oportunidades en campos como el desarrollo web, la ciencia de datos, la inteligencia artificial y más, lo que contribuirá al crecimiento personal y profesional del estudiante en el mundo digital actual."

Formulario en Teams - Funciones JS

Recursos

JavaScript
w3schools