Mam takie zadanie:
Rozwiązałem je tak:
#include <stdio.h>
#include <math.h>
void pokaz(unsigned int n, double tab[])
{
unsigned int i = 0;
for(i=0; i<n; i++)
printf("tab[%d] = %f\n", i, tab[i]);
printf("\n");
}
void zad3(double a, double b, double c, double d, int n, int m)
{
int i, x;
int rozmiar = (m-n)+1;
printf("rozmiar = %d\n", rozmiar);
double *temp = malloc(sizeof(double)*rozmiar);
x = n;
for(i=0; i<rozmiar; i++)
{
printf("x = %d\n", x);
double wartosc = a*pow(x,3) + b*pow(x,2) + c*x + d;
temp[i] = wartosc;
x ++;
}
printf("\n");
pokaz(rozmiar, temp);
printf("\n");
double minwart = temp[0];
for(i=0; i<rozmiar; i++)
{
if(minwart > temp[i])
minwart = temp[i];
}
printf("min = %f\n", minwart);
free(temp);
temp = NULL;
}
int main(int argc, char **argv)
{
zad3(1, 2, 3, 4, 3, 5);
return 0;
}
Jest to zadanie z podstaw programowania. Czy istnieje jakieś prostsze rozwiązanie? Wydaje mi się, że tak, bo skoro to są podstawy ... Można to jakoś uprościć?