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

 

 


Tema destacado: (TUTORIAL) Aprende a emular Sentinel Dongle By Yapis


  Mostrar Mensajes
Páginas: 1 2 3 4 [5] 6 7 8 9 10 11 12 13 14 15
41  Programación / Programación C/C++ / Re: Establecer el estado de un determinado bit Encendido/Apagado [C] en: 16 Febrero 2015, 22:48 pm
No conozco el tema me puedes dar mas informacion para ayudarte

Hola crack81.-
En primer lugar gracias por ocuparte, te dejo un ej.

312 en decimal ==> 100111000 en binario.-
Como puedo hacer para mostrar el estado del bits 5 en este caso encendido.-
Espero  que ahora puedas ayudarme.-

Saludos.
Daniel
42  Programación / Programación C/C++ / Establecer el estado de un determinado bit Encendido/Apagado [C] en: 16 Febrero 2015, 22:07 pm
Hola gente.-
El caso es que dado un número ingresado por teclado, y la posición del bit que se desea saber el estado, mostrar Encendido/Apagado, practique y busque información en la web pero no pude dar con la solución.-
Lo que realmente me complica es el patrón para transformar por ej. Si el ingreso  de la posición es 5 la debo transformar a 16 para establecer la máscara, pero no lo encuentro, tal vez esté errado en el concepto, no sé.- 



Código
  1. #include <stdio.h>
  2.  
  3. int main(void){
  4. unsigned int numero, mask, ch;
  5.  
  6. printf("\n\n Ingrese un entero sin signo...............:");
  7. scanf("%d", &numero);
  8. while ((ch = getchar()) != EOF && ch != '\n');
  9.  
  10. printf("\n\n Indique que bits desea saber el estado....:");
  11. scanf("%d", &mask);
  12. while ((ch = getchar()) != EOF && ch != '\n');
  13.  
  14. mask <<= 2;
  15.  
  16. printf(numero & mask ? "\n Encendido" : "\n Apagado");
  17.  
  18. return 0;
  19. }

Como siempre muchas gracias por el tiempo que le dediquen.-   

Saludos.
Daniel
43  Programación / Programación C/C++ / Re: De decimal a binario sumando sólo los bits encendidos [C]. en: 15 Febrero 2015, 18:24 pm
Tenías toda la razón, como esto te lo copié de un post (mío) que si mal no recuerdo se llamaba validar ingreso de datos en c no le di más vueltas al asunto y creí que debía emplearlo siempre.-
De cualquier manera dejo la foto del código que estoy finalizando con los apuntes complementarios para luego repasarlos.-



Saludos.
Daniel
44  Programación / Programación C/C++ / Re: De decimal a binario sumando sólo los bits encendidos [C]. en: 15 Febrero 2015, 14:04 pm
Hola a todos.
Gracias a los cuatro por la ayuda que me brindan.-
Adopte el while como me sugirieron, luego coloque la línea de código de Blaster (que es similar a la de ivancea96) y todo funciona.-
BlackZeroX (Astaroth), no es mi fuerte el inglés.-

Citar
* No es necesario comparar el valor leído contra INT_MAX ya que no hay forma de que sea mayor que este, esa comparación la debes eliminar.
     
Esta línea no me cierra, si yo no efectuó esa comprobación el resultado es incorrecto.-
Por último y para que no piensen que estoy desaparecido escribí esto, pero lo que le sigue en importancia para mí no lo pongo todavía porque ni se me antoja como preguntarlo, ya me caerá la ficha y además quiero practicar un poco para ver si lo logro.-
 
Saludos.
Daniel
45  Programación / Programación C/C++ / De decimal a binario sumando sólo los bits encendidos [C]. en: 14 Febrero 2015, 18:05 pm
Hola a todos.
Nuevamente con alguna duda y solicitando ayuda.-
La duda es sobre cómo establecer  el valor correcto de la variable bits, si bien practicando un poco tal vez lograría que si por ej. El ingreso es:
2147483648 en binario  10000000000000000000000000000000
Obtendría el resultado esperado pero no me quedaría claro por qué establecí dicho valor.-   
Me podrían decir el criterio que debo utilizar para establecer el valor correcto en la variable bits.-

Código
  1. //Programa que convierte un número entero sin signo a binario.
  2. #include <stdio.h>
  3. #include <windows.h>
  4. #include <limits.h>
  5.  
  6. void ingreso();
  7. void decimalBinario(int numero);
  8.  
  9. int main(void){
  10. ingreso();
  11.  
  12. return 0;
  13. }
  14.  
  15. void ingreso(){
  16. int ingreso, ch=0, ok=0;
  17.  
  18. do{
  19. system("cls");
  20. printf("\n\n Ingrese un entero sin signo en el rango de 1 a %d...: ", INT_MAX);
  21. ok = scanf("%d", &ingreso) == 1 && ingreso > 0 && ingreso <= INT_MAX;
  22. while ((ch = getchar()) != EOF && ch != '\n');
  23. }while(!ok);
  24.  
  25. decimalBinario(ingreso);
  26. }
  27.  
  28. void decimalBinario(int numero){
  29. int bits=64, i, entero=0;
  30.  
  31. printf("\n\n binario ");
  32. for(i=0; bits > 0; i++){
  33. if(numero & bits){
  34. printf("1");
  35. entero += bits;
  36. }
  37. else{
  38. printf("0");
  39. }
  40. bits /=2;
  41. }
  42. printf(" ==> decimal %d\n\n", entero);
  43. }
  44.  
Saludos.
Daniel
46  Programación / Programación C/C++ / Re: Array de estructura (struct) typedef y punteros[C]. en: 12 Febrero 2015, 13:55 pm
Hola rir3760.
Citar
……de Blaster, por favor relee el tema con atención.


 :) :) :)
Tienes toda la razón, en definitiva se hizo un poco largo, pero realmente he aprendido mucho pero mucho con esto.- ;-) ;-) ;-)
Muchas gracias a todos por el tiempo [Solucionado].- 

Saludos.
Daniel

47  Programación / Programación C/C++ / Re: Array de estructura (struct) typedef y punteros[C]. en: 11 Febrero 2015, 19:06 pm
Hola rir3760.
Me queda una duda, el array reg cuando está dentro de la función ingreso ¿no es un puntero al primer elemento del arreglo? y si es así ¿porque no puedo utilizar el operador flecha (->)? y si me acepta el operador punto (.).-

Código
  1. #include <stdio.h>
  2.  
  3. typedef struct{
  4. int orden;
  5. int celular;
  6. char nombre[30];
  7. char apellido[30];
  8. char calle[30];
  9. char ciudad[30];
  10. char correo[50];
  11. }registro;
  12.  
  13. void ingreso(registro *reg, size_t num_regs);
  14.  
  15. int main(void){
  16. registro reg[10];
  17. ingreso(reg, sizeof reg / sizeof reg[0]);
  18.  
  19. return 0;
  20. }
  21.  
  22. void ingreso(registro *reg, size_t num_regs){
  23. size_t i;
  24.  
  25. for (i = 0; i < num_regs; i++){
  26.        reg[i].orden = i;
  27. printf("\n orden = %d", reg[i].orden);
  28. }
  29. }
  30.  

Saludos.
Daniel
48  Programación / Programación C/C++ / Re: Array de estructura (struct) typedef y punteros[C]. en: 10 Febrero 2015, 22:34 pm
Hola a todos.
Espero que no me odien por tanta molestias, pero prefiero que me envíen algún mal pensamiento antes que quedarme con alguna duda.-
Este programa es para que me digan con teoría que le estoy pasando a la función.-

Código
  1. #include <stdio.h>
  2.  
  3. typedef struct{
  4. int orden, celular;
  5. char nombre[30], apellido[30], calle[30], ciudad[30], correo[50];
  6. }agenda[10];
  7.  
  8. void ingreso(agenda *ptrContactos);
  9.  
  10. int main(void){
  11. agenda contactos;
  12. ingreso(&contactos);
  13.  
  14.  
  15. return 0;
  16. }
  17.  
  18. void ingreso(agenda *ptrContactos){
  19. int bucle = 0, cont = 1;
  20.  
  21. do{
  22. (*(*ptrContactos + cont)).orden = cont;
  23. printf("\n\n orden.....................: = %d", (*(*ptrContactos + cont)).orden);
  24.  
  25. cont++;
  26. }while(bucle >= 0 && cont <= 10);
  27. }

Este es para que vean que no pretendo que me den todo hecho, me desconecté de internet, cerré la ventana con el manual y lo logré sin ayuda, no es gran cosa pero me da cierta seguridad.-

Código
  1. #include <stdio.h>
  2.  
  3. typedef struct{
  4. int dia, mes, año;
  5. }_fecha;
  6.  
  7. void funcPuntero(_fecha *ptr);
  8.  
  9. int main(void){
  10. _fecha fecha, *ptrFecha;
  11.  
  12. fecha.dia = 10;
  13. fecha.mes = 2;
  14. fecha.año = 2015;
  15.  
  16. printf("\n hoy es......: %d/%d/%d", fecha.dia, fecha.mes, fecha.año);
  17.  
  18. ptrFecha = &fecha;
  19.  
  20. ptrFecha->dia = 11;
  21. ptrFecha->mes = 3;
  22. ptrFecha->año = 2016;
  23.  
  24. printf("\n otra fecha..: %d/%d/%d", ptrFecha->dia, ptrFecha->mes, ptrFecha->año);
  25.  
  26. funcPuntero(&fecha);
  27. printf("\n hoy es......: %d/%d/%d", ptrFecha->dia, ptrFecha->mes, ptrFecha->año);
  28.  
  29. return 0;
  30. }
  31.  
  32. void funcPuntero(_fecha *ptr){
  33. ptr->dia = 10;
  34. ptr->mes = 2;
  35. ptr->año = 2015;
  36. }

Bueno, en definitiva todo tiene que ver con el primer programa es decir modificar los 7 campos del  registro en la función ingreso pasándole un puntero a la estructura agenda pero no copiando todo el array a la función sino tan sólo un puntero al primer elemento.-
Gente mil disculpas si ya me dieron la solución a esto pero estoy tan embotado que tal vez no me dí cuenta.-

Saludos.
Daniel
49  Programación / Programación C/C++ / Re: Array de estructura (struct) typedef y punteros[C]. en: 9 Febrero 2015, 18:43 pm
Hola a todos.
Eferion,  me parece muy interesante lo de puntero doble, etc. Yo creí que sabía bastante sobre punteros pero veo que tengo que repasarlos, si estaríamos sentados los dos frente a la misma compu te efectuaría una pregunta, pero no es este el caso, seguramente consultando en la web voy a obtener la respuesta a mi duda.-
_Enko, 2 aclaraciones en cuanto a tu código, la primera es que todavía no llegue a estudiar memoria dinámica y la restante es que el programa se va a extender bastante porque al pedir el ingreso de los datos voy a validar que sean correctos, por lo tanto tengo que utilizar funciones, no debo hacerlo todo dentro de la función principal (main).-
En cuanto a:

Citar
Pero vale la pena  complicar la sintaxis?
…………………………………….
…………………………………….
Desde mi punto de vista no merece la pena.
Les aclaro mi punto de vista y el criterio del porqué, yo no puedo estar seguro de hacer sólo programas para terceros, que pasa si me trajeran para corregir o modificar programas hechos por otros, en estos casos puedo encontrarme con una gran diversidad de formas de programar y según me dicta mi sentido común debo tener el mayor conocimiento posible, este es el único motivo por el cual este programa(o todos) los hago un tanto complicado.-

Para finalizar, espero alguna respuesta en cuanto a mi planteo para saber cuál es el criterio utilizados por Uds. Al estudiar.

Saludos.
Daniel
50  Programación / Programación C/C++ / Re: Array de estructura (struct) typedef y punteros[C]. en: 9 Febrero 2015, 15:44 pm
Hola gente.
Una vez más acudo a Uds. Para ver si me dan una mano con este nuevo inconveniente.-
La línea que figura como comentario me da error, estuve consultando en internet y no logro dar con la solución-

Código
  1. #include <stdio.h>
  2.  
  3. typedef struct{
  4. int orden, celular;
  5. char nombre[30], apellido[30], calle[30], ciudad[30], correo[50];
  6. }agenda[10];
  7.  
  8. void ingreso(agenda *ptrContactos);
  9.  
  10. int main(void){
  11. agenda contactos;
  12. ingreso(&contactos);
  13.  
  14.  
  15. return 0;
  16. }
  17.  
  18. void ingreso(agenda *ptrContactos){
  19. (*ptrContactos + 3)->orden = 5;
  20.    //(*(ptrContactos)).orden = 5;
  21.  
  22. printf("\n\n %d", (*ptrContactos + 3)->orden);
  23. }


Citar
C:\ProgramasNotepad\Pruebas.c: In function 'ingreso':
C:\ProgramasNotepad\Pruebas.c:21:22: error: request for member 'orden' in something not a structure or union
     (*(ptrContactos)).orden = 3;

Saludos.
Daniel
Páginas: 1 2 3 4 [5] 6 7 8 9 10 11 12 13 14 15
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines