Resto float

di il
3 risposte

Resto float

Devo fare un programma per il calcolo delle equazioni di secondo grado in C includendo il caso il cui il coefficiente dell'equazione sia multiplo di due
so che non si può fare un resto (b%2) se b è un float qualcuno ha delle soluzioni:

#include<stdio.h>
#include<math.h>
int main(){
float b;
printf("\n Inserisci i coefficienti dell'equazione ax^2+bx+c=0");
printf("\n b=");
scanf("%f",&b);
if(b%2==0){
(condizione1);
}
else{
(condizione2);
}
}


Grazie in anticipo

3 Risposte

  • Re: Resto float

    Usa la funzione fmod
  • Re: Resto float

    Ma esattamente cosa devi fare? Se la tua equazione è a coefficienti reali allora ogni b è divisibile per due. Se la tua equazione è a coefficienti interi, allora perché usare scanf su un float invece di un int o un long?
  • Re: Resto float

    A parte la stranezza della domanda (b reale è pari?) la risposta è eps prima settimana calcolo numerico.

    cioè stabilirai una disequazione modulo (o più stabile quadrato) minore di qualcosa
    |b/2|<eps
    (b/2)*(b/2)<eps
    Fermo che andrebbe prima chiarita la domanda (priva di senso il concetto di pari e dispari per reali)
Devi accedere o registrarti per scrivere nel forum
3 risposte