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

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


  Mostrar Mensajes
Páginas: 1 ... 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 [97] 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 ... 132
961  Programación / Programación C/C++ / Re: Ayuda: con sustitución de funciones en: 6 Marzo 2013, 17:47 pm
Otra forma de implementarlo sin vectores. Gracias a la magia de los punteros:

Bueno, bueno ahí podríamos hablar de arrays asignados estáticamente o dinámicamente. Si declaro un puntero como *enteros puedo luego acceder a sus posiciones como
Código:
enteros[i]
, que es la forma clásica de un array. ;)

Por cierto, el valor cero para salir de la introducción de los datos impide que se pueda entrar ese valor.


Saluditos!. ... :rolleyes:
962  Programación / Programación C/C++ / Re: ¿Por qué no me compila este código con Dev-c++? en: 6 Marzo 2013, 17:32 pm
.........................................
¿Por qué el programa al ejecutarse dura medio segundo? No me da tiempo ni a ver lo que pone.
Un saludo y muchas gracias :D



Eso depende del compilador o en que esté basado éste. En concreto CodeBlocks, PellesC y otros introducen de forma automáticamente una parada antes de cerrarse, cosa que no sucede en otros como el vetusto y poco actualizado Dev.C++. En este último hay que poner una función al final para "pararlo". Mejor pasa de él.

Saluditos!. ....
963  Programación / Programación C/C++ / Re: ¿Por qué no me compila este código con Dev-c++? en: 6 Marzo 2013, 13:42 pm
Vaya estrés '-- llevo media mañana intentando un simple imprimir pantalla, tiene que ser algún error de Dev, pero nunca me ha pasado y lo uso en otro ordenador.
El código es el siguiente:
Código:
#include <iostream.h>
int main (void)
{
cout << “mostrar frase” << endl ;
return 0 ;
}


Para empezar, iostream no lleva .h, las comillas las tienes mal y te falto using namespace std para el cout:

Código
  1. #include <iostream>
  2. using namespace std;
  3. int main (void)
  4. {
  5.    cout << "mostrar frase" << endl ;
  6.    return 0 ;
  7. }
  8.  

Saluditos!. ...
964  Programación / Programación C/C++ / Re: Flotantes aleatorios en: 6 Marzo 2013, 11:08 am
...............................................................
En realidad [bs]e necesitan 4 valores aleatorios[/b]  .........................................., esto sirve para generar números aleatorios (de punto flotante), por eso el título..


No sé dónde me he perdido  :P pero por lo que entiendo tratas de generar números aleatorios en coma flotante y punto. ¿O es algo más?. Porque si sólo es eso con esto tiras bien:

Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <time.h>
  4. #define N   4
  5. int main() {
  6.    int i,n;
  7.    float n1[N],sig;
  8.    srand((unsigned) time(NULL));
  9.    for (i = 0; i < N; i++){
  10.            n = rand();
  11.            n1[i]=n/32767.;
  12.            sig = rand()%2;
  13.            if (sig==0)
  14.                n1[i]*=-1.;
  15.            printf("n1[%d]= %f\n",i, n1[i]);
  16.        }
  17.    return 0;
  18. }

Saluditos!, y ya me diras si la intención era otra. ...

P.D: Se me ha" escapado" en C, espero que no te importe.
965  Programación / Programación C/C++ / Re: Guardar cada línea de un fichero en una estructura en: 6 Marzo 2013, 10:14 am
...............................................................
La segunda donde se utiliza el valor de retorno de fgets:Es la correcta. Para seguirte pegando (por supuesto en buen plan): tienes un punto y coma cuando debería ser el paréntesis de cierre.


Pues se cierra:


Código
  1. while( fgets(estructura[i].nombre, 20, fichero)!= NULL)
  2.           i++;

Saluditos!. ...
966  Programación / Programación C/C++ / Re: Frecuencia en una serie numeria aleatoria en: 6 Marzo 2013, 09:31 am
Por ahí el muchacho quiso poner:

Código:
f[0]+=1;

lo cual incrementa en 1.. Pero le faltaba el '='  :rolleyes:



 ;-) ;-)Eso mismo me parece a mí en principio, aunque viendo el resto  de los mensajes del compilador:

Código:
|5|error: ':[b]:main' must return 'int'|[/b]
|In function 'int main()':|
|8|error: 'randomize' was not declared in this scope|
|13|error: 'random' was not declared in this scope|
|56|error: 'cout' was not declared in this scope|
|60|error: 'cout' was not declared in this scope|


* Los include está puestos tipo C, es decir ".h " , y no habría mayor problema  ... salvo el iostream, que no lo lleva y hace que el programa ni compile.


Código
  1. int arry[29],f[9];


* Cuando deberían ser. para contener 30 y 10:

Código
  1. int arry[30],f[10]={0};



 * Además el compilador "se queja" con el tipo void asignado a main pide int.

* Falta al menos


Código
  1. using namespace std;

* "Canta" con la función randomize, que si es de conio.h deberías cambiarla por la versión estandar del C: srand, así como random por rand y random(9) generaría números hasta 9 no incluido con lo que +1 daría nueve y no se llegaría nunca la case 10. Aunque supongo que el error está en que los quieres desde cero a nueve, ya que así están las condenaciones de los for.

* rand, en C al menos o se especificaría como "rand(9)"


Código
  1. srand()%9;

Aunque como los quieres incluyendo el diez y a partir de 1 sería:

Código
  1. 1+srand()%10

* getch() pertenece a la librería no estandar conio, que podría sustittuirse por otra estandar, como getchar () o cin.get().

* Los resultados de frecuencia serían" basura", ya que no están inicializados.

* Como comento rir el switch se puede sustituir y sequedaríaría :


Código
  1. f[arry[i]-1]++;

Con todo esto el resultado sería algo como esto:

Código
  1. 5 7 1 5 9 4 6 10 4 6 7 8 6 10 8 4 9 3 7 8 6 3 8 3 2 3 3 8 6 3
  2. Frecuencia del  1 es  1
  3. Frecuencia del  2 es  1
  4. Frecuencia del  3 es  6
  5. Frecuencia del  4 es  3
  6. Frecuencia del  5 es  2
  7. Frecuencia del  6 es  5
  8. Frecuencia del  7 es  3
  9. Frecuencia del  8 es  5
  10. Frecuencia del  9 es  2
  11. Frecuencia del  10 es  2
  12.  
  13.  
  14.  

Y casi me olvido, el código:

Código
  1. #include <iostream>
  2. #include <ctime>
  3. #include <cstdlib>
  4. using namespace std;
  5.  
  6. int main (void){
  7. int arry[30],f[10]={0};
  8. srand((unsigned) time(NULL));
  9. for (int i=0;i<30;i++) {
  10.        arry[i]=1+rand()%10;
  11.        f[arry[i]-1]++;
  12. }
  13. for (int j=0;j<30;j++)
  14.    cout<<arry[j]<<" ";
  15. for(int k=0;k<10;k++)
  16.     cout<<"\n Frecuencia del  "<< k+1 << " es  " <<f[k];
  17. cin.get();
  18. return 0;
  19. }
  20.  
  21.  

Saluditos!. ...
967  Programación / Programación C/C++ / Re: Ayuda con arreglos. en: 6 Marzo 2013, 01:18 am

gracias leosansan!! tu código me ayudo mucho pude resolver el problema en el mio  ;D (en lo unico que tengo duda fue en esto:
Código
  1. int arryc[99],arryS[99]={0},spar=0,simp=0;
en arryS el cero entre llaves es una forma de declararlo o la sintaxis correcta?)
...............................................


Siempre que una varaible se va a usar de "sumador" combiene inicializar a cero para que no contenga previamente valore impredecibles asignados por el compilador o valores basura. Es lo mismo que haces inicializando spar=0,simp=0.


Saluditos!. ...
968  Programación / Programación C/C++ / Re: Problema con el uso de la libreria time en: 6 Marzo 2013, 00:02 am
..................................................

aparte los rangos son de 0 a 60 minutos? o qué rangos estás hablando?


Tal como tiene el código las 12:030 no se corresponde ni con el primer caso (>12) ni con el segundo (<12 ), por lo que le faltaría considerar los " = " y los minutos:

Código
  1. #include <iostream>
  2. #include <ctime>
  3. using namespace std;
  4.  
  5.  
  6. int  main() {
  7.    char nya[60];
  8.  
  9.    time_t t = time(0);
  10.    struct tm * now = localtime( & t );
  11.    cout << (now->tm_hour ) << ':'
  12.         << (now->tm_min) << ':'
  13.         <<  now->tm_sec
  14.         << endl;
  15.  
  16.    cout << "Ingrese su Nombre y Apellido: ";
  17.    cin.getline(nya,60);
  18.  
  19. if ((now->tm_hour >= 12 && now->tm_min>=0 ) && (now->tm_hour<=17 && now->tm_min<60))
  20.     cout << "Buenas tardes: " << nya;
  21.    else
  22.     if (now->tm_hour >= 0 && now->tm_min>=0 && now->tm_hour <= 11 && now->tm_min<60)
  23. cout << "Buenos D"<<"\xA1"<<"as: " << nya;
  24.         else
  25.         cout << "Buenas Noches: " << nya;
  26. cin.get();
  27. return 0;
  28. }
  29.  

Saluditos!, ....
969  Programación / Programación C/C++ / Re: Ayuda: con sustitución de funciones en: 5 Marzo 2013, 22:53 pm
Sí funciona de maravilla. Lo que mencionaba es que los imprime en el orden que ingresaste el número y no de menor a mayor.
Ahorita le moveré un poco a ver que pasa xD

Para eso está "San Burbuja":

Código
  1. #include<stdio.h>
  2.  
  3. int main(){
  4.    int n,i,j,temp;
  5.    float ma=0;
  6.    printf("Introduce total de numeros: ");
  7.    scanf("%d",&n);
  8.    float num[n];
  9.    for(i=0;i<n;i++){
  10.        printf("Digita el numero %d: ",i+1);
  11.        scanf("%f",&num[i]);
  12.        ma+=num[i];
  13.    }
  14.    printf("La media de: ");
  15.    for (j=1; j <= n; j++)
  16. for (i=0; i< n-1; i++)
  17. if (num[i] > num[i+1]){
  18. temp = num[i];
  19. num[i] = num[i+1];
  20. num[i+1] = temp;
  21. }
  22.    for(i=0;i<n;i++)
  23.        printf("%g,",num[i]);
  24.    printf("\b es: %g",ma/n);
  25. getch();
  26. return 0;
  27. }
  28.  

Saluditos campeón!....
970  Programación / Programación C/C++ / Re: Ayuda con arreglos. en: 5 Marzo 2013, 22:44 pm
Pues viejo, no veo el porque debes usar otro arreglo
....................




Porque además de los números se le pide que guarde en "otro" arreglo las sumas parciales

Citar

(debe de utilizar dos arreglos uno que arroje la serie y otro el resultado de las sumas)

vamos algo como esto:

Código
  1. Serie:
  2.  
  3. 1       2       3       4       5       6       7       8       9       10      11      12      13      14      15      16      17
  4.        18      19      20      21      22      23      24      25      26      27      28      29      30      31      32      33
  5.        34      35      36      37      38      39      40      41      42      43      44      45      46      47      48      49
  6.        50      51      52      53      54      55      56      57      58      59      60      61      62      63      64      65
  7.        66      67      68      69      70      71      72      73      74      75      76      77      78      79      80      81
  8.        82      83      84      85      86      87      88      89      90      91      92      93      94      95      96      97
  9.        98      99      100
  10.  
  11. 1       3       6       10      15      21      28      36      45      55      66      78      91      105     120     136     15
  12. 3       171     190     210     231     253     276     300     325     351     378     406     435     465     496     528     56
  13. 1       595     630     666     703     741     780     820     861     903     946     990     1035    1081    1128    1176    12
  14. 25      1275    1326    1378    1431    1485    1540    1596    1653    1711    1770    1830    1891    1953    2016    2080    21
  15. 45      2211    2278    2346    2415    2485    2556    2628    2701    2775    2850    2926    3003    3081    3160    3240    33
  16. 21      3403    3486    3570    3655    3741    3828    3916    4005    4095    4186    4278    4371    4465    4560    4656    47
  17. 53      4851    4950    5051
  18.  
  19. Suma pares:  5100
  20.  
  21.  
  22. Suma impares: 7550
  23.  

Código
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. int main (void){
  5. int arryc[100],arryS[100]={0},spar=0,simp=0;
  6.  //sleep()=[500];
  7.  cout<<"Serie: "<<endl;
  8.  cout<<"\n";
  9.  arryS[0]=1;
  10.  for(int i=0;i<=99;i++){
  11.   arryc[i]=i+1;
  12.   if (i>0)
  13.    arryS[i]+=i+1+arryS[i-1];
  14.   cout<<arryc[i]<<"\t";
  15.  }
  16.  cout<<endl<<endl;
  17.  for(int i=0;i<=99;i++)
  18.    cout<<arryS[i]<<"\t";
  19.  for (int i=0; i<=99;i++) {
  20.  
  21.   if ( arryc[i] % 2 == 0)
  22.      spar=spar+arryc[i];
  23.    else
  24.        simp=simp+arryc[i];
  25.  }
  26.  cout<<endl<<"\nSuma pares:  ";
  27.  cout<<spar<<endl;
  28.  cout<<endl<<"\nSuma impares: ";
  29.  cout<<simp<<endl;
  30.  cin.get();
  31.  return 0;
  32. }
  33.  

Saluditos!. ...
Páginas: 1 ... 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 [97] 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 ... 132
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines