elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Únete al Grupo Steam elhacker.NET


  Mostrar Mensajes
Páginas: 1 ... 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 [94] 95 96 97 98 99 100 101 102
931  Programación / Programación C/C++ / Re: Ayuda, violación de segmento en: 2 Diciembre 2018, 12:01 pm
Tienes que poner los parámetros que le pasas a la función, claro.
932  Programación / Programación C/C++ / Re: Ayuda, violación de segmento en: 2 Diciembre 2018, 11:53 am
La función <pedirNombre()> dices que tiene argumentos de entrada pero en la implementación de la función no los tiene...
933  Foros Generales / Foro Libre / Re: ¿Para que sirve un ridiculo titulo Universitario? en: 1 Diciembre 2018, 16:10 pm
Yo estoy cursando el segundo año de ingeniería informática. Siempre me han gustado las matemáticas y los ordenadores así que yo tenía claro que quería estudiar esto. Ahora estoy pensando en dejar la carrera pero no por haberme equivocado de carrera sino porque creo que este sistema educativo no funciona.
Empecé la carrera porque quería saber sobre esto y encima iba a conseguir un título que es lo único que miran muchas empresas para darte trabajo. Pero la informática me gusta de verdad y es la universidad la que me está quitando las ganas de seguir.

Cada uno tendrá su experiencia personal pero desde luego la mía no es buena. En mi caso siento de verdad que la universidad (y en general todo el sistema educativo, al menos en mi país) te quita las ganas de aprender. Hay muchas personas que se quejan de profesores que ponen exámenes difíciles o de asignaturas a las que hay que dedicar mucho esfuerzo; sin embargo, a mí eso no me molesta. Yo no me quejo de un profesor que pone exámenes difíciles, lo hago de un profesor que no sabe o no quiere enseñar. Si no tienes ganas de enseñar deja tu puesto a alguien que sí quiera. El año pasado tuve un profesor que todo el mundo decía que era el peor de la universidad y para mí ha sido el mejor. Es cierto que sus exámenes eran difíciles, no servía con aprenderte la teoría de memoria y soltarla, tenías que entender lo que habías estudiado y saber aplicarlo (para mí eso es aprender y es lo que le molestaba a la mayoría).

Este año es muy diferente, vas a una clase de dos horas donde el profesor se limita a leer unas diapositivas creadas por otra persona hace 5 años o más, que luego podemos descargar. O nos mandan hacer prácticas también creadas hace años por otras personas; es decir, esfuerzo 0. No me gusta que me hagan perder el tiempo en clase para que me lean lo que me puedo leer yo en casa. Si voy a clase es para ver como el profesor explica cosas apoyándose en la presentación, no para que la lea sin añadir información y luego cuando preguntas algo te esquivan la pregunta y no te dejan aprender. Es por eso que no voy a clase, me descargo las presentaciones, las leo yo, y luego investigo por internet cuando quiero profundizar en un tema concreto (sé que lo que yo busque no va a entrar en el examen, pero esa es la diferencia entre querer aprender algo o sólo querer aprobar).

Mucha gente dirá que si no te gusta la carrera que la dejes y ya está, pero para los que nos encontramos en esta situación y valoramos las posibilidades que tenemos no es tan fácil. Yo ya llevo un tiempo pensando en dejarla y he estado pensando alternativas: la primera es seguir en una universidad a distancia donde se puede ser más autodidacta pero me da miedo equivocarme otra vez; otra es hacer cursos online de programación (no sé si tienen alguna validez a la hora de buscar trabajo y esto parecerá contradictorio al buscarle una utilidad laboral pero al final aunque quieras aprender algo, no se vive de la ilusión, hace falta trabajar).

Por eso para todos los que decís que si no te gusta la carrera que lo dejes y ya está poneos en nuestra piel, no es una decisión que puedas tomar a la ligera y menos viendo como está el mundo. Qué es mejor? Entrar en la universidad, perder tu personalidad crítica y aprender a asentir todo lo que te dicen los profesores o dejar la carrera, hacer lo que te gusta y no tener un título que pueda acreditar tu nivel de estudios?

La verdad es que yo empiezo a tener esperanzas en que cada vez más empresas dejen a un lado la importancia del título universitario, vale que sea algo a tener en cuenta y que te asegure un nivel pero también hay que darle importancia a otras cosas como la experiencia o el haber aprendido de una manera autodidacta (ya que para mí vale más que una persona sea capaz de aprender algo porque le gusta y de forma autodidacta y no de que alguien haya aprobado cuatro exámenes que si tu profesor te lo ha dado mascado te están acreditando unos conocimientos que no tienes). Y no estoy menospreciando la universidad, creo que se pueden aprender muchas cosas, pero si se hace bien y en la mayoría de sitios no se está haciendo bien. Pensad en todas las horas que habéis gastado en memorizar cosas y que ahora no os acordáis porque no lo habéis vuelto a utilizar en vuestra vida. Por qué tenemos que memorizarlo todo? Almacenar información es algo que ya puede hacer una máquina.

Y me alegra de verdad que una persona sin título universitario pueda demostrar que sabe tanto o más que una persona con título. Primero para que el mundo vea que el título universitario no lo es todo y podamos estudiar como más nos guste sin tanta preocupación y segundo para que la universidad se ponga las pilas y se esfuercen por cambiar a mejor. Respeto a quien quiera estudiar en la universidad pero eso no te hace superior frente a alguien que estudia de otra forma.

Para quien no haya tenido la suerte de ver este vídeo ya, aquí os lo dejo (también está en español por si alguien prefiere verlo así  ;D):
934  Programación / Programación C/C++ / Re: me ayudan a hacer esto en: 30 Noviembre 2018, 12:11 pm
Te ayudamos a hacerlo, pero no te lo vamos a hacer nosotros.
Piensa cómo podrías hacerlo y te diremos si estás en lo cierto o cómo corregirlo.
Además la entrada del programa entiendo que es desde un fichero :huh:
935  Sistemas Operativos / Windows / Re: Restaurar Windows 10 en: 30 Noviembre 2018, 02:47 am
Muchas gracias por la ayuda.
El tema de conservar mis archivos no me preocupa ya que antes de ponerme a trastear con los sistemas operativos paso todos mis archivos a un disco duro externo. Y siempre tengo esa copia a mano.
Lo que me preocupaba es que con mi ordenador viejos intenté restaurarlo usando la partición de recuperación y se me quedó pillado. Entonces lo que hice fue instalar ubuntu desde un usb que había preparado pero perdí el sistema de windows que tenía por aquel entonces. Por eso lo que quiero es estar seguro de que si vuelvo a tener un problema de ese estilo, podré recuperar el sistema operativo mediante el usb.
De todos modos en estas horas he preparado en un usb que tenía de 16GB una unidad de recuperación con la opción de hacer una copia de seguridad de los archivos del sistema, ya que no me dejaba crear una imagen del sistema en el usb.

Para dar por zandajo el tema, cuál es la diferencia entre la unidad de recuperación y la imagen del sistema? Y por qué la imagen del sistema no puedo guardarla en un usb?
936  Programación / Programación C/C++ / Re: necesito ayuda para reiniciar los valores tipo enteros en: 30 Noviembre 2018, 02:06 am
Primero, las funciones <funcion_s> como <gets_s> no son estándar. En compiladores GNU/Linux no funcionan. En su lugar te recomiendo usar <fgets> que permite pasar como parámetro el tamaño máximo.
Código
  1. char nombre[20];
  2. printf("Introduce nombre: ");
  3. fgets(nombre, 20, stdin);

Segundo, las llamadas al sistema <system> son muy pesadas. La mejor alternativa del <system("pause")> es <getchar()> en C y cin.get() en C++.

Tercero, no se puede usar <fflush> con la entrada estándar, su comportamiento no está definido.

Cuarto, haces 3 veces el mismo bucle el cual no está muy bien implementado para contar las vocales. Haz una función que haga eso y pásale distintos parámetros en cada llamada.
Código
  1. int contarVocales(char *palabra, int size){
  2.    int contadorVocales = 0;
  3.    for(int i = 0; i < size; i++)
  4.        if(palabra[i] == 'a' || palabra[i] == 'e' || palabra[i] == 'i' || palabra[i] == 'o' || palabra[i] == 'u')
  5.            contadorVocales++;
  6.    return contadorVocales;
  7. }
Tus bucles comparan con cada una de las vocales por separado y aunque coincida la 'a' siguen comparando con todas las demás vocales (lo cual es absurdo, si una letra es 'a' no va a ser 'e' también). Usando el operador || en cuanto una coincide se incrementa el contador y se salta el resto de comprobaciones.

Quinto, entiendo que quieres juntar el nombre con sus apellidos con un espacio entre medias. Luego lo imprimes todo junto pero al después imprimes cada caracter en orden inverso, por qué?

Sexto, entiendo también que quieras vaciar las cadenas de caracteres pero no uses 4 variables distintas si todas son iguales (una cadena vacía), usa la misma para todo.

Séptimo, no hagas una asignación de <w> con <if else>. Ese tipo de códigos se implementa así:
Código
  1. int w = 0;
  2. if(/*lo que sea*/)
  3.    w = 1;
Y no se utiliza el <else>.
Edit: Y en tu caso ni siquiera es necesario usar esa variable. Mete directamente la comparación de <strcmp> como condición para el <do while>. Además soy el único que se ha dado cuenta de que según el valor de la comparación le asignas el opuesto a <w>... :huh:. Es como si yo hiciese
Código
  1. int a = 0, b;
  2. if(a == 0)
  3.    b = 1;
  4. else
  5.    b = 0;
Es decir, un poco absurdo.

Octavo, te recomiendo usar las funciones en las que indicas el número de caracteres a tratar, por seguridad. En vez de <strcmp>, usar <strncmp>; en vez de <strcpy>, usar <strncpy>, etc.

Noveno, ese código es muy mejorable. Pero tampoco voy a matarme a darte un montón de consejos cuando si has llegado a leer hasta aquí es porque sólo te interesaba el décimo punto (por eso lo he dejado para el final, para asegurarme de que no has ignorado todas mis recomendaciones :silbar:)

Décimo, quieres reiniciar el número de vocales? Pues pon los contadores a 0 en cada repetición del programa, es decir, dentro del <do while>. Tan simple como eso. Suerte. :-X
937  Sistemas Operativos / Windows / Restaurar Windows 10 en: 29 Noviembre 2018, 23:17 pm
Estoy usando un laptop nuevo que tiene Windows 10 preinstalado y posiblemente más adelante instale alguna distribución GNU/Linux. Entonces para prevenir he pensado en crear una unidad usb con la que poder recuperar el sistema tal y como está ahora. Me he puesto a investigar ya que es algo que nunca he hecho y me he encontrado con varias opciones; una de ellas es crear una unidad de recuperación (que por lo que he entendido sirve para poder arrancar en caso de error del sistema operativo), también he leído que si al hacer la unidad de recuperación seleccionas la opción de "crear copia de seguridad de los archivos del sistema en la unidad de recuperación" se puede volver a instalar el sistema operativo a partir de esa copia. En cambio en otros sitios he leído que lo que hay que hacer es crear una imagen del sistema (pero para esta opción no me deja seleccionar el usb).

Mi objetivo es tener un usb desde el que poder reinstalar el sistema operativo de Windows tal y como está ahora. El problema es que no sé si para lo que yo quiero conseguir tengo que crear una unidad de recuperación o una imagen del sistema.
Gracias a quien pueda guiarme un poco en esto. :-X

PD: Si creo el usb y después reinstalo el sistema, mantengo la licencia de Windows?
938  Programación / Programación C/C++ / Re: Como validar un email para guardar en un archivo binario en: 29 Noviembre 2018, 09:40 am
El cuerpo del <if> está vacío, es decir que no sé cual es el propósito de la función. Además de eso declaras:
Código
  1. unsigned char Validar;
  2. static const char *Valida = ".com";
Y no veo el uso de ninguna de las dos variables en toda la  función.

Si lo que no entiendes del código es el uso de la función <strchr> puedes buscar por internet y hay muchas páginas donde te explican lo que hace esa función. La función <strchr(cadena, caracter)> devuelve un puntero a la posición de <cadena> donde aparece <caracter> y si no aparece devuelve el final de cadena. Entonces en ese código compruebas que correo tenga '@'.

Tampoco sé a que llamas tú validar un correo. Entonces eres tú quien tiene que decidir que cosas tiene que tener un correo para que sea válido e implementarlas en una función.
939  Programación / Programación C/C++ / Re: Implementación de arreglo de 2-D como función en: 28 Noviembre 2018, 05:05 am
Una opción es que uses memoria dinámica y entonces puedes pasar como parámetro un doble puntero. Sin embargo si no has dado memoria dinámica lo que se suele hacer para casos de estos es declarar una matriz más grande de lo necesaria.
Código
  1. const int TAM = 100;
  2.  
  3. void mostrarMatriz(int[][TAM], int, int);
  4.  
  5. int main(){
  6.    int matriz[TAM][TAM];
  7.    int fila = 10, col = 10;
  8.  
  9.    mostrarMatriz(matriz, fila, col);
  10. }
  11.  
  12. void mostrarMatriz(int matriz[][TAM], int fila, int col){
  13.    for(int i = 0; i < fila; i++){
  14.        for(int j = 0; j < col; j++)
  15.            printf("%d  ", matriz[i][j]);
  16.        printf("\n");
  17.    }
  18. }

Es un desperdicio de memoria pero recuerdo que cuando yo estudiaba los temas de arrays n-dimensionales sin memoria dinámica siempre se hacía así. Creas un tamaño inicial más grande de lo necesario y con otra u otras variables indicas cuál es la parte útil.

Espero que te sirva.

PD: Si prefieres usar memoria dinámica y quieres que te ayude con eso coméntamelo.
940  Programación / Programación C/C++ / Re: Resolver C++ en: 27 Noviembre 2018, 19:23 pm
Como comprenderás el foro no está para que te hagamos la tarea.
Te recomiendo que comentes lo que entiendes tú de ese código y te podremos ayudar a entenderlo y resolverlo.
Páginas: 1 ... 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 [94] 95 96 97 98 99 100 101 102
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines