Enviado em 13/01/2020 - 08:14h
O que tenho não é bem um problema, ao menos não agora, mas uma dúvida.#include<stdio.h> void fun(int x) { x = 30; } int main(void) { int x = 20; fun(x); printf("x = %d", x); return 0; }
# include <stdio.h> void fun(int *ptr) { *ptr = 30; } int main() { int x = 20; fun(&x); printf("x = %d", x); return 0; }
#include<stdio.h> #include<math.h> double ran1(long int *idum); void correlacao(int Quantidade, double A, double E[]); #define IA 16807 #define IM 2147483647 #define AM (1.0/IM) #define IQ 127773 #define IR 2836 #define NTAB 32 #define NDIV (1+(IM-1)/NTAB) #define EPS 1.2e-7 #define RNMX (1.0-EPS) long int SEED, SEED1; int main(){ int QuantidadeMassas = 100, iMassa; double A = 40.0, x[QuantidadeMassas], E[QuantidadeMassas], b = 1.5, MassaTipo[3] = {0.5, 1.0, 1.5}, massa[QuantidadeMassas]; char aleN[200]; FILE *ale; SEED1 = 1; SEED = -SEED1; sprintf(aleN, "Corr_A%1.2gSEED%ld.dat", A, SEED1); ale = fopen(aleN, "w"); correlacao(QuantidadeMassas, A, E); for(iMassa = 0; iMassa < QuantidadeMassas; ++iMassa){ if(E[iMassa] < -b){ massa[iMassa] = MassaTipo[0]; }else{ if(E[iMassa] > b){ massa[iMassa] = MassaTipo[2]; }else{ massa[iMassa] = MassaTipo[1]; } } fprintf(ale, "%d, %lf\n", iMassa, massa[iMassa]); } fclose(ale); return 0; } double ran1(long int *idum){ int j; long k; static long iy=0; static long iv[NTAB]; double temp; if(*idum <= 0 || !iy){ if (-(*idum) < 1) *idum=1; else *idum = -(*idum); for(j = NTAB + 7; j >= 0; j--){ k=(*idum)/IQ; *idum=IA*(*idum-k*IQ)-IR*k; if(*idum < 0) *idum += IM; if(j < NTAB) iv[j] = *idum; } iy=iv[0]; } k=(*idum)/IQ; *idum=IA*(*idum-k*IQ)-IR*k; if (*idum < 0) *idum += IM; j=iy/NDIV; iy=iv[j]; iv[j] = *idum; if((temp=AM*iy) > RNMX) return RNMX; else return temp; } void correlacao(int Quantidade, double A, double x[]){ double E[Quantidade+2], xmedio, xmedio2, aux; int k, n; xmedio = xmedio2 = 0.0; for(k = 1; k <= Quantidade; ++k){ E[k] = 2.0 * ran1(&SEED) - 1.0; } for(n = 1; n <= Quantidade; ++n){ x[n] = 0.0; for(k = 1; k <= Quantidade; ++k){ x[n] += E[k] / pow((double)abs(k - n) / A + 1.0, 2.0); } xmedio += x[n]; xmedio2 += x[n] * x[n]; } xmedio /= Quantidade; xmedio2 /= Quantidade; aux = 1.0 / sqrt(xmedio2 - xmedio * xmedio); for(n = 1; n <= Quantidade; ++n){ x[n] = (x[n] - xmedio) * aux; } return; }
Enviado em 14/01/2020 - 19:16h
Porque, na declaração de um parâmetro de função, “nome_tipo variável[]” é sinônimo de “nome_tipo *variável”.Resolver problemas de Internet
Como compartilhar a tela do Ubuntu com uma Smart TV (LG, Samsung, etc.)
Descritores de Arquivos e Swappiness
Como instalar no Linux Jogos da Steam só para Windows
Instalando o Team Viewer no Debian Trixie - problema no Policykit
O Que Fazer Após Instalar Ubuntu 25.04