Introducción a los algoritmos

1

¿Qué aprenderás sobre algoritmos y pensamiento lógico?

2

La importancia de entrenar tu pensamiento lógico

3

¿Qué entiende una computadora?

4

¿Qué es el sistema binario?

5

Metodología para construir un algoritmo: requerimientos y proceso mental

Tipos de datos y operadores lógicos

6

¿Qué son Bits y Bytes?

7

¿Qué son variables, constantes y tipos de datos?

8

Identifica las variables según los requerimientos de negocio

9

Strings (texto) y concatenación

10

Números y operaciones matemáticas básicas

11

Operaciones matemáticas compuestas: paréntesis y orden de evaluación

12

True y false: booleanos y tablas de la verdad

13

Arrays y funciones sobre arrays

14

¿Cómo diseñar algoritmos con diagramas de flujo?

15

Define el tipo de dato según los requerimientos de negocio

Estructuras de control

16

If y Else: condicionales y comparaciones para proteger tus algoritmos

17

Switch y Case: condicionales en forma de casos

18

Excepciones y errores: Throw y Try Catch

19

¿Qué es un ciclo? While, For y Do While

20

Diagrama de flujo con condicionales

21

Diagrama de flujo con ciclos

22

Tutorial de algoritmos de programación

23

Diseña algoritmos para resolver problemas de tu vida diaria

Encapsula tu código en funciones

24

¿Qué es una función?

25

¿Cómo desarrollar tu lógica de programación?

26

Modularización de código

27

Flujo de funciones para encapsular algoritmos

28

Nomenclaturas de programación: camelCase, PascalCase, snake_case

29

¿Qué es recursividad? Funciones que se llaman a sí mismas

30

Convierte algoritmos con ciclos a funciones recursivas

31

Resolviendo acertijos

Traduce tus algoritmos a lenguajes de programación

32

Diferencias entre lenguajes de programación

33

Cómo escribir código en cualquier lenguaje de programación

34

Cómo programar en JavaScript, Python y PHP

35

Introducción al ejercicio en JavaScript

36

Programando en JavaScript

37

Introducción al ejercicio en Python

38

Programando en Python

39

Introducción al ejercicio en PHP

40

Programando en PHP

41

Cómo programar en Java y Lenguaje C

42

Introducción al ejercicio en Java

43

Programando en Java

44

Introducción al ejercicio en C

45

Programando en Lenguaje C

46

Traduce diagramas de flujo a código en lenguajes de programación

Conclusiones

47

Próximos pasos para aprender programación profesionalmente

Aún no tienes acceso a esta clase

Crea una cuenta y continúa viendo este curso

Programando en Python

38/47
Recursos

Aportes 118

Preguntas 13

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.

En serio, pásense por el Curso Básico de Python, el profesor es increíble, y de hecho el profesor explica todos los temas de programación desde 0, no solo explica Python desde 0, sino programación en general y te va guiando paso a paso para que aprendas a programar, pero usando Python, ese curso es excelente, si no tienes muchos conocimientos de programación te recomiendo ampliamente que inicies con ese curso 😄

No me están gustando estas últimas clases… 😦

estas ultimas clases siento que no estan siento bien explicadas

🐱‍💻 Genial, veo que la sintaxis es muy diferente a otros lenguajes de programación.

def swap_text(s):
  result = ""
  for letter in s:
    if letter == letter.upper():
      result += letter.lower()
    else:
      result += letter.upper()
  print(result)

swap_text("hola TODOS");

Por si alguien se preguntaba como se haría esto en **JavaScript ** aquí les dejo la solución, yo use for of, pero puedes usar foreach o for nomal con .length

function swap_text(str){
    let resultado = "";
    for (const letter of str) {
        
        if(letter === letter.toUpperCase()){
            resultado += letter.toLowerCase();
        }else{
            resultado += letter.toUpperCase();
        }

    }
    return resultado;
}
console.log(swap_text("hoLA A tOdOs"));

Vaya a mí me mostraba un resultado así:
H
HO
HOL
HOLA
HOLA
HOLA t
HOLA to
HOLA tod
HOLA todo
HOLA todos

Y eso es por la indentación del print(result), lo había dejado a la altura del else. Y hay que dejarlo a la altura del for para que salga correctamente.
Si se deja a la altura del “result += letter.upper()”, va a salir así:
H
HO
HOL
HOLA

Jejeje es interesante esto de la indentación en python.

Espero les sirva de algo esta observación 😉

En python es importante la indentacion para que funcione el código, no es como otros lenguajes que puedes poner todo el código corrido o como sea, es la 1ra vez que programo en phyton y al querer correr el código tenia este problema de no tenerlo bien indentado.
def swap_text(s):
	result = ""
	for letter in s:
		if letter == letter.upper():
			result +=letter.lower()
		else: 
			result +=letter.upper()
	print(result)

swap_text(input("Coloca un texto para ser convertido la MAYUSCULA en minusucula y ViCeVeRsA "))

Hice el mismo programa pero el usuario le pone el texto.

Hola a todos les comparto mi código


def swap_text(s):
  result = ""
  for letter in s:
    if letter == letter.upper():
      result += letter.lower()
    else:
      result += letter.upper()
  print(result)

swap_text("hola TODOS")

Compañeros, si hemos llegado aquí, no nos rindamos.

Empecé con el Curso Básico de Python a programar y es muy bueno, te enseña muy bien las bases, lo recomendaría como primer curso para aprender a programar incluso antes que este. Si hubiera empezado por este me habría frustrado mucho. No se rindan, vayan a ese curso

Lo malo de estos cursos básicos es que ponen ejercicios de ejemplo, todavía más básicos.

Como en el colegio cuando explican productos notables o casos de factorización usaban los ejemplos fáciles, pero para los talleres eran los más complejos

sistaxis en PHP espero que les sea de utilidad

<?php 
function changeString ($str) {
	$result = "";
	for ($i=0; $i < strlen($str); $i++) { 
		if (isUpper($str[$i])) {
			$result .= strtolower($str[$i]);
		} else {
			$result .= strtoupper($str[$i]);
		}
	}
	return $result;
}

function isUpper ($s) {
	return $s === strtoupper($s);
}

echo changeString("HELLO world");
?>

Que gran clase, me gusto el código que se enseño es muy claro y limpio
fácil de entender.

xD

No me gustaron estas clases,encuentro que no explica bien

Mi aporte en JS 😄!

Toma esto como cuando empiezas a aprender a nadar, es para que le pierdas el temor no para que te vuelvas un nadador profesional

Solo escribe el código y mira como se ejecuta, es todo, ya profundizaras en lo que desees aprender más adelante

CUANDO TE DICEN QUE ES BASICO 😮
Y NO ESTAS ENTENDIEDO
EXISTE ALGUN CURSO QUE TE PREPARE PARA EL CURSO BASICO? XD

Una forma chévere para que el texto lo pueda modificar el usuario

def swap_text(s):
  result = ""
  for letter in s:
    if letter == letter.upper():
      result += letter.lower()
    else:
      result += letter.upper()
  print(result)
print("Ingresa un texto para darle vuelta a sus mayúsculas :v")
swap_text(input())

Me guié del código de los compañeros :3

def run():
    def swap_text(s):
        result = ''

        for letter in s:
            if letter == letter.upper():
                result += letter.lower()
            else:
                result += letter.upper()
    
        print(result)
    swap_text('hola TODOS')

if __name__ == '__main__':
    run()
def swap_text(s):
	result = ""
	for letter in s:
		if letter == letter.upper():
			result +=letter.lower()
		else: 
			result +=letter.upper()
	print(result)

swap_text("Hola TODOS")

No se como se llame la jerarquia en las lineas, pero mi codigo marcaba error en un inicio por el simple hecho de que no estaba “bien” alineado el print.

Les comparto mi codigo:

  result = ""
  for letter in s:
    if letter == letter.upper():
      result += letter.lower()
    else:
      result += letter.upper()
  print(result)

swap_text("hola TODOS")`
```


def swap_text(s):
  result = ""
  for letter in s:
    if letter == letter.upper():
      result += letter.lower()
    else:
      result += letter.upper()
  print(result)

swap_text("HOLA todos")```

Gracias ReaxMaster. Saludos…

Siento que no puedo, ya me duele la cabeza, encima larguísimo el curso. No me puedo tomar algunos dias de descanso porque con la memoria que tengo, seguro para el examen ya no sabré nada…

ahora entiendo que lower y lover son muy diferentes por eso no me salia el string jejeje

Sugerencia.
Si en las clases dijera: entra aquí, instala esto, da clic aquí luego aquí etc. creo que sería mas entendible para los que estamos en cero en programación. Por ejemplo no se a donde entro a programar eso. No se si está escribiendo en un archivo, o en un editor de código o si tengo que tener algo instalado, o donde le doy los clis. Ya hice el curso de prework y ahí instalamos visual studio code, ¿Entró ahí a programar esto? O tal vez me perdí en alguna clase. Estoy siguiendo este curso por que así lo marca la ruta de la escuela de programación de Platzi. Tal vez este curso debería estar mas adelante.

Yo aprendi un poco de Phyton jugando CodeCombat ajjaja la verdad entendí este ejercicio mejor que el anterior, sera que soy mas compatible con Phyton? 😃

Lo que pasa es que el curso asume que ya tenemos bases solidas de lenguaje tanto de Js y Python que no se mide en nada para comenzar a ponernos a prueba.

Pero yo digo, que hay que dejarlo correr y eventualmente en los otros curso iremos armando criterio.

que lastima, 0 explicación se pierde el hilo y desanima mucho, pero definitivamente es la profesora, ojalá en otros cursos tengan mejores docentes

Ana puede ser muy buena desarrolladora, pero no explica lo suficientemente claro para poder entenderla, sobre todo en esta última parte del curso.

Estoy medio oxidado en Python pero quizá se pueda hacer sin el método join()

palabra = "Platzinauta"
print(palabra[::-1])
print("Mira mamá sin función ni variable"[::-1])

normal_text = 'hola TODOS'
swap_text = [x.upper() if x != x.upper() else x.lower() for x in normal_text]
print(''.join(swap_text))

H
HO
HOL
HOLA
HOLA
HOLA t
HOLA to
HOLA tod
HOLA todo
HOLA todos

😅

Ánimo! Python es de los lenguajes más fléxibles, ya que no tienes que escribir tantos simbolitos y letras para realizar tantas cosas como en otros lenguajes! Céntrense en la lógica primero, yo cometí ese error y ahora sufro hasta para hacer un programa muy básico. Que no te pase lo mismo.

con estos ejemplos estamos afinando lel Visual studio code para el uso en las siguientes claces.

Humilde aporte

def swap_text(s):
    result = ""
    for letter in s:
        if letter == letter.upper():
            result += letter.lower()
        else:
            result += letter.upper()
    print(result)

swap_text("hola TODOS MIS pErrriTOS para esta parte es mejor aprender el curso desde 0 por que es mas legible la sintaxis")

Y es verdad por que en javascript me perdi total pero en este ya habia hecho basico de python 😃

def swap_text(s):
  result = ""
  for letter in s:
    if letter == letter.upper():
     result += letter.lower()
    else:
      result += letter.upper()
  print(result)

swap_text("hola TODOS")

Por si alguno quiere ahorrarse tener que digitar el código:
.
def swap_text(s):
result = ""
for letter in s:
if letter == letter.upper()
result += letter.lower()
else:
result += letter.upper()
print(result)

swap_text(“hola TODOS”)

Dejo el código de la clase hecho en Python por aquí para estudiarlo por la mañana, ya es muy tarde😅.

def swap_text(s):
  result = ""
  for letter in s:
    if letter == letter.upper():
      result += letter.lower()
    else:
      result += letter.upper()
  print(result)

swap_text("hola TODOS")

También pueden correr su código en VSCode, el IDE favorito de la mayoría de los programadores.
Sólo requieren descargar Python:
https://www.python.org/downloads/
Y en VSCode dar click derecho y seleccionar correr su código.

Mi implementacion:

def swap_text(s):
    result = ""

    for letter in s:
        if letter.isupper():
            result += chr( ord(letter) + 32 )
        elif letter.islower():
            result += chr( ord(letter) - 32 )
        else:
            result += letter

    return result

print( swap_text("hola TODOS") )

Solo un pequeño cambio
.
.

def swap_text(s):
  result=""
  for letter in s:
    if letter.isupper():
      result += letter.lower()
    else:
      result += letter.upper()
      
  print(result)

swap_text("hola TODOS")

Muy bien explicado. Me dió un error al principio pero ya fijandome bien era porque tenia el print dentro del for y no a la misma altura con el for.

Despues de revisar la documentacion logre comprenderdo 😄

def swap_text(s):
  result = ""
  for letter in s:
    if letter == letter.upper():
        result += letter.lower()
    else:
      result += letter.upper()
  print(result)


swap_text("PROBANDO LaS Funcionalidades DE  PythON")

> Resultado/ probando lAs fUNCIONALIDADES de  pYTHon

def swap_text(s):
   result = "" 
   for letter in s:
      if letter == letter.upper(): 
        result += letter.lower()
      else:
        result += letter.upper()
   print(result)

swap_text("hola TODOS")

alguien me ayuda para saber que escrito mal:
def cambio(s):
result = ""
for letter in s:
if letter == letter.upper():
result += letter.lower()
else:
result += letter.upper()
print(result)

cambio(“HOLA amigos”)

Ok, en este lenguaje la indentación si es cosa seria, mismo código, pero con diferente indentación da diferentes resultados.

def swap_text(s):
  result =""
  for letter in s:
    if letter == letter.upper():
      result += letter.lower()
    else:
      result += letter.upper()
      print(result)


swap_text("hola TODOS")

def swap_text(s):
  result =""
  for letter in s:
    if letter == letter.upper():
      result += letter.lower()
    else:
      result += letter.upper()
    print(result)


swap_text("hola TODOS")

def swap_text(s):
  result =""
  for letter in s:
    if letter == letter.upper():
      result += letter.lower()
    else:
      result += letter.upper()
  print(result)


swap_text("hola TODOS")

Mi solución

mensaje=input('Escribe un mensaje: ')
result=""

for i in mensaje:
    if i.isupper():
        result += i.lower()
    elif i.islower():
        result += i.upper()
    elif i.isspace():
        result += i

print(result)

python es un excelente lenguaje de programación para empezar, muy intuitivo , elegante , la curva de aprendizaje no es tan empinada como otros lenguajes

Me siento motivado, Python es muy poco más entendible 😃 No pierdan la actitud 😃
Aqui les dejo lo que hice:

# Pasar texto de minuscula -> MAYUSCULA, MAYUSCULA -> minuscula
text=input("Ingrese aquí el texto a transformar: ")
def swap_text(s):
  result = ""
  for letter in s:
    if letter == letter.upper():
      result +=letter.lower()
    else:
      result += letter.upper()
  print(result)

swap_text(text)
def swap_text(s):
  result = ""
  for letter in s:
    if letter == letter.upper():
      result += letter.lower()
    else:
      result += letter.upper()
  print(result)

swap_text("hola TODOS")

Aquí está el mio

def swap_text(s):
  result =""
  for letter in s:
    if letter == letter.upper():
      result += letter.lower()
    else:
      result += letter.upper()
  print (result)

swap_text("hola TODOS")

Se implementa en Golang:

package main

import (
	"fmt"
	"strings"
	"unicode"
)

func main() {
	s := "¡Hola Mundo!, ©2021"
	fmt.Printf("\nswap_text(\"%v\") = \"%v\"\n", s, swap_text(s))
}

func swap_text(s string) string {
	text := ""
	for _, letter := range s {
		if unicode.IsLetter(letter) {
			if unicode.IsUpper(letter) {
				text += strings.ToLower(string(letter))
			} else {
				text += strings.ToUpper(string(letter))
			}
		} else {
			text += string(letter)
		}
	}
	return text
} 

Una solución legible en la parte de la función

def convert_Text(s):
	result = ""
	for letter in s:
		if letter == letter.upper():
			result += letter.lower()
		else:
			result += letter.upper()
	print(result)

convert_Text(input("digite un mensaje en mayúscula y minúscula \n-->"))
#esta última línea de código lo que está haciendo es pedirle al usuario que ingrese un mensaje

¿Estás confundido o confundida?
Recuerda que este curso es de algoritmos y pensamiento lógico. Nadie espera que seas experta en todos los lenguajes en este momento. Se trata solo de probar los algoritmos en algunos lenguajes, nada más.
No te rindas 😎

Ta chido, solo pongan en el parámetro de la función un input para que quede personalizable.

No le entendi nada , que triste

Lo intente en JavaScript, por si alguien estaba intentando en ese lenguaje!

let palabra = "JAVAscript";
let palabraconvertida = "";

for (let i = 0; i <= palabra.length; i++ )
{
    if (palabra.charAt(i) === palabra.charAt(i).toUpperCase())
    {
        palabraconvertida = palabraconvertida + palabra.charAt(i).toLowerCase();
    }
    else
    {
        palabraconvertida = palabraconvertida + palabra.charAt(i).toUpperCase();
    }

}

console.log(palabraconvertida);

Para hacer este ejercicio primero me toco acabar el curso basico de python, depues de una semana regrese, he hice este ejercicio pero le hice una modifiacion. y ahora desde la consola se puede ingresar cualquier palabra

Basicamente este curso como dije en un tema anterior debe usar el lenguaje natural para resolver los problemas, basicamente la idea es aprender a pensar, sin eso puedes mostrar todos los lenguajes de programacion, pero si no sabes pensar de forma logica y metodica no entenderas nada,

Saludos.

Marea pasar de un lenguaje a otro… pero creo q la idea es ver un poquito como es cada lenguaje

def upper_case(b):
  result = ""
  for letter in b:
    if letter == letter.upper():
      result += letter.lower()
    else:
      result += letter.upper()
      
  print(result)

upper_case("Hola a TODOS")

a

en Javascript esta fue la manera en la que intente duplicar el ejemplo dado en video

 <script>
        function texto(palabra) {
            let s = palabra.split("");
            let resultado = "";

            //console.log(s);
            for(i=0; i<s.length; i++){
                if (s[i] == s[i].toLowerCase()) {
                    resultado = resultado +  s[i].toUpperCase();
                }else{
                    resultado = resultado + s[i].toLowerCase();
                }
            }
            return resultado;
        }

        console.log(texto("hola TODOS"));
    </script>

Consejo: en python es muy importante respetar la “jerarquia” de las lineas de codigo, ya que no hay corchetes que indiquen donde abre y cierra una funcion, un ciclo o cualquier bloque de codigo; podemos tener problemas al ejecutar solo por no tener en cuenta esto (es anecdota jeje) saludos.

Este ejemplo se me hizo mucho más entendible y sencillo

excelente curso, pero dare prioridad primero a java y luego seguire con python

txt = [“K”,“E”,“v”,“i”,“n”]
for i in range(len(txt)):
if txt[i] == txt[i].upper():
txt[i] = txt[i].lower()
elif txt[i] == txt[i].lower():
txt[i] = txt[i].upper()
print (txt)

Lindo y sencillo , pero el anterior de java no se porque me da error main.java

Para que comprendan mejor esto pasense por el curso básico de python,lo recomiendo muchísimo

Python se aprende rápido, buen lenguaje para comenzar.

Este ejercicio esta mas sencillo que el anterior en Java Script, aunque aún así es complicado para alguien como yo que apenas esta empezando en programación xD

Python parece más simple, es cool.

Hoy aprendí que el ciclo “for in” tambien puede recorrer por dentro una variable, solo lo habia usado con arrays. Pero supongo que entonces tambien podré recorrer un objeto por dentro.

Este ciclo especial for es geniaaaal

Me aparecía error de indentacion al escribir el código 😄 y entendí por medio de este video https://www.youtube.com/watch?v=s1--p-jfS58 que la identacion es una forma de ordenar el código para hacerlo más entendible y el programa entienda con exactitud lo que deba hacer, y en el caso de Python se utiliza para delimitar la estructura del programa permitiendo establecer bloques de código. El nombre del video se llama tutorial sobre la identacion.

no concuerdo, teniendo el poderoso idioma Español de nuestro lado, utilizar variables en ingles nos lo hace menos legible, sin contar que nos topamos con palabras reservadas, entiendo que en la vida profesional se usa solo ingles, pero en este curso BASICO confunde.

Mi solución:

def swap_text(s):
  result = ''
  for letter in s:
    upperLetter = letter.upper()
    result += letter.lower() if letter == upperLetter else upperLetter
  print(result)

swap_text('hola TODOS')

Está fue mi primera vez escribiendo codigo en Python.
Que me recomiendas para comenzar en la programación? Python o JS y por que?

curso básico de programación comienza con el curso básico de python, es el mejor comienzo que tiene platzi

esta profesora no explica bien o el orden de las clases (ruta) no es el adecuado, ya que usa funciones y código que hasta el momento no se ha visto porque la ruta programación y desarrollo de software no ha llegado a explicar aún ningún lenguaje, considero perdida estas ultimas clases. No deberían poner clases de un lenguaje en específico sin antes haber dado clases desde cero de ese lenguaje

def run(mensaje):
    result =''
    for letter in mensaje:
        if letter == letter.upper():
            result += letter.lower()
        else:
            result += letter.upper()
    print(result)
    

if __name__ == '__main__':
    mensaje = input('Escribe una frase: ')
    run(mensaje)
    

En mi opinión, para las persona que en adelante se pregunten que porqué hay ejercicios avanzados en un curso básico, lo que le puedo decir es que solo ve grandes rasgos de cómo es el lenguaje, con un ejercicio de cada uno; vemos Js, Python, PHP, y más.

El buen Python, bello. Pero si indentas mal te va a sacar error o te podria dar un resultado no esperado x_x

MI APORTE EN JAVASCRIPT

const a=new String(“Objeto String”);
let mi=new String;
let ma=new String;
const b=new String;

mi=a.toLowerCase();
ma=a.toUpperCase();
for(let i=0;i<a.length;i++)
{
if(a[i]==mi[i])
{
console.log("es Minuscula "+a[i]);
b[i]=ma[i];
}
else{
console.log("es Mayuscula "+a[i]);
b[i]=mi[i];

}

}

console.log(b);

Todos al curso basico de Python

Gracias!

palabra = input("ingresa la palabra: ")

result = ""

for letra in palabra:
    if letra == letra.upper():
        letra = letra.lower()
        result += letra
    else:
        letra = letra.upper()
        result += letra
print(result)   
<code> 
const swap_text = (letters) => {
    result = "";
    for (let letter of letters) {
        if (letter === letter.toUpperCase()) {
            result += letter.toLowerCase();
        } else {
            result += letter.toUpperCase();
        }
    }
    return result;
}
console.log(swap_text("hola TODOS"));

Buena clase

Lo estoy trabajando en Visual code

def swap_text(s):
result = ""
for letter in s:
if letter == letter.upper():
result += letter.lower()
else:
result += letter.upper()
print(result)

swap_text(“hola TODOS”)

Esta clase la entendí más que la de Javascript :3

Hola compañeros les comparto el codigo en python (el que hizo la profesora) y en javascript (este yo lo hice):

Python:

JavaScript:

Hola les dejo mi codigo

def swap_text(s):
result = ""
for letter in s:
if letter == letter.upper():
result += letter.lower()
else:
result += letter.upper()
print(result)

swap_text( “hola TODOS”