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 variables y constantes?

7

¿Qué son Bits y Bytes?

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

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

25

¿Qué es una funció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

No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Programando en Java

43/47
Recursos

Aportes 89

Preguntas 14

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Java es un lenguaje orientado a objetos, es por eso que hacemos uso de clases, sin embargo, este es un tema aparte, para aprender sobre Programación Orientada a Objetos tienes el Curso de Programación Orientada a Objetos: POO donde aprendes POO con 4 lenguajes (Java, PHP, JavaScript y Python), lo recomiendo mucho!
.
Es normal no entender esta clase si no sabes nada de POO, es todo un tema aparte, por eso les recomiendo ese curso (no sin antes adquirir bases sólidas de programación estructurada, lo que venimos haciendo en todo el curso 😄)

No entiendo la necesidad de poner ejemplos tan complicados para un principiante... en la universidad veíamos los arreglos hasta después varias clases Si quieres apasionar a los nuevos ponles cosas que entiendan

🐱‍💻 Java el lenguaje de programación inicial de varios programadores y desarrolladores.

public class Main {
	public static void showSubString(String text, int start, int end){
    	System.out.println(text.substring(start, end));
    }

  public static void main(String[] args) {
    String text = "Lasfloresazules";
    showSubString(text, 3, 7);
  }
}

Funciones dentro de clases

En la jerga de la programación orientada a objetos, las funciones dentro de las clases se denominan funciones-miembro o métodos, y las variables dentro de clases, variables-miembro o propiedades. El sentido es el mismo que en la programación tradicional (la nomenclatura es más una cuestión de gustos), si bien referirnos a “propiedades” y “métodos” supone estar utilizando la programación orientada a objetos y que nos referimos a miembros de una clase. En C++ esta aclaración puede ser importante, porque es un lenguaje que podríamos llamar “híbrido”; en ciertas partes puede utilizarse con técnicas de programación tradicional, y en otras con técnicas de POO.

Todo iba muy bien hasta el video 33😥😥😥,
o soy el unico que esta perdido y le entiende muy poco.

En lo personal este curso Curso básico de algoritmos y pensamiento lógico es sumamente aburrido las primeras 20 clases en donde sólo parece que leen diapositivas. Sugiero añadir ejercicios prácticos y sencillos para mejorar el aprendizaje.

En cuanto a estos últimos capítulos, se me hacen demasiado elevados, podrían buscar explicaciones con algo más sencillo ya que se supone que estamos en un nivel básico/principiante. Realmente siento que desperdicié el tiempo viendo estos videos porque no hubo un aprendizaje como tal, sólo fue medio entender la información.

Pense que java era algo mas difícil pero según la profesora explico se me hizo muy entendible.

No entiendo cuál es el objetivo de abordar una cantidad de sintaxis que uno no conoce pero que evidentemente parece ser relevante para entender los ejercicios en los lenguajes.

La verdad es que en mi ruta encontré problemas en mi aprendizaje ya que el ver en uso los lenguajes cuando no he tenido experiencia en ello, se me ha dificultado. Lo mejor sería tomar el curso de programación básica o tal vez los cursos básicos de algún lenguaje de programación ya que te da una idea de todo lo que conlleva una línea de código. Igualmente me pareció muy interesante la importancia de la lógica para el desarrollo.

Se ve que Java es un lenguaje que si lo llegas a dominar desarrollas muy buenas bases de programación.
Es lo que me parece. ¿Así es?

El pequeño programa que resulta lo encuentro de alguna manera el más gratificante hasta el momento. Muy entretenido crearlo, y es bastante más corto que el resto.

class Main 
	{
		public static void showSubstring(String text, int start, int end)
		{
			system.out.println(text.substring(start,end);
		}
	
		public static void main(Substring[] args)
		{
			String text = "Lasfloresazules";
			showSubstring(text, 2, 9);
		}
	}```

Existe un excelente canal donde aprendí muchas cosas de Java, lastima que el creador ahora descansa en la nube, el software siempre se lleva a los mejores.
https://www.youtube.com/watch?v=2ZXiuh0rg3M&list=PLWtYZ2ejMVJkjOuTCzIk61j7XKfpIR74K

Un excelente ejemplo 👏.
.
Adicionalmente, existen algunos términos que merecen la pena ser explicados:
👉 Static es empleado para que una clase no sea declarada explícitamente, es decir, no crear un objeto a partir de la clase.
👉 Void es empleado para funciones y métodos cuyo propósito es realizar acciones e instrucciones, en donde no se devuelve un valor (return).
.
Probablemente haya confusión con todos estos términos. Sin embargo, si profundizas en el lenguaje y comprendes la programación orientada a objetos (POO) permitirá comprender de mejor manera todo esto 😁.

Muy interesante y explicativo esta clase.
Excelente aporte.

confieso que antes de los lenguajes solo anotaba y no tenía idea de como acomodar… pero ahora que copiamos los ejercicios se recuerda cada concepto y de a poco entramos en materia n.n

public class Main {

	public static void showSubString(String text, int start, int end){
    	System.out.println(text.substring(start, end));
    }
  public static void main(String[] args) {
    String text = "LasFloresAzules";
    showSubString(text, 3, 13);
  }
}

Dejo mi codigo, hay que cuidar la sintaxis, por una “s” me marcaba error el symbol

class Main { public static void showsSubString(String text, int start, int end){ System.out.println (text.substring(start, end)); } public static void main(String[] args) { String text = "Lasfloresazules"; showsSubString(text, 3, 7); } }

Animo! Sé que a este punto quizás te deba doler la cabeza, pero que eso no te frustre anímate a seguir en los otros cursos y verás como todo se va a aclarar

void? static? de verdad la única que no entiende nada de nada soy yo? cómo me sirve esto para comprender los lenguajes de programación, qué es el backend y el frontend, la verdad si no fuera porque quiero cambiar de laburo hubiera desistido hace rato. Un desastre.

He aprendido mucho buscando en internet de que habla la instructora. Hay muchos errores fonéticos, de tono, de continudad e incluso de pronunciación en este curso. Lo bueno es que al no entender mucho, me ha obligado a ver otras fuentes para intentar enteder. No tenía idea de que un array tambien es llamado vector. Pero este curso tiene un problema serio, la voz que se escucha. No niego que quien lo presenta sea una excelente persona, profesional, madre y que tenga sus conocimientos, pero no todos tienen la idea de enseñar y/o presentar (yo me incluyo en no saber como)…

que fácil aprender así

class Main {
  public static void showSubstring(String text, int start, int end) {
    System.out.println(text.substring(start,end));
  }

  public static void main(String[] args) {
    String text = "Lasfloresrojas";
    showSubstring(text, 9, 14);
  }
}```
class Main {
  public static void showSubString(String text, int start, int end){
    System.out.println(text.substring(start,end));
  }
  public static void main(String[] args)
  {
    String text = "LasFloresAzules";
    showSubString(text, 3, 7);
  }
}```
class Main {
  public static void showSubstring(String text, int start, int end) {
    System.out.println(text.substring(start,end));
  }

  public static void main(String[] args){
    String text = "Lasfloresazules";
    showSubstring(text, 2, 9);
  }
}
    

Esta clase si la entendí 😄, muy bien :3

Aunque sí creo que probablemente explique en 6 minutos mejor el funcionamiento de los métodos en java que mi profesor de universidad en 4 clases de 2 horas, no se si es el contenido más apropiado para un estudiante que venga de 0.
Si alguien estuviese empezando a aprender siguiendo el orden que le dicen las escuelas de desarrollo web, matemáticas o desarrollo de software y partiera de 0, esto sería muy confuso para él/ella.
Está muy bien explicado, pero si ya tienes conocimientos previos.

No entiendo porque enseñan diferentes leguaje de programación si esto trata de pensamiento lógico. JAJAAJAJA

Yo a duras penas voy iniciando con python. 😪

No entiendo el punto de pasearnos por los distintos lenguajes de programación.

javac -classpath .:/run_dir/junit-4.12.jar:target/dependency/* -d . Main.java
Main.java:7: error: cannot find symbol
public static void Main(string[] args) {
^
symbol: class string
location: class Main
Main.java:4: error: package system does not exist
system.out.println(text.substring(start,end));
^
Main.java:8: error: cannot find symbol
string text = “lasfloresazules”;
^
symbol: class string
location: class Main
3 errors
compiler exit status 1
 POR FAVOR QUE HAGO SI NO COMPILA Y ME APARECE ESTO

Acá les dejo el código por si alguno quiere ahorrase el tiempo de digitar 😛

public class Main {
public static void showSubString(String text, int start, int end){
System.out.println(text.substring(start, end));
}

public static void main(String[] args) {
String text = “Lasfloresazules”;
showSubString(text, 3, 7);
}
}

Definitivamente soy team Java, me gusta mucho este lenguaje mas que otros.

Yo en la prepa tuve malas experiencias con Java, pero en realidad no es tan difícil

Vamos practicando y familiarizando con varios lenguajes…importante!!!

Se implementa en Rust:

fn main() {
    let text = "Lasfloresazules".to_string() ;
    let start = 4 ;
    let end = 9 ;
    println!("show_substring({:?}, {}, {}) = {:?}", text, start, end, show_substring(&text, start, end)) ;
}

fn show_substring(text: &String, start: usize, end: usize) -> &str {
    return &text[start-1..end] ;
} 

RESULTADO:

show_substring("Lasfloresazules", 4, 9) = "flores"

Aquí está mi codigo.

class Main {
  public static void showSubstring(String text, int start, int end ) {
  System.out.println(text.substring(start,end));
  }

public static void main (String[] args) {
  String text ="Lasfloresazules";
  showSubstring(text, 3, 7);
} 
}
package platzi;

public class Main {
	public static void showSubString(String text, int start, int end) {
		System.out.println(text.substring(start, end));
	}
	
	public static void main(String[] args) {
		String text = "lasfloresazules";
		
		int start = 2;
		int end = 9;
		
		showSubString(text, start, end);
	}
}

Java me parece un buen lenguaje para aprender a programar, en este se detalla muy bien lo que estamos haciendo, decimos que tipo de dato estamos utilizando y determinamos el scope de nuestro código mientras que en otros lenguajes esto esta implicito.

Muy recomendable ver el curso de Introducción a Java SE con la profesora Anahí Salgado

Nice!

<class Main {
  public static void showSubstring(String text, int start, int end) {
    System.out.println(text.substring(start, end));
  }

  public static void main(String[] args) {
    String text = "LasFloresAzules";
    showSubstring(text, 3, 7);
  }
}>

Gogogoo!! xD

Me copo eso de aprende Java.

Y otro reto realizado :v !. Java: Recordar el volver a vivir…

class Substring {
  public static void main(String[] args) {
    System.out.println("La palabra recortada es: " + retornarPalabraRetornada("Lasfloresazules", 3, 9));
  }

  public static String retornarPalabraRetornada(String palabra, int desde, int hasta)
  {
    String palabraRecortada = palabra.substring(desde,hasta);
    return palabraRecortada;
  }
}

**Me esta gustando más la sintaxis de Java que la de JavaScript.

¿Será porque voto republicano?**

Me quedo con Javascript y PHP

class Main 
	{
		public static void showSubstring(String text, int     
                start, int end)	{
			System.out.println(text.substring(start,end));
		}
	
		public static void main(String[] args){
			String text = "Lasfloresazules";
			showSubstring(text, 2, 9);
		}
	}

Lo logré. Creo que al final lo que esta clase nos quiere demostrar es que debemos ser pacientes y no tener miedo a las frustraciones de no haber colocado un punto y coma.
Aquí mi código.

class Main {
  public static void showSubString(String text, int start, int end) {
    System.out.println(text.substring(start,end));
  }
  public static void main(String[] args) {
    String text = "LaVidaEsCortaLaOcasionEsFugaz";
    showSubString(text, 7, 14);
  }
}

la verdad me siento perdido, para un novato es en chino y se pierde el interes.

yo sigo inclinándome más por JavaScript

Conoce los principales beneficios de aprender Java
Es sencillo de aprender.
Es un lenguaje orientado a objetos.
Java es una gran API.
Posee herramientas poderosas.
Una gran colección de librerías de código abierto.
Posee una gran comunidad.
Java es gratuito.

¿Cuáles son las desventajas de Java?
Resultado de imagen para ventajas y desventajas de java
Algunas de las desventajas de Java son:
Los. programas de rendimiento en Java tardan mucho más en ejecutarse en comparación con C / C++ .
Memoria. …
Costo. …
Programación de bajo nivel. …
Recolección de basura. …
Sin tipos sin firmar A diferencia de C / C++, Java no admite unsigned int, unsigned char,… etc.

Me causa ansiedad que diga corchetes cuando lo que pone son llaves {}

public class Main {
	public static void showSubString(String text, int start, int end){
    	System.out.println(text.substring(start, end));
    }

  public static void main(String[] args) {
    String text = "Lostigresamarillos";
    showSubString(text, 3,10);
  }
}

te amo java

Java es un lenguaje que se encuentra muy a menudo, sin embargo se vuelve un poco complejo para los que aún no sabemos mucho de esto, espero cuando aprenda los lenguajes que hemos visto ya pueda decir “ésos ejercicios estaban fáciles” 😃

class Main {
public static void showsubstring (String text, int start,int end){
System.out.println(text.substring(start, end));
}

public static void main (String[] args){
String text = “lasfloresazules”;
showsubstring(text, 0, 7);
}
}

Toda la vida consumiendo tecnologia y con tantos avances , la tendencia es a minimizar o pasar por alto el gran desarrollo que se necesita para soportar el estilo de vida de la mayoria de personas en el presente , no tengo idea de programar , para eso ingrese a platzi y de verdad , que con lo poco que entiendo me cautiva cada dia la idea de no solo consumir sino ser parte de la creacion de toda la tecnologia del desarrollo de software y todo lo que conlleva .

import java.util.Scanner;
class Main {
  public static void main(String[] args) {
    String textoFinal = "";
    Scanner scan = new Scanner(System.in);
    System.out.println("Escriba el texto a separar: ");
    String texto = scan.nextLine();
    System.out.println("Escribe la posición inicial de la palabra: ");
    int posicionInicialPalabra = scan.nextInt();
    System.out.println("Escribe la posición final de la palabra: ");
    int posicionfinalPalabra = scan.nextInt();
    for (int i = posicionInicialPalabra; i <= posicionfinalPalabra; i++){
      textoFinal += texto.charAt(i);
    }
    System.out.println(textoFinal);
  }
}

class Main {
public static void showsubstring (String text, int start,int end){
System.out.println(text.substring(start, end));
}

public static void main (String[] args){
String text = “lasfloresazules”;
showsubstring(text, 0, 7);
}
}

No esta mal, pero si siento que le hace falta muuucho marco teórico, a todos los comandos o estructuras de su código; porque nomas me espanto de ver como avanza con tal rapidez.

Mi aporte

class Main {
  public static void main(String[] args) {

    claseTest objTest = new claseTest();

    System.out.println(objTest.retornarTexto("departamentos_amoblados",'a','b'));
    System.out.println("..................................");
    System.out.println(objTest.retornarTexto("lasfloresazules",'f','s'));

  }

}

class claseTest{

  public claseTest(){};

   public String retornarTexto(String palabra, char caracterIni, char caracterFin)
  {
    String texto = "";
    int positionIni = 0;
    int positionFin = 0;

    positionIni = palabra.indexOf(caracterIni);
    //Posición encontrada del caracter "caracterFin" a partir de la posición "positionIni"
    positionFin = palabra.indexOf(caracterFin,positionIni); 

    //Obtiene el bloque de texto que existe entre la posición "positionIni" y una posición antes a "positionFin". 
    texto = palabra.substring(positionIni,positionFin+1);
 
    System.out.println("Palabra ingresada: " + palabra);
    System.out.println("Caracter Inicial: " + caracterIni);
    System.out.println("Caracter Final: " + caracterFin);

    return "El texto encontrado es: " + texto;
  

El termino qué más me constó entender fue el “static”, pero al final logré comprenderlos todos.

Me trae muchos recuerdos esto, me acuerdo cuando aprendí java, mi primer lenguaje de programación.

¡¡¡Java Es Una Locuraaa!!!

Usando la función System.out.println()

definitivamente necesito más conocimiento de java

No se rindan. pausen el video y analicen un poco la lógica, recuerden que estamos viendo muchos lenguajes y ejemplos de la vida real.
Para los que se quieren rendir, sé que las clases son dificiles pero no tienen que saber todo lo que esta diciendo la profesora, solo nos está remojando para darnos una idea de como funciona.
Puedes tomar el curso básico de cada lenguaje y luego volver aquí y verás la gran diferencia!

class Main {
  public static void showSubstring(String text, int start, int end){
    System.out.println(text.substring(start, end));
  }

  public static void main(String[] args){
    String text ="Lasfloresazules";
    showSubstring(text, 2, 9);

  }
}

Gracias!

class Main {
public static void showSubstring(String text, int start, int end) {
System.out.println(text.substring(start,end));
}

public static void main(String[] args) {
String text = “MinombreesEduardo”;
showSubstring(text, 0, 2);
showSubstring(text, 2, 8);
showSubstring(text, 8, 10);
showSubstring(text, 10, 17);
}
}

Este ejemplo si lo entend[i bien, XD

class Main {
public static void showSubstring(String text, int start, int end) {
System.out.println(text.substring(start,end));
}

public static void main(String[] args) {
String text = "Lasfloresazules";
showSubstring(text, 3, 7);
} 

}

Java

ava es un lenguaje orientado a objetos, es por eso que hacemos uso de clases.

🤖🤖🤖

Funciones dentro de clases
En el argot de la programación orientada a objetos, las funciones dentro de las clases se denominan funciones-miembro o métodos, y las variables dentro de clases, variables-miembro o propiedades. El sentido es el mismo que en la programación tradicional.

luego de hacer el ejercicio tal cual propuesto por la profesora me puse en la tarea de intentar que funcionara pero con otro enfoque 😃

import javax.swing.JOptionPane;

class Main {
  public static void main(String[] args ) {
    String Text="";
    int start,end;
    Text=JOptionPane.showInputDialog("cual es la cadena de caracteres");
    start=Integer.parseInt(JOptionPane.showInputDialog("cual es el inicio del substring"));
    end=Integer.parseInt(JOptionPane.showInputDialog("cual es el final del substring"));

    JOptionPane.showMessageDialog(null,"este seria el substring: "+Text.substring(start,end));
  }
 
}

Me encantó la clase, estoy ansiosa por seguir aprendiendo más. :3

estructura

Interesante Java y simplicidad

;33

Umh… Java se ve relativamente facil de abordar, tiene parentesco con algun otro lenguaje que domine a lo mejor 😅

No me gusta Java 😕

ellos están en otro mundo no entiendo como me salía esto primero en la bendita ruta de aprendizaje.

JAVA sin Script

Aquí sí que son obligatorios los “;” 👀