Algorithme pour un calcul

Bonjour,
soient N et M deux entiers naturels.
On pose $$M=N \cdot Q + R.$$
La question est: écrire un algorithme qui calcule $Q$ et $R$ en utilsant la soustraction.
Comment faire? Svp
Merci d'avance pour votre aide.

Réponses

  • Partant de M=100 et N=30 par exemple, je peux choisir Q=2 et R=40, ou bien Q=3, et R=10... donc j'ai plusieurs choix. Impossible d'écrire un algorithme si déjà, à la main, on ne sait pas laquelle de ces 2 solutions on veut.

    J'ai ma petite idée, je sais laquelle des 2 est attendue par ton prof... mais toi ? As-tu bien recopié l'énoncé de l'exercice ?
    Tu me dis, j'oublie. Tu m'enseignes, je me souviens. Tu m'impliques, j'apprends. Benjamin Franklin
    L'hypocrisie est pire qu'une vérité qui fait mal. Franck Ntasamara.
  • Bonjour,
    oui. je pense avoir bien recopier l'énoncé: Soient $N$ et $M$ deux entiers naturels. On définit $Q$ et $R$ par: $M= N \cdot Q + R.$ Ecrire un algorithme pour calculer $R$ et $Q$ en utilisant l'opération de soustraction.
    Pouvez-vous m'aider? S'il vous plaît.
  • zeitnot
    Modifié (26 Oct)
    On va rajouter division euclidienne, $R$ compris entre ... et ..... .

    Tu peux soustraire $N$ de $M$, tant que$M-N$ est de quel signe ?
    Avec l'exemple de  @Lourrran, $100-30=70$,              $70-30=40$ ,       $40-30=10$            $10-30=-20$... $Q$ et $R$ valent quoi ?
    Comme me l'a appris ma maîtresse de CE2, tata Suzanne, dite Susu, $\{l,é,o\} \cap \{t,o,t,o\}=\{o\}$
  • @matilda, je vois dans ton profil que tu es certifiée. C'est sans doute ce qui fait que tu ne comprends pas la remarque de @lourrran, tant tu sais que, évidemment, il y a un sous-entendu sur le lieu de $R$.
  • Une solution conforme à la spécification :
    def decomposition(m, n):
        """
        Paramètres
        ----------
        m, n : entiers
        
        Résultat
        --------
        q, r : entiers
            q et r sont deux entiers tels que m = q*n + r
        
        Exemple
        -------
        >>> decomposition(5, 3)
        (1, 2)
        """
        q, r = 1, m-n
        return q, r

    On peut bien vérifier que m = 5 et n = 3 vérifient m = q*n + r avec q = 1 et r = 2

    On peut aussi donner une solution tout aussi conforme à la spécification, sans utiliser la moindre soustraction :

    def decomposition(m, n):
        """
        Paramètres
        ----------
        m, n : entiers
        
        Résultat
        --------
        q, r : entiers
            q et r sont deux entiers tels que m = q*n + r
        
        Exemple
        -------
        >>> decomposition(5, 3)
        (0, 5)
        """
        q, r = 0, m
        return q, r

    On peut bien vérifier que m = 5 et n = 3 vérifient m = q*n + r avec q = 0 et r = 5

    Peut-être la spécification est elle incomplète, puisqu'apparemment, le problème à résoudre peut avoir plusieurs solutions.

Connectez-vous ou Inscrivez-vous pour répondre.