Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Triper0

#31
Claro, vos decís que el error de octal me lo toma por el primer '0' del número?...
Claro, no lo pensé a eso...

De todas formas si, el hecho de las '/' es importante, aunque no hice una cadena muy grande como para que entren, jaja...
Igual son ejercicios pavos que estoy re/haciendo porque rindo un parcial y empecé de 0, jaja... Hay muchas cosas que las tenía bastante oxidadas :P

Ya de paso hago otra consulta:
Por ejemplo, yo definí una macro, supongamos:

#define T_INT 1;

si yo después, a esa macro la quiero comparar con una variable de tipo int también, que previamente fue ingresado su valor por teclado, ¿cómo se haría?...
Porque yo hice

if (valor == T_INT)
  printf("te imprimo algo");

y me tira error : error: expected ')' before ';' token

#define T_INT 1;
#define T_FLOAT 2;
#define T_STR 3;

union T_union{
int ival;
float fval;
char *sval;
};

int main(){
int valor;
union T_union u;
u.ival=22;
u.fval=22.69;
u.sval=(char *)malloc(sizeof(u.sval));
strcpy(u.sval,"NO ME LEAS");

printf("Ingrese un valor para invocar la lectura:\t");
scanf("%d\n",&valor);

if (valor == T_INT)
printf("El valor de ival es: %d\n",u.ival);
if (valor == T_FLOAT)
printf("El valor de fval es: %f\n",u.fval);
if (valor == T_STR)
printf("El contenido de sval es: %s\n",u.sval);

return 0;
}


Ahí dejé el código para complicar menos las cosas...
#32
Gracias, gracias y nuevamente MIL gracias...

Con el tema de la fecha... Cuando lo pongo en int, long int o cualquier int que se me ocurra me tira el siguiente error de compilación:

Citarerror: invalid digit "9" in octal constant

Me suena rarisimo, no sé porqué dice que es octal, porque nada que ver... Por eso lo hice como cadena :P
#33
Desde ya, MUCHÍSIMAS gracias, me ha vuelto loco durante todo el seminario este error... Ahora ya no me lo tira más, acá dejo el código modificado para que me digan si de la forma que lo solucioné está bien o es una falta de respeto a los ojos de un programador de C :P

#include <stdio.h>
#include <string.h>
#include <stdlib.h>

typedef struct {
char *nombre;
char *apellido;
char *fecha;
char *legajo;
char *tipDoc;
int DNI;
}Alumno;

int main(){
Alumno alu,alu2;
alu.nombre= malloc(sizeof(alu.nombre));
alu.apellido= malloc(sizeof(alu.apellido));
alu.fecha= malloc(sizeof(alu.fecha));
alu.legajo= malloc(sizeof(alu.legajo));
alu.tipDoc= malloc(sizeof(alu.tipDoc));
strcpy(alu.nombre,"Esteban");
strcpy(alu.apellido,"Gonzalez");
strcpy(alu.fecha,"02111991");
strcpy(alu.legajo,"10662/3");
strcpy(alu.tipDoc,"DNI");
alu.DNI=36363023;

alu2.nombre= malloc(sizeof(alu2.nombre));
alu2.apellido= malloc(sizeof(alu2.apellido));
alu2.fecha= malloc(sizeof(alu2.fecha));
alu2.legajo= malloc(sizeof(alu2.legajo));
alu2.tipDoc= malloc(sizeof(alu2.tipDoc));

alu2=alu;

printf("El nombre del alu es: %s, el de alu2 es: %s\n",alu.nombre,alu2.nombre);
printf("El apellido del alu es: %s, el de alu2 es: %s\n",alu.apellido,alu2.apellido);
printf("La fecha del alu es: %s, el de alu2 es: %s\n",alu.fecha,alu2.fecha);
printf("El legajo del alu es: %s, el de alu2 es: %s\n",alu.legajo,alu2.legajo);
printf("El tipo de documento del alu es: %s, el de alu2 es: %s\n",alu.tipDoc,alu2.tipDoc);
printf("El DNI del alu es: %d, el de alu2 es: %d\n\n\n",alu.DNI,alu2.DNI);

strcpy(alu.nombre,"Jose");

printf("El nombre del alu es: %s, el de alu2 es: %s\n",alu.nombre,alu2.nombre);
printf("El apellido del alu es: %s, el de alu2 es: %s\n",alu.apellido,alu2.apellido);
printf("La fecha del alu es: %s, el de alu2 es: %s\n",alu.fecha,alu2.fecha);
printf("El legajo del alu es: %s, el de alu2 es: %s\n",alu.legajo,alu2.legajo);
printf("El tipo de documento del alu es: %s, el de alu2 es: %s\n",alu.tipDoc,alu2.tipDoc);
printf("El DNI del alu es: %d, el de alu2 es: %d\n",alu.DNI,alu2.DNI);

return 0;
}
#34
Bueno, mi problema es el siguiente:
Desde que empecé con C, el profesor me recomendó usar Linux.
El tema es que SIEMPRE que uso punteros, y toco la memoria, cuando compilo me sale "Violación de segmento"...

El profesor me dijo "El problema no es Linux, el problema es el programador" ¬¬

En fin, no encuentro ayuda, sé que estoy haciendo algo mal, pero no sé qué... Sé que Linux no te deja tocar la memoria como si lo hace Windows (el cual no me genera problema con esto)...

En fin, acá dejo un código que justo estaba haciendo hoy, es muy simple, compila excelente, pero dice el famoso "violación de segmento"...

#include <stdio.h>
#include <string.h>
#include <stdlib.h>

typedef struct {
char *nombre;
char *apellido;
char *fecha;
char *legajo;
char *tipDoc;
int DNI;
}Alumno;

int main(){
Alumno alu,alu2;
malloc(sizeof(alu.nombre));
malloc(sizeof(alu.apellido));
malloc(sizeof(alu.fecha));
malloc(sizeof(alu.legajo));
malloc(sizeof(alu.tipDoc));
strcpy(alu.nombre,"Esteban");
strcpy(alu.apellido,"Gonzalez");
strcpy(alu.fecha,"02111991");
strcpy(alu.legajo,"10662/3");
strcpy(alu.tipDoc,"DNI");
alu.DNI=36363023;

malloc(sizeof(alu2.nombre));
malloc(sizeof(alu2.apellido));
malloc(sizeof(alu2.fecha));
malloc(sizeof(alu2.legajo));
malloc(sizeof(alu2.tipDoc));

alu2=alu;

printf("El nombre del alu es: %s, el de alu2 es: %s\n",alu.nombre,alu2.nombre);
printf("El apellido del alu es: %s, el de alu2 es: %s\n",alu.apellido,alu2.apellido);
printf("La fecha del alu es: %s, el de alu2 es: %s\n",alu.fecha,alu2.fecha);
printf("El legajo del alu es: %s, el de alu2 es: %s\n",alu.legajo,alu2.legajo);
printf("El tipo de documento del alu es: %s, el de alu2 es: %s\n",alu.tipDoc,alu2.tipDoc);
printf("El DNI del alu es: %d, el de alu2 es: %d\n\n\n",alu.DNI,alu2.DNI);

strcpy(alu.nombre,"Jose");

printf("El nombre del alu es: %s, el de alu2 es: %s\n",alu.nombre,alu2.nombre);
printf("El apellido del alu es: %s, el de alu2 es: %s\n",alu.apellido,alu2.apellido);
printf("La fecha del alu es: %s, el de alu2 es: %s\n",alu.fecha,alu2.fecha);
printf("El legajo del alu es: %s, el de alu2 es: %s\n",alu.legajo,alu2.legajo);
printf("El tipo de documento del alu es: %s, el de alu2 es: %s\n",alu.tipDoc,alu2.tipDoc);
printf("El DNI del alu es: %d, el de alu2 es: %d\n",alu.DNI,alu2.DNI);

return 0;
}



Gracias de antemano...
#35
Una pregunta... ¿Ya estás viendo archivos en C?, si es así, bueno, yo lo haría más o menos así (es bastante rebuscada la consigna a mi parecer).

DATOS DE ENTRADA:
Como bien dice, un archivo de datos con la relación de alumnos, en este caso sería un .txt con los datos, ya sea, nombre, apellido, DNI, edad y lo que le quieras poner.
Si no estás viendo archivos, sería un registro.

Lo de las aulas igual, en ese caso sería el aula y el color, ya sea un archivo o un registro.

SALIDA

Un diagrama se podría hacer de muchas formas.
Si vamos por el lado de los archivos, podrías generar un nuevo .txt que ordene las aulas con los alumnos (por su nombre y apellido) que eso cualquiera de nosotros nos podemos ubicar (poniéndonos en el lugar del alumno).
Si no es relacionado con los archivos, una buena estructura que es dinámica (ya que la cantidad de alumnos puede variar) podría ser una lista que vaya agregando alumnos en las aulas determinadas...
Un árbol podía ser otra (aunque esta no me convence mucho)... Un vector o matriz, la verdad, tenes un abanico grandísimo de posibilidades, es cuestión de que veas como te parece a vos...

Pero la verdad, si podes especificar un poco más, estaría bueno

Saluttes
#36
Si buscas por Internet, hay formas de modificar archivos .EXE que al abrirlos te aparece un cartel: "Tu máquina se reiniciará en X segundos"... Y si no presionas determinadas teclas, se reinicia...
Obvio, siempre tenes que ejecutar el .EXE a lo sumo que lo configures para que se inicie con la PC.

Es fácil de programar, con un archivo .TXT basta.

Buscá que lo encontrás enseguida.

Te digo esto porque según vos no sabes nada de programación, entonces no se puede pretender que salgas programando como los dioses.
Si te interesa aprender a programar, hay millones de libros para aprender, y empezas por lo básico y luego ya vas a poder mejorar...
Mientras tanto, hace esto :P

Saludos
#37
Generalmente, la estructura sería:

Hijos izquierdos: Menores a la raíz
Hijos derechos: Mayores o IGUALES a la raíz.

Por ende, lo que estás haciendo está perfecto.

Y acordate que la forma más eficiente de cargar los datos en un árbol binario es recursivamente (espero no confundirte) :P

¡Saludos!
#38
Según veo en el enunciado, habla de un "problema planteado"...
Desde mi punto de vista, me parece que antes de ese enunciado hay otra cosa que no pusiste, porque me parece medio inconcluso.

Por ahí le estoy pifiando, pero si es que tenes el enunciado más grande, ponelo...

¡Saludos!
#39
Foro Libre / Re: Pasion Futbolística :P
9 Julio 2011, 04:38 AM
Como mi nick indica, soy Tripero hasta la médula...

Aguante el Lobo platense carajoo