Jesús Ignacio García Fernández
Cristian Blandon
Juan Andrés Cabrera Mendoza
Carlos Abel Tarazona Aranda
Juan Andrés Cabrera Mendoza
Jorge Hernández
Cristian Blandon
Juan Pablo Perez
Joaquín Alexis Monzón
Juan Antonio Aramburo Pasapera
Mario Arciniegas Mejia
Miguel Ángel Santana Guzmán
Irving Juárez
Reinaldo Mendoza
Reinaldo Mendoza
Gabriel Obregón
Alberto Enrique Muñoz Velasquez
John Cardenas
Cristian Blandon
jorge luis montilla belisario
Enrique Aguilera
Marcos Antonio Funes
Jorge Varas
Isaac Guibaldo Villajuana Hernández
Yerson Steven Rojas Barragan
Santiago Tellez Hernandez
Luis Fernando Baldovino De Castro
Carlos Nassif Trejo Garcia
Omar Villada
Luis Gabriel Delgado Sanchez
Juan Andrés Cabrera Mendoza
Las variables globales int a, b que has declarado en la línea 2 no se está usando.
Llamar a la función add e internamente una variable add hacen un poco complicada la lectura del código.
Por lo demás genial, me gusta como va el curso. Seguimos lleno de entusiasmo.
¡Buena observación! :detective:
gracias por el dato
Funciones sin argumentos y sin valor de retorno :D
<void demo(); int main() { demo(); return 0; } void() { int a, b, suma; a = 100; b = 100; printf("El resultado es %i", suma); } >
Funciones con argumentos, pero sin valor de retorno
<int a, b; void sum(int a, int b); int main() { sum(100, 100); return 0; } void sum(int a, int b) { int sum; sum = a + b; printf("El resultado es %i", sum); } >
Funciones que tienen argumentos y valor de retorno
<int a, b; int sum(int a, int b); int main() { sum(100, 100); printf("El resultado es %i", sum(100, 100)); return 0; } int sum(int a, int b) { int sum; sum = a + b; return sum; } >
gracias por los apuntes
¿Por qué la creación de funciones se divide en 3 partes? y ¿Por qué la declaración debe ir después de las librerías? ¿por qué la definición de la función debe ir después de main?
Como lo hace el profesor es:
Hay personas que dicen que la declaración previa es una buena práctica... Yo personalmente no lo hago, en el mismo momento que la declaro, la construyo y ya está, por lo que por ahí te puedes ahorrar un paso.
Eso sí, la invocación va aparte de la construcción de la función, por lo que no podemos reducir más el proceso.
Lo de que vaya encima, también es a gusto... Yo personalmente las pongo encima de la función main (porque así se hace en otros lenguajes y me acostumbré), pero en nada afecta al código.
¡Saludos!
Tenía esa misma duda gracias Cristian.
No me quedó claro por qué dio el resultado de 4199786
Supongo que se verá en el siguiente curso. Pero lo que pasa es que en lugar de pasar una variable pasó la función (no el return de la función como cuando lo corrigió) y con ese número identifica C a la función.
Es un poco confuso por que le puso el nombre "add" a la función y a la variable interna, pero lo que sucedió es que, al no ponerle los paréntesis y los argumentos, el código trató de imprimir la variable add que se estaba usando dentro de la función add(), pero esa variable no estaba definida para ser usada fuera de la función.
Código de la función potencia y suma en uno
#include <stdio.h> // Hace la potencia de dos nuemros enteros int power(int base, int exponente); //Suma dos valores int add(int a, int b); int main() { for (int exponente = 0; exponente < 10; exponente++) { printf("%d ^ %d = %d\n", 2, exponente, power(2, exponente)); } printf("\nAddition result is %d", add(7,3)); return 0; } int power(int base, int exponente) { int resultado = 1; for (int i = 1; i <= exponente; i++) { resultado = base * resultado; } return resultado; } int add(int a, int b) { int add; add = a + b; return add; }
Los argumentos que VisualStudioCode le puso al profes por defecto representan el numero de argumentos que tenga el programa y una cadena de caracteres donde viene cada uno de esos argumentos como string. En pocas palabras, son cosas un poco mas avanzadas que creo que no aparecen en este curso.
argc y argv
arguments counter y arguments vector(el primero es el nombre de la función)
📝Funciones en C
🔹 1. Función sin argumentos y sin retorno
✨ Características
💡 Ejemplo resumido Una función llamada demo que suma dos números fijos y muestra el resultado en pantalla.
👉 Uso típico: mostrar mensajes, inicializar valores, ejecutar acciones internas.
🔹 2. Función con argumentos
✨ Características
💡 Ejemplo resumido Una función add que recibe dos números, los suma y muestra el resultado.
👉 Uso típico: hacer cálculos con datos que el programa le envía.
🔹 3. Función con tipo de retorno
✨ Características
💡 Ejemplo resumido La función add ahora devuelve la suma en lugar de imprimirla directamente. El programa guarda ese valor en una variable result y luego lo muestra.
👉 Uso típico: cálculos cuyo resultado se necesita en varias partes del programa.
Una pregunta Ricardo. En la definición de funciones existe alguna restricción con el nombre de estas es decir se pueden nombrar libremente o existen palabras reservadas en su uso. Gracias.
Hola alberto,
Se pueden nombrar libremente, tanto las funciones como las variables. Lo importante es que sean lo suficientemente auto-explícitas. Que con su nombre los demás puedan saber cual es el objetivo de esa función.
Y que su nombre no sea exactamente igual a una palabra reservada del lenguaje :ok_hand:
Aquí puedes ver la lista de palabras reservadas.
3 cursos de C y aun no ha utilizado el scanf para pedir el ingreso de un dato del usuario.....
#include <stdio.h> void add(); int main() { add(100, 100); return 0; } void add(int a, int b) { printf("The result of the sum is %d", a + b); } ```#include \<stdio.h> void add(); int main() { add(100, 100); return 0;} void add(int a, int b) { printf("The result of the sum is %d", a + b);}
<code> ```#include <stdio.h> void demo(int a, int b); main() { /* code */ int a, b; printf("ingrese el valor de a "); scanf("%i", &a); printf("ingrese el valor de b "); scanf("%i", &b); demo(a,b); return 0; } void demo (int a, int b){ int sum; sum = a + b; printf("la suma es %d", sum); }
super
Algo que me ha servido al momento de escribir código es recolectar dentro de funciones acciones que suelo utilizar frecuentemente. Por decir, si en tu programa necesitas que el usuario escriba varios datos(nombre, apellidos, etc), podrías hacer una función que lea los datos de entrada y simplemente cambie el mensaje dependiendo de lo que le pidas que ingrese.
en cada video me impresiono mas!
Al momento de utilizar las funciones no debemos olvidar que se tienen tres partes principales, en una se declara la función , posterior a esto la debemos llamar y por ultimo debemos definir la lógica que esta va a tener.
'sum' was actually ok and even better than 'add'
#include <stdio.h> void demo(); void add(int a, int b); int main(int argc, char const *argv[]) { demo(); add(1, 2); return 0; } void demo() { int a, b, sum; a = 100; b = 200; sum = a + b; printf("sum = %d\n", sum); printf("Hello World!\n"); } void add(int a, int b) { int sum; sum = a + b; printf("sum = %d\n", sum); }
Me gustan mucho estos cursos, siento que me da buenas bases en todo, mi objetivo es aprender Tecnologías .NET
Y el profesos explica muy bien y transmite entusiasmo por el tema
Despues del minuto 8 se va el audio, ya me ha pasado en otras clases
buena clase