Vérification d'un nombre carré

Olympiades mathématiques, énigmes et défis
KlaraaimeMathe
Messages: 1
Enregistré le: 26 Fév 2022, 12:53

Vérification d'un nombre carré

par KlaraaimeMathe » 26 Fév 2022, 12:58

Comment pourrais-je voir pour quels entiers n est (2n^4)+1 un nombre carré ? J'ai deux idées, mais en vain :
1. 2n^4+1 doit être impair, donc vous pouvez l'écrire sous la forme (2q+1). L'autre idée que j'ai eue était peut-être de faire quelque chose avec le fait que 2n^4 doit être un multiple de 8.
Je ne sais pas où aller à partir de là.

Merci d'avance !



Black Jack

Re: Vérification d'un nombre carré

par Black Jack » 01 Mar 2022, 21:23

Bonjour,

Juste une ou l'autre réflexion.

Le chiffre des unités de n² ne peut être que 0,1,4,9,6,5
--> Le chiffre des unités de n^4 ne peuvent être que 0,1,6,5
--> Le chiffre des unités de 2 * n^4 ne peuvent être que 2 ou 0
--> Le chiffre des unités de 2 * n^4 + 1 ne peuvent être que 3 ou 1

Or un carré ne peut pas avoir 3 comme chiffre des unités (seulement par 0,1,4,9,6,5)

Donc si il y a des solutions c'est forcément pour les nombres (2n^4 + 1) dont le chiffre des unités est 1
Ce qui impose que le chiffre des unités de n est 0 ou 5

Donc n = 5.k (avec k dans N)

k = 0 et donc n = 0 convient.

Reste à montrer que n = 5 k, avec k dans N* n'apportent pas d'autres solutions. (enfin je pense)
*****

8-)

phyelec
Membre Rationnel
Messages: 946
Enregistré le: 06 Mar 2020, 18:47

Re: Vérification d'un nombre carré

par phyelec » 02 Mar 2022, 00:05

Bonjour,
j'ai fait un programme sous Scilab dont je vous fourni le code , sauf erreur de ma part je trouve les 10 premières valeurs de n suivantes :

0.
132949.
243696.
265898.
386929.
398847.
404761.
465803.
470861.
476725.
487392.

Code: Tout sélectionner
j=1
for i=1:500000
    p2=2*(i-1)^4+1;
    p=sqrt(p2);
    if round(p)==p
        then
        Ap(j)=p;
        n=i-1;
        A(j)=n;
        j=j+1;
    end       
 end
 j=11
 disp(Ap)
 disp(A)

Black Jack

Re: Vérification d'un nombre carré

par Black Jack » 02 Mar 2022, 18:38

phyelec a écrit:Bonjour,
j'ai fait un programme sous Scilab dont je vous fourni le code , sauf erreur de ma part je trouve les 10 premières valeurs de n suivantes :

0.
132949.
243696.
265898.
386929.
398847.
404761.
465803.
470861.
476725.
487392.

Code: Tout sélectionner
j=1
for i=1:500000
    p2=2*(i-1)^4+1;
    p=sqrt(p2);
    if round(p)==p
        then
        Ap(j)=p;
        n=i-1;
        A(j)=n;
        j=j+1;
    end       
 end
 j=11
 disp(Ap)
 disp(A)


Bonjour,

Se méfier comme de la peste de ce genre de programme avec des grands nombres.

Résultats faux.

Par exemple n = 132949 a 9 comme chiffre des unités et donc n^4 aura le chiffre 1 comme chiffre des unités.
2n^4, aura le chiffre 2 comme chiffre des unités.

et 2n^4 + 1 aura le chiffre 3 comme chiffre des unités.

Et un carré n'a jamais 3 pour chiffre des unités.
*****
Exemple :

n = 132949 --> 4n²+1= 61 625 775 294 144 003

et la racine carrée de 61 625 775 294 144 003 est égale à 284245393,298... qui n'est pas un entier.

8-)

phyelec
Membre Rationnel
Messages: 946
Enregistré le: 06 Mar 2020, 18:47

Re: Vérification d'un nombre carré

par phyelec » 02 Mar 2022, 21:45

@Black Jack, merci pour votre retour,je vous crois,pas de souci, faut que je trouve pourquoi mon programme est faux ( le round sans doute ou le sqrt,...à creuser).

Black Jack

Re: Vérification d'un nombre carré

par Black Jack » 03 Mar 2022, 14:17

phyelec a écrit:@Black Jack, merci pour votre retour,je vous crois,pas de souci, faut que je trouve pourquoi mon programme est faux ( le round sans doute ou le sqrt,...à creuser).


Bonjour,

On ne le dit jamais assez (et c'est une erreur très fréquence faite par ceux qui écrivent des programmes informatiques), mais comparer, pour égalité stricte, le résultat d'un calcul et un nombre ne devrait jamais être fait en informatique.

Les calculs dans un logiciel se font avec un nombre de chiffres significatifs qui n'est pas infini et donc le résultat d'un calcul qui est dans la mémoire de l'ordi est forcément approximatif.

Dans ton exercice par exemple :

n = 132949
donne comme calcul exact : 2n^4+1 = 624842118071940866403

et sa racine carrée = 24996842162,000000643261252593095...

Supposons que ton logiciel travaille avec 16 chiffres significatifs, alors il met dans sa mémoire la valeur 24996842162,00000 (et il "oublie" les décimales qui suivent)
et si on compare avec la valeur entière ... la comparaison dira qu'est bon, alors que c'est faux.
*****

Ne pas penser que ce genre d'erreur n'existent qu'avec des comparaisons avec des racines carrées, c'est vrai pour toutes sortes de calcul.

Par exemple, si on entre sin(1), on a sin(1) = 0,0174524064372835128194189785163... mais l'ordi (si il travaille avec 16 chiffres significatifs) retiendra la valeur : 0,017452406437283
(peut être en arrondissant le dernier chiffre, dans ce cas, il "retiendra" : 0,017452406437284 ... qui n'est pas la valeur exacte. (enfin ce sera un poil moins faux car il retiendra une mantisse et un exposant, qui ici augmenterait la précison d'un chiffre significatif ... mais resterait néanmoins faux)
Et toute comparaison d'égalité avec une valeur plus précise donnera un résultat faux.

Pareil pour des cas encore plus simples, par exemple, on entre 3/17 qui vaut 0,17647058823529411764705882352941...
Mais l'ordi (si il travaille avec 16 chiffres significatifs) retiendra la valeur 0,176470588235294 ... qui n'est pas la valeur exacte.
Et toute comparaison d'égalité avec une valeur plus précise donnera un résultat faux.

8-)

phyelec
Membre Rationnel
Messages: 946
Enregistré le: 06 Mar 2020, 18:47

Re: Vérification d'un nombre carré

par phyelec » 03 Mar 2022, 14:51

@Black Jack,merci pour ces explications détaillées et pertinentes, effectivement == est une erreur dans mon programme, je l'ai relancé en effectuant une différence et aucune valeur de n n'a été trouvé. Cordialement phyelec.

 

Retourner vers ⚔ Défis et énigmes

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 7 invités

Tu pars déja ?



Fais toi aider gratuitement sur Maths-forum !

Créé un compte en 1 minute et pose ta question dans le forum ;-)
Inscription gratuite

Identification

Pas encore inscrit ?

Ou identifiez-vous :

Inscription gratuite