61 double na2(
double x){
return x*x; }
62 double na3(
double x){
return x*x*x; }
68 double **
map(
double(*fce[])(
double),
double *vstup,
int pocet_fce,
int pocet_vstup) {
76 assert(pocet_vstup>0);
80 vysledky = (
double **)malloc(radku *
sizeof(
double *));
82 for (i=0; i<radku; i++) {
83 vysledky[i] = (
double *)malloc(pocet_vstup *
sizeof(
double));
86 for(i=0; i<pocet_vstup; i++) {
87 vysledky[0][i] = vstup[i];
89 for(i=0; i<pocet_fce; i++) {
90 vysledek = vysledky[i+1];
92 for(j=0; j<pocet_vstup; j++) {
93 vysledek[j] = f(vstup[j]);
99 static vypis (
double *vstup,
int delka) {
101 for (i=0; i<delka; i++) {
102 printf(
"%c%8g", i?
',':
'[', vstup[i]);
107 #define NELEM(pole) (sizeof pole/sizeof *pole)
110 double vstup[] = {1,2,3,4,5, 10};
113 double ludolf[] = {0.0, M_PI_4, M_PI_2, M_PI};
115 double (*fce[])(double) = {
na2, na3, sqrt};
118 double **vysledky_na2;
119 double **vysledky_na3;
120 double **vysledky_sin;
127 for(i=0; i<=
NELEM(fce); i++) {
128 vypis(vysledky_na2[i],
NELEM(vstup));
double ** map(double(*fce[])(double), double *vstup, int pocet_fce, int pocet_vstup)