Introducción a C++

1

Todo lo que aprenderás sobre C++

2

¿Qué es programar y por qué aprender C++?

Conceptos Generales de C++

3

La Historia de C++ y sus diferencias con C

Preparando el entorno de trabajo

4

Instalando Codeblocks

5

Pasos para instalar en mac

6

Ejecutando nuestro primer programa

7

¿Qué son las librerías STD? - Portada del Proyecto

Manejo de memoria

8

¿Qué es la memoria y tipos de datos?

9

Alojando variables en memoria

10

¿Cómo usar operadores?

11

¿Qué son los apuntadores?

12

Reto: Escribir un programa que calcule áreas.

Entrada de datos y funciones

13

¿Cómo introducir datos a nuestro programa?

14

¿Cómo usar condicionales?

15

Usando condicionales

16

¿Cómo encapsular código en funciones ?

17

¿Qué son los parámetros y como usarlos?

18

Reto: Juego narrativo implementando condicionales y entrada de datos.

Loops y arreglos

19

¿Qué son los arreglos?

20

¿Qué son los Loops?

21

Programando Loops

22

Loops , arreglos y arreglos bidimensionales

23

Dibujando el mapa de nuestro juego con arreglos

24

Manipulando mi jugador con inputs en arreglos unidimensionales

25

Arreglos bidimensionales

26

Reto: Moviendo a mi personaje en mi arreglo bidimensional

Lectura de Archivos

27

Creando y leyendo un archivo externo

28

Leyendo archivos externos

29

Reto: En el mapa, crear punto de inicio y salida del jugador

Programación Orientada a Objetos

30

¿Qué es POO?

31

Definiendo una clase y creando sus instancias

32

Encapsulación

33

Abstracción

34

Herencia

35

Propiedades de clase en herencia

36

Polimorfismo

Finalizando nuestro proyecto

37

Creación de personaje y archivo de encabezado

38

Moviendo mi personaje con entrada de datos

39

Mapa

40

Interacción entre el personaje y el mapa

41

Paredes

42

Optimizando trazado de mapa

43

Colisiones

44

Creando nuestra portada de juego

45

Tesoro y victoria

46

Conclusiones

47

Proyecto final

No tienes acceso a esta clase

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

¿Qué son los parámetros y como usarlos?

17/47
Recursos

¿Cómo crear funciones personalizadas en programación?

Crear funciones personalizadas es clave en la programación para encapsular código y evitar repeticiones innecesarias. Al establecer funciones, no solo mejoramos la legibilidad del código, sino que también facilitamos su mantenimiento y expansión en el futuro. ¡Vamos juntos a entender cómo lograrlo!

¿Qué es encapsular en funciones?

Encapsular en funciones implica agrupar varias líneas de comando en un bloque que se puede llamar múltiples veces. Esto se hace para optimizar el código y hacerlo más limpio.

  • Ejemplo práctico: Imagina que tienes un conjunto de operaciones que se repiten en tu código. Puedes crear una función que ejecute esas operaciones y luego simplemente llamarla cuando la necesites.
void miFuncion() {
    // Lógica de la función
}

En el caso de funciones como main(), esta se ejecuta automáticamente porque el compilador la convierte en binario.

¿Cómo crear una función que retorne un valor?

En ocasiones, queremos que nuestras funciones no solo ejecuten comandos, sino que también devuelvan un resultado al programa principal.

  • Ejemplo práctico: Supongamos que estás creando un juego y necesitas verificar si un jugador sigue vivo. Crearías una función que verifique los puntos de vida y devuelva un valor booleano.
bool estaMuerto(int HP) {
    if (HP <= 0) return true;
    else return false;
}

Al llamarla, solo necesitas proporcionar los puntos actuales del jugador. Si se le pasa un valor de 0 o menos, esta función devolverá verdadero.

¿Cómo pasar parámetros a una función?

Las funciones no solo se limitan a ejecutar comandos sin contexto; a menudo requieren recibir datos externos para funcionar correctamente.

  • Ejemplo práctico: Puedes pasar una variable con los puntos de vida actual del jugador a la función estaMuerto().
int totalHP = 3;
bool estaMuerto(totalHP);

Aquí, totalHP determina el comportamiento de la función, permitiendo evaluar dinámicamente la salud del jugador.

¿Cómo manejar múltiples parámetros?

Las funciones pueden aceptar múltiples parámetros, lo que les permite procesar y retornar resultados más complejos.

  • Ejemplo práctico: Una función que imprime un mensaje se puede enriquecer al aceptar múltiples cadenas de texto.
void imprimirMensaje(String mensaje1, String mensaje2) {
    cout << mensaje1 << ' ' << mensaje2;
}

Al invocarla, podrías pasar dos mensajes: imprimirMensaje("Hola", "mundo").

¿Para qué sirve encapsular código en funciones?

Encapsular código tiene varias ventajas significativas:

  • Simplificación del código: No repites bloques enteros de código varias veces.
  • Facilidad de mantenimiento: Cambiar la lógica dentro de una función automática afecta cada punto en el que se utiliza.
  • Legibilidad: Mejora la lectura y comprensión del código, sobre todo para terceros o para cuando revises tu código después de un tiempo.

Animamos a todos los estudiantes a seguir mejorando sus habilidades en programación. No olvides que la práctica constante y la curiosidad son los mejores aliados en este viaje de aprendizaje. Esperamos verte en la próxima clase para explorar más sobre arreglos y resolver los retos del módulo. ¡Sigue adelante!

Aportes 25

Preguntas 8

Ordenar por:

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

Argumentos 🆚 Parámetros:

Los parámetros son la lista de variables que ponemos cuando se define una función, por ejemplo, en la siguiente función tenemos dos parámetros “a” y “b”:

function sum(a, b) {
        return a + b;
}

Los argumentos son los valores que se pasan a la función cuando ésta es invocada, de esta manera, en el siguiente ejemplo tendríamos que “7”, “4” son los argumentos de nuestra invocación a la función:

const result = sum(7, 4);

En lenguajes fuertemente tipados como C++ o Java es importante recordar que hay que indicar el tipo de dato de los parámetros.
Ej:

void saludo(string nombre) {
	cout << "Hola " << nombre << endl;
}
#include <iostream>
#include <conio.h>
using namespace std;
int suma(int,int);
int resta(int,int);
int multiplicacion(int,int);
int division(int,int);
int main() {
	
	int a = 0, b = 0, ope = 0;
	char seg;
	do{
		system("cls");
		cout<<"\t===Calculadora Aritmetica==="<<endl;
		cout<<"\t _____________________"<<endl;
		cout<<"\t|  _________________  |"<<endl;
		cout<<"\t| | ALLAM        0. | |"<<endl;
		cout<<"\t| |_________________| |"<<endl;
		cout<<"\t|  ___ ___ ___   ___  |"<<endl;
		cout<<"\t| | 7 | 8 | 9 | | + | |"<<endl;
		cout<<"\t| |___|___|___| |___| |"<<endl;
		cout<<"\t| | 4 | 5 | 6 | | - | |"<<endl;
		cout<<"\t| |___|___|___| |___| |"<<endl;
		cout<<"\t| | 1 | 2 | 3 | | x | |"<<endl;
		cout<<"\t| |___|___|___| |___| |"<<endl;
		cout<<"\t| | . | 0 | = | | / | |"<<endl;
		cout<<"\t| |___|___|___| |___| |"<<endl;
		cout<<"\t|_____________________|"<<endl;
		cout<<"\nMenu de Operaciones:"<<endl;
		cout<<"\n\t1. Suma.\n\t2. Resta.\n\t3. Multiplicacion.\n\t4. Division."<<endl;
		cout<<"\nElija una opcion: ";
		cin>>ope;
		switch(ope){
		case 1:
			cout<<"\nSuma de numeros:"<<endl;
			cout<<"\n\tValor de A: ";
			cin>>a;
			cout<<"\tValor de B: ";
			cin>>b;
			cout<<"\tResultado: "<<suma(a,b);
			break;
		case 2:
			cout<<"\nResta de numeros:"<<endl;
			cout<<"\n\tValor de A: ";
			cin>>a;
			cout<<"\tValor de B: ";
			cin>>b;
			cout<<"\tResultado: "<<resta(a,b);
			break;
		case 3:
			cout<<"Multiplicacion de numeros:"<<endl;
			cout<<"\n\tValor de A: ";
			cin>>a;
			cout<<"\tValor de B: ";
			cin>>b;
			cout<<"\tResultado: "<<multiplicacion(a,b);
			break;
		case 4:
			cout<<"\nDivision de numeros:"<<endl;
			cout<<"\n\tValor de A: ";
			cin>>a;
			cout<<"\tValor de B: ";
			cin>>b;
			if(b == 0){
				cout<<"La division entre 0, no esta definida."<<endl;
			}else{
				cout<<"\tResultado: "<<division(a,b);
			}
			break;
		default:
			cout<<"Opcion no valida!!! :("<<endl;
		}
		cout<<"\n\nDesea realizar otra operacion? (S/N): ";
		cin>>seg;
	} while(seg == 'S' || seg == 's');
	cout<<"Gracias por usar la calculadora!!! :)"<<endl;
	return 0;
}
int suma(int a, int b){
	return a + b;
}
int resta(int a, int b){
	return a - b;
}
int multiplicacion(int a, int b){
	return a * b;
}
int division(int a, int b){
	return a / b;
}```

IMPORTANTE: Si estas usando codeblocks y tienes un problema con el codigo que no puedes resolver, googlea el problema tal cual como te lo muestra el programa de seguro encontraras la solucion o que es lo que pasa con el mismo

Excelente ejemplo para aprender 😄

Que buenas clases da este prof

Muy bien

Quitar conio.h y getch en caso de no estar en visual

#include<iostream>
#include<conio.h>

using namespace std;
void Print(string message)
{
cout << message << endl;
}
bool Solo7Vidas(int vidas) {
    if (vidas <= 7)
    {
        return true;
    }
    else
    {
        return false;
    }
}
int main() {
    int VidasTotales = 7;
    if (Solo7Vidas(VidasTotales))
    {
        Print ("Tu gato todavia tiene 7 vidas");
        Print("Es muy afortunado!");

    }


    getch();
    return 0;
}

Encapsular siempre va a ser muy útil 😃

Explica excelente Joe

Buena clase.


#include <iostream>

using namespace std;

void printCuteMessage() {
    cout << "Eres increible!" << endl;
    cout << ":D" << endl;
}

bool IsPlayerDead(int hp) {
    if ( hp <= 0 ) {
        return true;
    }
    else {
        return false;
    }
}

void print(string message) {
    cout << message << endl;
}

int main() {

    int TotalLife = 0;

    if ( IsPlayerDead(TotalLife) ) {
        print("Game over...");
    }
    else {
        print("Continue...");
    }


    return 0;
}

Genial ,Excelente clase

Podriamos comparar de estamanera, pero c++ siempre lo hace por nosotros

`if(IsThePlaterDead(TotalLife) == true)

`if(IsThePlaterDead(TotalLife))
    {
        cout << "Game Over" << endl;
    }````
#include<iostream>

using namespace std;

void pMessage(string nombre){
    cout << "bienvenido"<<" "<<nombre<< endl;
    cout << ":D" << endl;
}

bool IsPlayerDead(int hp){
    if ( hp <= 0 ) {
        return true;
    }
    else {
        return false;
    }
}

void print(string message){
    cout << message << endl;
}

int main(){

    int TotalLife = 0;
    string name;

    cout<<"dime tu nombre: ";
    cin>>name;
    pMessage(name);
    print(" ");

    if ( IsPlayerDead(TotalLife)){
        print("Game over...");
    }
    else {
        print("You are a live");
        print("Good luck");
    }


    return 0;
}

#include <iostream>

using namespace std;

//chequeara la vida de un jugador la cual me permite ingresar variables
bool isPlaydead(int hp){
if (hp<= 0 ){
return true;
}else {
return false;
}
}
//Creamos una función void
void Printf (string menssage, string menssage2 ){
cout <<menssage<<endl;
cout <<menssage2<<endl;
}

int main()
{
int TotalLife = 0;
if (isPlaydead(TotalLife)){
cout <<“Game Over”<<endl;
}

Printf("Hola", "holados");
Printf("Como", ":)");
Printf("Estas?", ":(" );

return 0;

}

<#include <iostream>
using namespace std;

void funcion ()
{
    cout << "Eres increible!!!" <<endl;
}
bool isPlayerDead (int hp)
{
    if (hp <= 0)
    {
        return true;
    }
    else
    {
        return false;
    }
}

int main()
{
    int totalLife = 1;
    if(isPlayerDead(totalLife))
    {
        cout << "Game Over" << endl;
    }
    else
    {
        cout << "He's still alive" << endl;
    }

return 0;
}
>

Muy clara la explicación, enseña muy bien este profesor.

Excelente clase y muy buena la explicación del profesor.

Tal vez ya lo mencionaron antes pero lo digo otra vez, que bonito curso :3
Me inspira a ser desarrollador de videojuegos xdd

Un excelente ejemplo para aprender.

Gracias

#include <iostream>
#include <stdlib.h>
#include <stdio.h>
using namespace std;
//Creamos una funcion de tipo booleano
bool VidaPersonaje(int hp){
if(hp <= 0){
return true;
} else{
return false;
}
}
void Jugando(){
std::cout << “Aun Seguimos jugando”;
}
int main() {
int contVida = 3;
string res = “”;
do{
cout << “El Personaje recibio un ataque \n”;
cin >> res;
if(res == “si” || res == “SI” || res == “Si”){
contVida–;
std::cout << “Te han golpeado te quedan " << contVida << " Vidas \n”;
}else{
Jugando();
}
}while(contVida != 0);
//Le pasamos el valor la cantidad de vidad que nos queda de
if(VidaPersonaje(contVida) == true){
std::cout << “GAME OVER”;
}
return 0;
}

*Mis apuntes sobre: ¿Qué son los parámetros y cómo usarlos?
La función puede devolver un valor (return), del tipo de la función declarada.

Les comparto el código de esta clase:

#include <iostream>

using namespace std;

void print(string message, string message2)
{
    cout<<message<<endl;
    cout<<message2<<endl;
}

int main()
{
    print("Hello", " xD");
    print("World", " omg");
    print("!", "uWu");


    return 0;
}

Gracias!