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

 

 


Tema destacado: Curso de javascript por TickTack


  Mostrar Mensajes
Páginas: 1 2 3 4 5 [6] 7 8 9 10 11 12 13 14 15
51  Programación / Programación C/C++ / Re: Array de estructura (struct) typedef y punteros[C]. en: 8 Febrero 2015, 15:54 pm
Hola Blaster.
Muchas gracias, funciona a la perfección, el tema estaba en utilizar correctamente la aritmética de punteros.-

Saludos.
Daniel
52  Programación / Programación C/C++ / Re: Array de estructura (struct) typedef y punteros[C]. en: 8 Febrero 2015, 14:47 pm
Hola ivancea96.
Gracias por ocuparte y por el consejo, voy a dejar por el momento lo de typedef, con respecto a la otra duda pude avanzar un poco, solo que me da el siguiente error (expongo a continuación) que por más que modifico el programa no logro solucionar.-

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

C:\ProgramasNotepad\Pruebas.c: In function 'main':
C:\ProgramasNotepad\Pruebas.c:12:15: error: invalid operands to binary + (have 'struct agenda' and 'int')
  (*ptrContacto+3).orden = 3;


Espero puedas ayudarme.-

Saludos.
Daniel
53  Programación / Programación C/C++ / Array de estructura (struct) typedef y punteros[C]. en: 7 Febrero 2015, 22:11 pm
Hola a todos.
Estoy estudiando estructuras y voy a programar una agenda, al programa le falta todo pero no quiero seguir sin aprender las dos cosas por las que doy de alta este post.-
La primera como puedo insertar typedef y la otra, como hago para declarar la estructura para que se le pueda ingresar de o a 10 contactos (unaAgenda [10]).-
Espero se entienda, estimo que si.-

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

Saludos.
Daniel
54  Programación / Programación C/C++ / Re: Función esfechavalida que valide de forma separada en: 3 Febrero 2015, 14:52 pm
Hola a todos.
Citar
…..aunque todos sabemos que los foros no son especialmente buenos a la hora de transmitir emociones salvo que te dediques a poner veinte emoticonos por cada palabra escrita.
eferion, sabias palabras, que buen resumen de lo que me ha ocurrido tantas veces en este y otros foros, por Dios que difícil se torna esta comunicación de los foros-
Eternal, borra este pos cuando lo desees y mil disculpas Orubatosu pero me sentí tan identificado con las palabras de eferion que no pude resistir.

Saludos.
Pino1952
55  Programación / Programación C/C++ / Re: Transformar el monto numérico del cheque a palabras [C]. en: 18 Enero 2015, 12:41 pm
Hola crack81.
Muchas gracias por ocuparte, como no quería postear todo el enunciado omití lo del importe máximo, que es 99.999,99.-
Si te parece muy tedioso sólo dame algunas pistas.-

Saludos.
Daniel
56  Programación / Programación C/C++ / Transformar el monto numérico del cheque a palabras [C]. en: 17 Enero 2015, 18:14 pm
Hola a todos.
Bueno, el enunciado del manual con el que estoy estudiando c me pedía:

Citar
*99. 87
123456789
Escriba un programa que introduzca el monto a imprimir en el cheque y después imprima, si es necesario, el monto en formato protegido con asteriscos al principio. Suponga un total de nueve espacios disponibles para la impresión del monto.
 
lo pude lograr, pero el siguiente me trabe y realmente no sé cómo continuar, espero de esas mentes prodigiosas (que abundan por aquí) que me pongan algún ejemplo para poder finalizar con este tema.- :rolleyes: :rolleyes:   
Citar
Escriba un programa que introduzca un monto numérico de cheque y que escriba el equivalente en palabras de dicho monto, Por ejemplo, el monto 112.34 se debe escribir como
CIENTO DOCE y 34/100

Código
  1. #include <stdio.h>
  2. #include <string.h>
  3.  
  4. #define MAX 10
  5.  
  6. void completar(char cheque[]);
  7. void proteger(char cheque[]);
  8. void numeroAletra(char cheque[]);
  9.  
  10. int main(void) {
  11. char cheque[MAX];
  12.  
  13. printf("\n Ingrese el monto del cheque...:");
  14. fgets(cheque, sizeof(cheque), stdin);
  15. completar(cheque);
  16. proteger(cheque);
  17. //numeroAletra(cheque);
  18.    printf("\n\n Pulse [Enter] para finalizar...");
  19.    getchar();
  20.    return 0;
  21. }
  22.  
  23. void completar(char cheque[]){
  24. char *p=NULL;
  25. int ch;
  26.  
  27. if((p=strchr(cheque, '\n'))){
  28. *p='\0';
  29. }
  30. else{
  31. while((ch = getchar()) !='\n' && ch!=EOF);
  32. }
  33. }
  34.  
  35. void proteger(char cheque[]){
  36. int longitud = strlen(cheque), max = MAX-1;
  37. cheque[max] = '\0';
  38. for(max--; max >= 0; max--){
  39. if(longitud > 0){
  40. cheque[max] = cheque[longitud-1];
  41. }
  42. else{
  43. cheque[max] = '*';
  44. }
  45. longitud--;
  46. }
  47. printf("\n El monto ingresado = %s", cheque);
  48. }
  49.  
  50. void numeroAletra(char cheque[]){
  51. char *unidad[] = {"Uno", "dos", "tres", "cuatro", "cinco", "seis", "siete", "ocho", "nueve"};
  52. char *decena[] = {"diez", "veinte", "treinta", "cuarenta", "cincuenta", "sescenta", "setenta", "ochenta", "noventa"};
  53. char *centena[] = {"cien", "dosciento", "treciento", "cuatrociento", "quiniento", "seiciento", "seteciento",
  54. "ochocientos", "novecientos"};
  55. char *especiales[] = {"Un", "Mil"};
  56.  
  57. }
  58.  
  59.  
Saludos y desde ya muchas gracias.-
Daniel
57  Programación / Programación C/C++ / Re: Ordenar alfabéticamente array de punteros a char (lenguaje C) en: 6 Enero 2015, 18:31 pm
Hola crack81.
Citar
saludos si tienes alguna duda o cuestionamiento hazmelo saber saludos..
No te das una idea lo que ayuda esa frase a alguien que como yo (63 años) que está tan sólo en este bello camino del aprendizaje de la programación, espero que como tantos otros estés siempre allí para evacuar mis dudas.-
En cuanto al código, perfecto con eso ya me di cuenta como pasar un array de punteros a función, sólo una cosita, ¿qué diferencia hay en hacer las funciones con prototipo y sin prototipo?.-
rir3760, un párrafo aparte para tús aportes, ya son innumerables los códigos distintos que te e copiado, lo tuyo es genial.- ;-) ;-) ;-)
Por último mil disculpas por ser tan poco pragmático en lo que escribí,  no siempre se puede aplicar la fórmula perfecta, 50% mente y 50% corazón, esta vez fue 20 y 80.-     
 
Saludos.
Daniel
58  Programación / Programación C/C++ / Ordenar alfabéticamente array de punteros a char (lenguaje C) en: 5 Enero 2015, 23:52 pm
Hola a todos.
El programa que dejo a continuación funciona correctamente, lo que no logro hacer son 2 cosas que desearía me enseñen a concretarlas.-
Quiero en primer lugar eliminar esta línea.

Código
  1. #define ELEMENTOS 15


Como debo hacer con sizeof para saber cuántos punteros tengo declarado en el array de punteros provincias, me funciona con char, int, pero no con array de punteros.-
Lo otro que no puedo lograr es pasar el array provincias a una función, para que se entienda quiero hacer lo mismo con 2 funciones, una que se llame mostrar y la otra ordenar, en este caso me interesaría más que me escriban un poco de teoría que la sintaxis (si es mucho pedir, mil disculpas).-


Código
  1. #include <stdio.h>
  2. #include <string.h>
  3.  
  4. #define ELEMENTOS 15
  5.  
  6. int main(void){
  7. char *provincias[ELEMENTOS] = {"Tucuman", "Santa Fe", "Buenos Aires", "Rio Negro", "Neuquen",
  8. "Misiones", "Catamarca", "Santa Cruz", "Jujuy", "Chaco",
  9. "Formosa", "Corrientes", "Salta", "La Rioja", "Cordoba"};
  10. char *temp;
  11. int i, j;
  12.  
  13. printf("\n provincias Argentinas desordenadas\n\n" );
  14. for(i=0; i<ELEMENTOS; i++){
  15. printf(" %s\n", provincias[i]);
  16. }
  17.  
  18. for(i=0; i<ELEMENTOS-1; i++){
  19. for(j=i+1; j<ELEMENTOS; j++){
  20. if(strcmp(provincias[i], provincias[j]) > 0){
  21. temp = provincias[i];
  22. provincias[i] = provincias[j];
  23. provincias[j] = temp;
  24. }
  25. }
  26. }
  27.  
  28. printf("\n Ordenadas alfabeticamente\n\n" );
  29. for(i=0; i<ELEMENTOS; i++){
  30. printf(" %s\n", provincias[i]);
  31. }
  32.  
  33. printf("\n Pulse [Enter] para finalizar..."); getchar();
  34. return 0;
  35. }

Saludos.
Daniel
59  Programación / Programación C/C++ / Re: [C] Llamar a un array de punteros a caracteres en un bucle. en: 4 Enero 2015, 18:15 pm
Hola.
Me vino de perillas tu aclaración, si bien ya tengo incorporado lo de limpiar el buffer de entrada (gracias pero muchas gracias a rir3760) que además valida que el ingreso sea sin errores, en este caso lo olvide e iba a hacer una validación porque al ingresar por ejemplo 4b el programa finalizaba abruptamente, con la limpieza del buffer ello no ocurre.-        

Saludos.
Daniel
60  Programación / Programación C/C++ / Re: [C] Llamar a un array de punteros a caracteres en un bucle. en: 3 Enero 2015, 23:22 pm
Hola yoel_alejandro.
Muchas gracias por ocuparte del paso del programa de c++ a c, funciona a la perfección.-
Igual yo dejo mi versión.-  

Código
  1. #include <stdio.h>
  2. #include <string.h>
  3. #include <ctype.h>
  4.  
  5. int main(int argc,char **argv){
  6. int (*pFun[3])(int ) = {islower, isupper, isdigit};
  7. char a,*mensaje[] = {"una letra minuscula", "una letra mayuscula", "un numero"};
  8. int i;
  9.  
  10. printf("\n Ingrese un caracter cualquiera [confirme con Enter]...:");
  11. a = getchar();
  12.  
  13. for(i=0; i<3; i++){
  14. if(pFun[i](a)){
  15. printf("\n Ingreso %s", mensaje[i]);
  16. }    
  17. }
  18.  
  19. printf("\n\n Pulse [Enter] para finalizar..."); getchar();getchar();
  20. return 0;
  21. }

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