Créer un tableau + trier des données avant envoi [C] - C - Programmation
Marsh Posté le 26-04-2009 à 00:03:47
anounito a écrit : Bonjour, Étant pas très doué dans les tableaux et les chaines de caractères, je cherche à créer un tableau de 19 colonne séparés par des espaces puis faire un test sur les données inscrites. En effet le tableau est déjà fait , enfin un truc qui ressemble à un tableau ds le résultat seulement (je met le code plus bas) par contre je n'arrive pas faire le test sur les données: |
Oui, c'est une bête machine à état avec un compteur...
Commence par recenser les évènements, puis, décrit les états et enfin les transitions, c'est à dire les évènements qui font changer l'état. Ensuite tu associes des actions aux transitions si nécessaire...
Marsh Posté le 26-04-2009 à 19:05:39
Et comment je peu faire cette machine à état, je vois ce que tu veux dire mais je ne sais comment y procéder !!!
voilà j'ai écrit ce code, mais je doute de son efficacité.
Code :
|
Bon si quelqu'un à une petite idée ce sera trééés gentille de ça part.
Merci
Marsh Posté le 26-04-2009 à 22:39:14
anounito a écrit : Et comment je peu faire cette machine à état, je vois ce que tu veux dire mais je ne sais comment y procéder !!! |
J'ai indiqué la marche à suivre. Pour le moment, il n'y a aucun code à écrire, seulement de la spécification détaillée...
Marsh Posté le 27-04-2009 à 09:19:05
Merci pour tes précisions, mais moi je m'attend à un début de code, ou qu'on me corrige le code que j'ai mit.
Merci !
Marsh Posté le 25-04-2009 à 12:49:54
Bonjour, Étant pas très doué dans les tableaux et les chaines de caractères, je cherche à créer un tableau de 19 colonne séparés par des espaces puis faire un test sur les données inscrites. En effet le tableau est déjà fait , enfin un truc qui ressemble à un tableau ds le résultat seulement (je met le code plus bas) par contre je n'arrive pas faire le test sur les données:
--> Si les données commencent par 02 et se termine par 03 et qu'il y a 19 valeurs--> OK on passe à la suite (on passe à la ligne et on écrit une nouvelle chaine de 19 données), sinon on rejette et on attend un nouveau 02 ... <19 valeur> ... 03.
Ex.:
02 EA 61 02 11 00 00 00 00 00 00 00 00 00 00 00 00 00 03 --> OK | On Garde
02 EA 53 00 A0 00 00 00 00 00 00 00 00 00 00 00 03 --> No Ok | On rejette
02 EA F0 01 0C 00 00 00 00 03 00 00 00 00 00 00 00 00 00 --> No Ok | On rejette
...
Mon code qui me permet d'enregistrer mes données:
Je ne sait pas comment m'y prendre pour faire ce test des " 02 - 19 valeurs - 03 " j'ai fait un petit code pour faire ce test ça ma donnée un truc bizarre !
si quelqu'un à une idée de comment faire je le remercie d'avance
Ici Le mm code mais ss modifications
la sorti de ce code se fait en 2 parties:
1) sur la console de Linux
2) une copie dans mon fichier (le plus important)
ex. correcte:
...
02 EA 42 00 70 00 00 00 00 00 00 00 00 00 00 00 00 00 03
02 EA 43 00 7A 00 00 00 00 00 00 00 00 00 00 00 00 00 03
02 EA 43 00 7D 00 00 00 00 00 00 00 00 00 00 00 00 00 03
02 EA 43 00 77 00 00 00 00 00 00 00 00 00 00 00 00 00 03
02 EA 44 00 84 00 00 00 00 00 00 00 00 00 00 00 00 00 03
02 EA 4D 01 79 00 00 00 00 00 00 00 00 00 00 00 00 00 03
...
un exemple de ce que je veux éviter:
Ex.incorrecte:
...
02 EA 3D 00 3F 00 00 00 00 00 00 00 00 00 00 00 00 00 03
02 EA 3D 00 3C 00 00 00 00 00 00 00 00 00 00 00 00 00 03
00 00 00 00 00 00 00 03 02 EA 3C 00 36 00 00 00 00 00 00
02 EA 47 00 BC 00 00 00 00 00 00 00 00 00 00 00 00 00 03
02 EA 4E 01 C2 00 00 00 00 00 00 00 00 00 00 00 00 00 03
...
ou encore:
...
02 EA 3D 00 3D 00 00 00 00 00 00 00 00 00 00 00 00 00 03
02 EA 32 00 51 00 00 00 00 00 00 00 00 00 00 00 00 00 03
02 EA 63 02 03 01 00 00 00 00 00 00 00 00 00 00 00 00 03
02 EA 64 02 01 00 00 00 00 00 00 00 00 00 00 00 00 03 02 --> à cause de cette ligne le reste n'est plus valable pour moi, le 02 de ce qui devait être la ligne suivante a été décalé juste parce qu'il manquait une valeur!!
EA 64 02 17 01 00 00 00 00 00 00 00 00 00 00 00 00 03 02
EA 64 02 01 00 00 00 00 00 00 00 00 00 00 00 00 03 02 EA
64 02 0A 01 00 00 00 00 00 00 00 00 00 00 00 00 03 02 EA
64 02 12 01 00 00 00 00 00 00 00 00 00 00 00 00 03 02 EA
64 02 21 01 00 00 00 00 00 00 00 00 00 00 00 00 03 02 EA
...
J'attend votre aide!
Merci
Message édité par anounito le 25-04-2009 à 22:21:24