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

 

 


Tema destacado: Entrar al Canal Oficial Telegram de elhacker.net


  Mostrar Temas
Páginas: 1 2 3 4 5 6 7 8 9 [10]
91  Programación / Programación C/C++ / Invertir un arreglo de enteros en lenguaje C.- en: 14 Enero 2014, 22:00 pm
Hola.
Esto debe ser sencillo pero no logro resolverlo, el caso es que no  me acepta esta línea de código.-

Código
  1. //for(i=longitud; i>=0; i--,j++)

Me da el siguiente error, no al compilar sino al ejecutar.-



Código
  1. #include <stdio.h>
  2. #include <string.h>
  3.  
  4. int main(void){
  5. unsigned int enteros[]={15,12,28,18,05,33,21},i=0, longitud=0, copia[7], j=0;
  6. longitud = sizeof enteros / sizeof *enteros;
  7.  
  8. printf("\n Original....:");
  9. for(i=0; i<longitud; i++){
  10. printf("%d ", enteros[i]);
  11. }
  12.  
  13. //for(i=longitud; i>=0; i--,j++){
  14. for(i=longitud; i>0; i--,j++){
  15. copia[j] = enteros[i];
  16. }
  17.  
  18. printf("\n\n Invertido...:");
  19. for(i=0; i<longitud; i++){
  20. printf("%d ", copia[i]);
  21. }
  22.  
  23. return 0;
  24. }

Bueno espero de vuestra ayuda.-       
Saludos.
92  Programación / Programación C/C++ / Limpieza de buffer de teclado en lenguaje C. en: 11 Enero 2014, 18:16 pm
Hola.
Cuando ingreso más de 3 cifras todo funciona a la perfección, pero si ingreso menos de 4 el programa se queda detenido en el bucle while de limpieza de buffer de teclado, es como cuando tiene algo para leer (más de 3 cifras) todo funciona Ok .-

Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. int main(void){
  5. unsigned int ok=0, ch=0, longitud=0;
  6. char numeroChar[7] = "";
  7.  
  8. do{
  9. system("cls");
  10. printf("\n\n Ingrese un entero....:");
  11. fgets(numeroChar, 5, stdin);
  12. longitud = strlen(numeroChar);
  13. while((ch = getchar()) != '\n');
  14. numeroChar[longitud-1] = '\0';
  15. printf("\n\n Ingresaste..: %s   -----> longitud = %d", numeroChar, longitud);
  16. printf("\n\n 0 para continuar otro para salir....:");
  17. scanf("%d" , &ok);
  18. while((ch = getchar()) != '\n');
  19. }while(ok==0);
  20.  
  21. return 0;
  22. }
   

Bueno espero que me ayuden porque hace 2 días que estoy googleando y practicando y no logro la solución y por favor un poco de teoría del porqué.-       

Saludos.

93  Programación / Programación C/C++ / Pasar de cadena(char) a entero(int) sin sobrepasar el máximo permitido. en: 6 Enero 2014, 21:45 pm
Hola.-
Les dejo un pequeño programa que luego voy a seguir completando, lo que quiero saber es si se puede antes de convertir la cadena a entero verificar si el número ingresado sobrepasa el máximo permitido por el tipo int.-

Código
  1. #include <stdio.h>
  2. #include <limits.h>
  3. #include <stdlib.h>
  4.  
  5. int main(){
  6. char numero[10] = "";
  7. int ok=0, i=0;
  8.  
  9. do{
  10. system("CLS");
  11. ok=0;
  12. printf("\n Introduce el numero que deseas convertir a binario\n maximo [%d]...:", INT_MAX);
  13. fgets(numero, 10, stdin);
  14. numero[strlen(numero)-1]='\0';
  15.  
  16. for(i=0;numero[i] != '\0'; i++){
  17. if(numero[i] <=47 || numero[i] >=58){
  18. ok=1;
  19. printf("\n Solo debe ingresar numeros, Pulse una tecla para intentarlo nuevamente..."); getchar();
  20. }
  21. }
  22. }while(ok == 1);
  23.  
  24. printf("\n %s", numero);
  25. return 0;
  26. }

Bueno es todo.-
Saludos.
Páginas: 1 2 3 4 5 6 7 8 9 [10]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines