• Regolamento Macrocategoria DEV
    Prima di aprire un topic nella Macrocategoria DEV, è bene leggerne il suo regolamento. Sei un'azienda o un hosting/provider? Qui sono anche contenute informazioni per collaborare con Sciax2 ed ottenere l'accredito nella nostra community!

Problema risolto Scrivere una funzione che calcoli una formula

pe.pp.e

Utente Medio
Autore del topic
10 Aprile 2012
101
0
Miglior risposta
0
Salve a tutti dovrei scrivere una funzione in C che mi calcoli la seguente formula:emoji_slight_frown:x3 + 3x + 5)/(8x + 1).In pratica ho scritto tutto il programma solo che come risultato mi ritorna solo l'intero e non la parte decimale.Ad esempio se x vale 1 non mi ritona 1,2 ma solo 1.Come risolvo il problema???.Grazie in anticipo.
Questo è il codice completo:

il main:

#include <stdio.h>
#include <stdlib.h>
int formula(int x);
void main(){

int x;
int form;
printf("\nInserire il valore di x:");
scanf("%d",&x);

form=formula( x);
printf("\nIl risultato e':%d\n",form);

system("PAUSE");

}


la funzione:

int formula(int x){

int a,b;

a=(x*3 + 3*x + 5);
b=(8*x + 1);

return a/b;
}
 
Riferimento: Scrivere una funzione che calcoli una formula

Se parliamo di interi la cosa è più semplice... per ottenere le ultime n cifre dell'intero basterà mettere il numero a modulo con 10^n.
In sostanza le ultime 3 cifre le ottieni con int v=numero%1000; indipendentemente dal numero di cifre presenti in numero (ovviamente se numero ha 2 cifre verranno restituite quelle).
 
Riferimento: Scrivere una funzione che calcoli una formula

si ma io il numero lo inserisco da tastiera con la scanf()...quindi in pratica anche se scrivessi nella funzione di ritornarmi il numero a modulo,mi ritornerebbe sempre e solamente la parte intera...ad esempio se io nella funzione scrivessi return (a/b)%1000 mi ritornerebbe solo il valore intero... :S
--------------- AGGIUNTA AL POST ---------------
fa niente ho risolto il problema...in pratica dovevo semplicemente cambiare il tipo della funzione da int a float ;)
 
Ultima modifica:
Riferimento: Scrivere una funzione che calcoli una formula

Sposto e rinomino siccome il problema è stato risolto ;)