Prof. Claudio Sartori

Laboratorio di Informatica


Torna a Claudio Sartori - Didattica

Informativa Privacy

Uso di array

a. Polinomio in x

Un polinomio in x di grado n può essere rappresentato tramite un array di n+1 elementi in cui il coefficiente del termine di grado i è contenuto in coeff[i].

Scrivere una funzione di tipo double che ha come parametri di input l'array dei coefficienti, il grado del polinomio e x, e restituisce il valore del polinomio in x. Per il calcolo dell'elevamento a potenza si può usare la funzione definita in math.h

double pow(double x, double y)

che calcola x elevato a y.

Scrivere poi un programma che legge da file i coefficienti, poi chiede ripetutamente da input dei valori di x e visualizza i rispettivi valori del polinomio

Soluzione: main.c, polinomio.c, polinomio.h

b. Polinomio con la formula di horner

Il matematico irlandese William Horner nel diciannovesimo secolo ha ideato una formula che riduce il numero di operazioni necessarie per il calcolo del valore del polinomio, dati x e i coefficienti, evitando il calcolo degli elevamenti a potenza

Scrivere una funzione per il calcolo del polinomio con la formula di Horner e utilizzare una copia del programma principale del punto a per il collaudo.

Suggerimento: il calcolo si deve eseguire con un ciclo che parte dal grado più alto e prosegue per gradi decrescenti

Esempio:

si calcola come segue

in pratica, al passo i-esimo si moltiplica il valore corrente del polinomio per x e si aggiunge il coefficiente di grado i

Soluzione: main.c, polinomio.c, polinomio.h

Per qualsiasi problema su questa pagina contattare il webmaster.