IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

Arrondir au dixième supérieur


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2019
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2019
    Messages : 3
    Par défaut Arrondir au dixième supérieur
    Bonjour, voilà mon problème : j'ai des float dans mon programme, qui valent par exemple 1.1666 etc que j'aimerai arrondir à 1.2 (pareil s'ils valent 1.02 à 1.1, 0.98 à 1.0, etc).

    Seulement voilà : ne trouvant pas de fonction le faisant directement, j'ai voulu passer par la fonction truncf de math.h en faisant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mise = truncf(mise*10)/10 + 0.1;
    Mais lorsque je compile mon programme avec gcc, il me dit "référence indéfinie vers "truncf"... J'ai pourtant bien mis : ...

    De plus, ma bibliothèque est bien intégrée car un test avec la fonction pow() a été réussie

    Merci d'avance pour vos réponses si vous avez une idée de la source de mon problème !
    Bonne soirée.

  2. #2
    Expert confirmé
    Homme Profil pro
    Analyste/ Programmeur
    Inscrit en
    Juillet 2013
    Messages
    4 766
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Analyste/ Programmeur

    Informations forums :
    Inscription : Juillet 2013
    Messages : 4 766
    Par défaut
    Il faut lire la documentation trunc, truncf, truncl (<- lien cppreference.com en anglais)

    Regarde bien -> (since C99) - il faut compiler en C99 (la norme 1999 du langage C) ou plus.

    Avec gcc c'est la bascule ("switch") -std : gcc .... -std=c99.

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2019
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2019
    Messages : 3
    Par défaut
    Mais même en rajoutant le -std=c99 cela ne change pas et continue à me dire que la référence est indéfinie... x)
    J'avais bien lu le manuel avant... :(

  4. #4
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 147
    Billets dans le blog
    4
    Par défaut
    As-tu vraiment besoin de calculer l'arrondi ou ne veux-tu pas juste afficher à l'arrondi ?
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2019
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2019
    Messages : 3
    Par défaut
    Oui, j'ai vraiment besoin de l'arrondi pour le calcul ,et non l'affichage, sinon je sais m'y prendre pour ça et c'est beaucoup plus simple x)

    Mais en fait j'ai réussi ! En compilant avec g++ au lieu de gcc cela a marché je ne sais toujours pas pourquoi... Merci pour vos réponses !

  6. #6
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 147
    Billets dans le blog
    4
    Par défaut
    Les valeurs sont de toutes façons arrondies donc tes calculs seront approchés.
    Le seul moyen est de faire des calculs avec des valeurs à virgule fixe.
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  7. #7
    Membre émérite
    Avatar de Daïmanu
    Homme Profil pro
    Développeur touche à tout
    Inscrit en
    Janvier 2011
    Messages
    736
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur touche à tout

    Informations forums :
    Inscription : Janvier 2011
    Messages : 736
    Par défaut
    Bonjour.

    Citation Envoyé par Parziter Voir le message
    il me dit "référence indéfinie vers "truncf"... J'ai pourtant bien mis :
    L'erreur "undefined reference" indique que la bibliothèque n'a pas été trouvée à l'édition de liens, donc pas au niveau de l'include.
    Il faut indiquer au compilateur où trouver la bibliothèque, avec les options -L ou -l.
    Mais le cas de <math.h> est particulier, il faut indiquer au compilateur avec le flag -lm.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Fonction pour arrondir au quart supérieur
    Par nicoaix dans le forum Langage
    Réponses: 1
    Dernier message: 30/09/2008, 16h41
  2. Arrondir à la valeur supérieure le contenu d'un champs
    Par _shuriken_ dans le forum Access
    Réponses: 7
    Dernier message: 06/07/2007, 10h53
  3. arrondir à l'unité supérieur
    Par ericmart dans le forum Langage
    Réponses: 2
    Dernier message: 28/06/2006, 14h23
  4. Comment arrondir à l'entier supérieur ?
    Par kuranes dans le forum Access
    Réponses: 3
    Dernier message: 29/11/2005, 17h42
  5. Arrondir à la dizaine supérieure
    Par laurent35 dans le forum Access
    Réponses: 3
    Dernier message: 28/11/2005, 14h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo