Bonjour a vous tous,
Je dois enregistrer save[NbCarRest] (tableau de char de taille du nombre de caractère restant) car je justifie un texte. pour revenir à la ligne
EX: je suis un chat gris (la justification sur 13caractère)
Cela donne:
je suis un chat gr
is
En fait je voudrais que gr revienne à la ligne pour cela, j'ai mon tableau de char ligne[largeur] (largeur étant le nombre de caractère de la justification)
Et je voudrais en fait mettre des espaces à la place de gr et le gr le passer en dessous pour faire:
je suis un chat
gris
mais je sais pas comment mettre save[nbRestCAr] et ligne[largeur] sans que cela se concatène car sinon cela va dépasser :/
Alors il y a deux solutions.
SOLUTION 1:
Soit quand je lis ma ligne et que j'enregistre dans ligne[] c'est là que j'empeche de couper les mots.
Où debut est l'indice du dernier espace connu dans le tableau ligne.
Où nbRestCAr est le nombre de caractère que l'on doit enregistrer pour ne pas couper le mot.
Où largeur est la taille de la justification. et donc la taille de ligne[]
ALGO:
si ligne[largeur-1]!=' '
alors nbRestCar=(largeur-1)-debut
pour i de 1 à nbRestCar faire
save[i-1]=ligne[i+debut]
fpour
fi
//Alors là j'ai enregistrer dans mon tableau mais j sais pas si c'est juste.
//Ensuite je sais pas comment faire pour que cela ne décale pas toutes les lignes et je ne sais pas inclure save[] dans le début de ligne[]
Je dois mal m'y prendre ou j'ai mal raisonné.
SOLUTION 2:
Alors là je voulais que quand ma fonction qui écrit ligne[] est appelé bah j'empêche de couper les mots. Mais en n'y réfléchissant je pense que c'est lors de la lecture donc cette solution me pourrait inutile a décrire puisque cela me parait faux.
Voilà si vous pourriez me guider dans mon raisonnement qui me parait faussé, je vous en seraient très reconnaissant.
Amicalement Thibaud
Partager