Page 2 sur 2
Re: [Résolue] Sauvegarde de donnée dans un ARRAY
Posté : 03 sept. 2024, 14:37
par Theogar
Bonjour Béryl,
Au début je suis passé par un tableau, mais je n'ai pas réussi à faire fonctionner ma sauvegarde donc, j'ai changé de méthode, mais je vais essayer votre réponse merci.
Re: Sauvegarde de donnée dans un ARRAY
Posté : 03 sept. 2024, 15:08
par Theogar
Testé et validé, merci Béryl et tout le monde.
Re: [Résolue] Sauvegarde de donnée dans un ARRAY
Posté : 03 sept. 2024, 15:30
par Béryl
Un truc du genre :
Code : Tout sélectionner
Historique[0].write(Cpt.getIntValue());
for (byte i=0; i<=30; i++)
{
Historique[i+1].write(Historique[i].getIntValue());
}
Re: [Résolue] Sauvegarde de donnée dans un ARRAY
Posté : 03 sept. 2024, 16:29
par Theogar
Ce que vous avez écrit n'est pas ce que je recherche.
Cela rempli toutes les lignes de mon tableau dès la première sauvegarde. Je voulais qu'une seule ligne soit rempli chaque jour à 5h par la valeur précédente.
J'ai écrit ceci :
Historique_[30].write(Historique_[29].getIntValue());
Historique_[29].write(Historique_[28].getIntValue());
/////
Historique_[1].write(Historique_[0].getIntValue());
Historique_[0].write(CPT_journalier.getIntValue());
Cela prend sûrement trop de ligne pour ce que je veux faire et doit sûrement être optimisable, mais cela fait ce que je souhaite faire.
Edit: J'ai réussi à l'optimiser en remaniant ce que Béryl à écrit:
for (int i = 30; i > 0; i--) {
Historique_.write(Historique_.getIntValue());
}
Historique_[0].write(CPT_journalier.getIntValue());
Re: [Résolue] Sauvegarde de donnée dans un ARRAY
Posté : 04 sept. 2024, 08:12
par Béryl
J'ai pas tout compris, là...
Mon code fait exactement la même chose que le tient, non ?
Que tu le fasses ligne par ligne ou dans une boucle revient au même !
De plus, je ne comprends pas la deuxième partie, avec ta boucle.
Tu n'utilises pas la variable i !
M'enfin, si ton problème est résolu, c'est toujours ça !
Re: [Résolue] Sauvegarde de donnée dans un ARRAY
Posté : 04 sept. 2024, 08:57
par Theogar
je n'arrive pas à faire apparaître les "i" dans mon code ils s'effacent lors de l'envoie de celui-ci, mais j'ai un "i" après "Historique_" et j'ai "i-1" après "write(Historique_"
Par contre, de mon côté je suis désolé, mais votre code ne marchait pas, celui-ci remplissait mon tableau de l'historique 1 à 31 avec la valeur de mon niveau, alors que là, l'historique 1 prend la valeur de mon niveau, toutes les autres valeurs restent à zéro. Il faut attendre nouvelle journée pour que la valeur de mon historique 1 se décale sur l'historique 2 et l'historique 1 récupère la valeur du niveau, ainsi de suite jusqu'à que mon tableau soit rempli.
Re: [Résolue] Sauvegarde de donnée dans un ARRAY
Posté : 09 sept. 2024, 16:27
par DurandO
Béryl a écrit : ↑03 sept. 2024, 15:30
Un truc du genre :
Code : Tout sélectionner
Historique[0].write(Cpt.getIntValue());
for (byte i=0; i<=30; i++)
{
Historique[i+1].write(Historique[i].getIntValue());
}
Cela ne marche pas en effet, car tu écris Historique[0] dans Historique[1] puis tu écris Historique[1] dans Historique[2] etc...
Autrement dit, si tu 1 dans Historique[0] tu vas écrire cette même valeur dans le reste du tableau
Plutôt du genre décaler le tableau pour ensuite y écrire la valeur au premier emplacement comme cela :
Code : Tout sélectionner
for (byte i=0; i<=30; i++)
{
Historique[30-i].write(Historique[29-i].getIntValue());
}
Historique[0].write(Cpt.getIntValue());
Re: [Résolue] Sauvegarde de donnée dans un ARRAY
Posté : 09 sept. 2024, 16:52
par philou77
Salut !
Laisse tomber Durando, de toute façon il voulais faire un décalage par jour et pas 30.
Donc il était plus rapide de prendre le numéro du jour et de le prendre en référence pour le nombre de boucle à faire pour décaler ses valeurs.