muchas gracias Emilio, por compartir tus conocimientos, me estas sirviendo de mucha ayuda para aprender un poco, ya que estoy estudiando un grado superior de desarrollo aplicaciones multiplataforma y me esta siendo un poco complicado aprobar la asignatura de programacion y gracias a tus videos ya me voy enterando de bastante. SIGUE ASI
Ángel Morán Pon delante del scanf esto: fflush(stdin); si te funciona, mas adelante enseño que es exactamente esto, solo debes de saber que lo ideal es ponerlo delante de los scanf que vayan a recoger caracteres!
Hola, desde ya muchas gracias por tu esfuerzo y dedicación para realizar estos videos, para mi son de gran ayuda. Te comento que en el pdf de las funciones de Strings, encontré que el codigo de ejemplo de srtcmp tiene un error aparentemente, en la parte donde comienza el bucle Do While en el if donde se le pide que compare los strings omitieron el == "dice: if(strcmp(s,"paso")) y no debería decir "if (strcmp(s,"paso") != 0)"???? para poder saber si la clave es correcta o incorrecta. Te mando un saludo. Gracias!!!!
Avanza con lo que estas viendo y si sabes que es la orientación a objeto, trata de usar herencia, polimorfismo, etc, podrás comprobarlo por tu propia cuenta. Un saludo.
Colega, realmente poner el valor de repeticiones de estrucutras es un poco confuso ya que yo pongo el valor de por ejemplo 10 estructuras y al bucle le digo i
como puedo hacer un programa para leer polinomios con structura de datos... el programa me pide que lea un polinomio y el usuario tiene que definir que quiere hacer, sumar, restar o multiplicar... ¿podrias ayudarme?
una consulta capo, cuando le diste los precios con el vector saltaron varios precios aleatorios a partir dl primero.. aho si quiero yo poner el precio de los 10 libros individualmente?saludos muy buen video interesante
+Ramon Exposito Si no sabes hacer eso, es porque no te has visto todos los videos anteriores, así que te recomendaria que lo hicieras y aprendieras. Un saludo.
yo podria tener por ejemplo 3 variables de tipo int en UNA estructura ? por ejemplo quiero peso altura de una persona en una estructura. entonces podria tener un int peso,altura;?
Hernan pereira. De verdad nunca preguntes algo que puedes comprobar tan facilmente. De verás que no entiendo que cuesta cojer, poner tres int y ves si funciona, tardas menos que en escribir el comentario preguntando... Incluso si es más complejo que eso siempre es igual. PRUEBA - BUSCA POR INTERNET - y como último recurso pregunta...
No es solo mí opinión. Es la opinión del duelo del canal también. Seguramente se canso de decirlo porque muchos le tomaban por borde, pero tiene toda la razón. Pero bueno está en tu mano intenar ser autodidácta y autosuficiente o siempre andar preguntando. Haz lo que quieras a mi me va importando bien poco.
A la hora de definir la estructura, que diferencia hay entre declararla como tu haces: typedef struct { ... }libro; y hacerlo de la forma: struct libro{ ... }; ? Muchas gracias!
+GR Valencia Si entendí bien, el typedef, sirve para "crear" un tipo de definición, como "int, char, float", propio, si no usas typedef, no podés usar dentro de main la linea "libro ".
Cuando ejecuto me dice "Segmentation fault(core dumped)" y finaliza el programa, ¿qué puede ser? #include #include typedef struct{ char nombre; int cargador; float damage; }arma; int main(){ int i=0; arma pistola[3]; strcpy(pistola[0].nombre, "M1911"); strcpy(pistola[1].nombre, "G17C"); strcpy(pistola[2].nombre, "MP443"); while(i < 3){ pistola[i].cargador = 11; i++; } i = 0; while(i < 3) { pistola[i].damage = 1 + ((2/3)+i); i++; } i = 0; while(i < 3){ printf("La pistola %s tiene un cargador de %i balas, con un daño de %f cada una.",pistola[i].nombre,pistola[i].cargador,pistola[i].damage); i++; } printf("
iTiago98 No has reservado memoria para el nombre, por lo que es un char que solo guarda un caracter y cuando lo quieres mostrar por pantalla lo haces con %s, por lo que falla. Recuerda que el compilador siempre da mucha informacion y te dice donde se encuentra el error mas o menos. Un saludo.
Os dejo por aquí el programa que he hecho: #include #include void erase(char string[]); typedef struct{ int pages; char name[50]; float prize; }sBook; int main(){ int i; sBook book[10]; for(i = 0; i < 10; i++){ printf("Enter a name of the book "); fgets(book[i].name, 50, stdin); erase(book[i].name); book[i].pages = rand() % 300; book[i].prize = (rand() % 3500); book[i].prize /= 100; } for(i = 0; i < 10; i++){ printf("The book whose tittle is \"%s\" has %d pages and his prize is %.2f ", book[i].name, book[i].pages, book[i].prize); } return 0; } void erase(char string[]){ int length = strlen(string); string[length - 1] = '\0'; }
Buenas, no es mas sencillo que te veas los vídeos desde el inicio? Si tienes esa duda, tendrás muchísimas mas, así que te recomiendo que empieces por los primeros vídeos. Te pongo un enlace al cuarto vídeo donde explico los tipos de variables, pero en el futuro te pediría que lo miraras por tu cuenta: ruclips.net/video/8aGZr2ksme8/видео.html Un saludo.
Lo de strcpy no lo explicaste. Me he repasado todos los videos hasta ahora, y no sale nada. Estan en la guia que adjuntaste al tutorial 5.5, y lo he leido pero sigue sin quedarme claro. Muchas gracias por tus videos me estan sirviendo de gran ayuda. Saludos.
iNrelevante Vaya, espero que comprendas que no puedo explicar todas las funciones que tiene la libreria string.h, por esa razon puse ese PDF. Si lo lees, pone lo siguiente: "Copia el contenido de cad2 en cad1, devolviendo cad1. Es lo mas parecido que tiene C a la operacion asignacion de una cadena a una variable" Personalmente creo que lo dice muy claro, es la forma de copiar la cadena de caracteres cad2 a la cadena cad1, asi de simple. Lo puedes hacer tambien a mano, pero con una funcion es miles de veces mas facil y rapido, ¿no te parece? Un saludo.
Claro, pero yo por mi parte no se porque no se puede poner normalmente como con las otras variables, lo único que se es que tengo que usar esa función y si bien para el caso no es importante, a mi me gusta saber todo al máximo y lo mas detallado posible porque creo que me da mas "versatilidad" a la hora de hacer un programa. Igual mas allá de eso para mi el video fue bueno y lo principal que eran las estructuras por mi parte lo entendí muy bien y se agradece siempre la voluntad de uno de explicar sin exigir nada a cambio.
saque solito como pasar una estructura a una función, miren: // Bloque 6.1: Estructuras #include #include void leer(); typedef struct{ int paginas; char nombre[50]; float precio; }libro; int main (){ libro JT; JT.paginas = 50; strcpy (JT.nombre, "Juego de Tronos"); JT.precio = 25.5; leer(JT); system ("pause"); return 0; } void leer (libro JT){ printf ("El nombre del libro es %s ",JT.nombre); printf ("El libro %s tiene %i paginas ",JT.nombre,JT.paginas); printf ("El libro %s vale: $ %f ",JT.nombre,JT.precio); }
Te felicito por tus videos y me atrevo a decir que enseñas mejor que la mayoria de profesores a nivel universidad, un saludo.
muchas gracias por los videos, explicas mejor que en la facultad, saludos!
muchas gracias Emilio, por compartir tus conocimientos, me estas sirviendo de mucha ayuda para aprender un poco, ya que estoy estudiando un grado superior de desarrollo aplicaciones multiplataforma y me esta siendo un poco complicado aprobar la asignatura de programacion y gracias a tus videos ya me voy enterando de bastante.
SIGUE ASI
excelente explicación hermano, me ayudo para mi programa de facturación de empleados de una fabrica textil, mil gracias
No se si aprobaré el examen dentro de 2 semanas pero de verdad que lo haces muy fácil. Gracias!
sinceramente un placer escucharte, explicas muy bienel tema y el ejemplo es muy bueno.
Muchas pero Muchas Gracias Emilio me estas salvando la Patria en Computación 1 sigue así crack
Sos Dios ! Gracias por el contenido. Estoy re agradecido y motivado.
Sencillamente brillante. Menuda explicación ;)
Sos un crack amigo es 2021 y me re sirven tus videos
tengo un examen en 40 minutos y tus vídeos me están dando la vida
te acordas como te fue? son las 5 am y tengo un parcial hoy jaja
Excelentes vídeos mi hermano, muchas Felicidades :D
ojalá sigas así
asín*
Esto es bastante similar a lo que es un objeto y una clase en la POO . Buen video
Si claro.... Recuerda que c++ es derivado o más bien una extensión de c... Por lo cual las clases son para p.o.o
si lo miras desde ese aspecto, es muy similar cuando intentas llamar a las propiedades de un objeto que en el fondo siguen siendo variables.
Mis respetos, lo mejor para ti, gracias.
Muy bien explicado, gracias!
Ángel Morán Pon delante del scanf esto: fflush(stdin); si te funciona, mas adelante enseño que es exactamente esto, solo debes de saber que lo ideal es ponerlo delante de los scanf que vayan a recoger caracteres!
Me encanto la explicación lo entendí muy bien felicitaciones :)
Eres el mejor!
soy tu fan!!!
muy pero muy épica esta explicación
Buen video, pero por qué dices todo el rato "asín"? jajajaja es gracioso
Hola, desde ya muchas gracias por tu esfuerzo y dedicación para realizar estos videos, para mi son de gran ayuda. Te comento que en el pdf de las funciones de Strings, encontré que el codigo de ejemplo de srtcmp tiene un error aparentemente, en la parte donde comienza el bucle Do While en el if donde se le pide que compare los strings omitieron el == "dice: if(strcmp(s,"paso")) y no debería decir "if (strcmp(s,"paso") != 0)"???? para poder saber si la clave es correcta o incorrecta. Te mando un saludo. Gracias!!!!
excelete video muy bien explicado:)
Excelente video!
Magnifico!
Muchas Gracias Maestro
gracias por los videos, eso de estructuras, es como la programación orientada a objetos, cierto, y las estructuras son como las clases
Mas o menos puedes entender ese concepto, pero no es lo mismo, esta mucho mas limitado.
¿en que aspectos está limitado?
Avanza con lo que estas viendo y si sabes que es la orientación a objeto, trata de usar herencia, polimorfismo, etc, podrás comprobarlo por tu propia cuenta.
Un saludo.
hola una pregunta se puede poner un void dentro de la estructura o nadamas int, char y float gracias.
EXCELENTE!
eso tambien me hace recordar a una ,clase , en Java scrip
8:35 me leíste la mente xD
Me hierve la sangre cuando dice "asinque" pero el tutorial es buenisimo
Esto es lo que se denomina POO?
bien hecho
PRegunta, despues del typedef struct, no es necesario colocar el nombre de la estructura ademas de al final?
que mierdas haces aqui D:
Hola es posible que el nombre de la estructura en vez de escribirlo al final se lo pueda poner a la par asi quede: "struct libro{" ?
Colega, realmente poner el valor de repeticiones de estrucutras es un poco confuso ya que yo pongo el valor de por ejemplo 10 estructuras y al bucle le digo i
por que en terminal de ubuntu no me compila
como puedo hacer un programa para leer polinomios con structura de datos... el programa me pide que lea un polinomio y el usuario tiene que definir que quiere hacer, sumar, restar o multiplicar... ¿podrias ayudarme?
ruclips.net/video/DYdJVn_k9i8/видео.html&list=PLw8RQJQ8K1ySN6bVHYEpDoh-CKVkL_uOF&index=7
JAJAJA lo siento 😂
una consulta capo, cuando le diste los precios con el vector saltaron varios precios aleatorios a partir dl primero.. aho si quiero yo poner el precio de los 10 libros individualmente?saludos muy buen video interesante
+Ramon Exposito Si no sabes hacer eso, es porque no te has visto todos los videos anteriores, así que te recomendaria que lo hicieras y aprendieras.
Un saludo.
Solo es meter esto y ya : scanf("%f",&IT[i].precio);
yo podria tener por ejemplo 3 variables de tipo int en UNA estructura ? por ejemplo quiero peso altura de una persona en una estructura. entonces podria tener un int peso,altura;?
Sigue viendo videos y te responderan :D.
Un saludo.
si, ahora los vi de seguido, perdon por la pregunta, soy algo ansioso
Hernan pereira. De verdad nunca preguntes algo que puedes comprobar tan facilmente. De verás que no entiendo que cuesta cojer, poner tres int y ves si funciona, tardas menos que en escribir el comentario preguntando... Incluso si es más complejo que eso siempre es igual. PRUEBA - BUSCA POR INTERNET - y como último recurso pregunta...
Cuando el dueño del canal me responde no necesito tu opinion. 👋
No es solo mí opinión. Es la opinión del duelo del canal también. Seguramente se canso de decirlo porque muchos le tomaban por borde, pero tiene toda la razón. Pero bueno está en tu mano intenar ser autodidácta y autosuficiente o siempre andar preguntando. Haz lo que quieras a mi me va importando bien poco.
A la hora de definir la estructura, que diferencia hay entre declararla como tu haces:
typedef struct {
...
}libro;
y hacerlo de la forma:
struct libro{
...
};
?
Muchas gracias!
+GR Valencia Si entendí bien, el typedef, sirve para "crear" un tipo de definición, como "int, char, float", propio, si no usas typedef, no podés usar dentro de main la linea "libro ".
typedef sirve para crear alias.
Cuando ejecuto me dice "Segmentation fault(core dumped)" y finaliza el programa, ¿qué puede ser?
#include
#include
typedef struct{
char nombre;
int cargador;
float damage;
}arma;
int main(){
int i=0;
arma pistola[3];
strcpy(pistola[0].nombre, "M1911");
strcpy(pistola[1].nombre, "G17C");
strcpy(pistola[2].nombre, "MP443");
while(i < 3){
pistola[i].cargador = 11;
i++;
}
i = 0;
while(i < 3) {
pistola[i].damage = 1 + ((2/3)+i);
i++;
}
i = 0;
while(i < 3){
printf("La pistola %s tiene un cargador de %i balas, con un daño de %f cada una.",pistola[i].nombre,pistola[i].cargador,pistola[i].damage);
i++;
}
printf("
");
return 0;
}
No le he puesto un límite de caracteres al nombre...
iTiago98 No has reservado memoria para el nombre, por lo que es un char que solo guarda un caracter y cuando lo quieres mostrar por pantalla lo haces con %s, por lo que falla.
Recuerda que el compilador siempre da mucha informacion y te dice donde se encuentra el error mas o menos.
Un saludo.
gracias a eso lo he identificado gracias
Os dejo por aquí el programa que he hecho:
#include
#include
void erase(char string[]);
typedef struct{
int pages;
char name[50];
float prize;
}sBook;
int main(){
int i;
sBook book[10];
for(i = 0; i < 10; i++){
printf("Enter a name of the book
");
fgets(book[i].name, 50, stdin);
erase(book[i].name);
book[i].pages = rand() % 300;
book[i].prize = (rand() % 3500);
book[i].prize /= 100;
}
for(i = 0; i < 10; i++){
printf("The book whose tittle is \"%s\" has %d pages and his prize is %.2f
", book[i].name, book[i].pages, book[i].prize);
}
return 0;
}
void erase(char string[]){
int length = strlen(string);
string[length - 1] = '\0';
}
¿No es lo que en JS se conoce como objeto? Se ve muy pero que muy parecido...
Se podría hacer lo mismo con un ciclo...
Realmente no veo mucho el cambio.
Hola amigo, una pregunta en C se pueden utilizar variables de tipo double?
Buenas, no es mas sencillo que te veas los vídeos desde el inicio? Si tienes esa duda, tendrás muchísimas mas, así que te recomiendo que empieces por los primeros vídeos.
Te pongo un enlace al cuarto vídeo donde explico los tipos de variables, pero en el futuro te pediría que lo miraras por tu cuenta:
ruclips.net/video/8aGZr2ksme8/видео.html
Un saludo.
Lo de strcpy no lo explicaste. Me he repasado todos los videos hasta ahora, y no sale nada.
Estan en la guia que adjuntaste al tutorial 5.5, y lo he leido pero sigue sin quedarme claro.
Muchas gracias por tus videos me estan sirviendo de gran ayuda.
Saludos.
iNrelevante Vaya, espero que comprendas que no puedo explicar todas las funciones que tiene la libreria string.h, por esa razon puse ese PDF. Si lo lees, pone lo siguiente:
"Copia el contenido de cad2 en cad1, devolviendo cad1. Es lo mas parecido que tiene C a la operacion asignacion de una cadena a una variable"
Personalmente creo que lo dice muy claro, es la forma de copiar la cadena de caracteres cad2 a la cadena cad1, asi de simple. Lo puedes hacer tambien a mano, pero con una funcion es miles de veces mas facil y rapido, ¿no te parece?
Un saludo.
Claro, pero yo por mi parte no se porque no se puede poner normalmente como con las otras variables, lo único que se es que tengo que usar esa función y si bien para el caso no es importante, a mi me gusta saber todo al máximo y lo mas detallado posible porque creo que me da mas "versatilidad" a la hora de hacer un programa.
Igual mas allá de eso para mi el video fue bueno y lo principal que eran las estructuras por mi parte lo entendí muy bien y se agradece siempre la voluntad de uno de explicar sin exigir nada a cambio.
grande coño
saque solito como pasar una estructura a una función, miren:
// Bloque 6.1: Estructuras
#include
#include
void leer();
typedef struct{
int paginas;
char nombre[50];
float precio;
}libro;
int main (){
libro JT;
JT.paginas = 50;
strcpy (JT.nombre, "Juego de Tronos");
JT.precio = 25.5;
leer(JT);
system ("pause");
return 0;
}
void leer (libro JT){
printf ("El nombre del libro es %s
",JT.nombre);
printf ("El libro %s tiene %i paginas
",JT.nombre,JT.paginas);
printf ("El libro %s vale: $ %f
",JT.nombre,JT.precio);
}
fui el like nro 200 *-*
Luego haremos estructuras de estructuas, y luego estructuras de estructuras de estructuras, y luego?
hotel?
trivago.
es un anidado a nivel pro. Ya parece una muñeca rusa "Matrioshka"
Eres un pedazo de tio
Estas confundiendo estructuras con tipos definidos estructurados creo.