Précédent   Forum des professionnels en informatique > Autres langages > Autres langages > Ada
Ada Forum d'entraide sur la programmation en langage Ada
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 31/10/2011, 08h01   #1
Membre du Club
 
Sebastien
Inscription : janvier 2011
Messages : 76
Détails du profil
Informations personnelles :
Nom : Sebastien

Informations forums :
Inscription : janvier 2011
Messages : 76
Points : 50
Points : 50
Par défaut une fonction split en ada

Bonjour,


Sur un td que nous devons réaliser en cours , je bloque sur cette question depuis deux jours.
Dans un programme , l'utilisateur doit taper un entier et le programme affiche chaque chiffre séparé par un point.

par exemple, si l’entier 456 est passé en paramètre, cela affichera "4.5.6.".

merci d'avance
kirua99 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/11/2011, 11h02   #2
Membre régulier
 
Inscription : mai 2006
Messages : 68
Détails du profil
Informations personnelles :
Localisation : France, Nord (Nord Pas de Calais)

Informations forums :
Inscription : mai 2006
Messages : 68
Points : 76
Points : 76
Bonjour,

Tu peux commencer par montrer ce que tu as déjà fait, histoire de ne pas faire le td à ta place.
Seb_de_lille est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/11/2011, 10h00   #3
Membre du Club
 
Sebastien
Inscription : janvier 2011
Messages : 76
Détails du profil
Informations personnelles :
Nom : Sebastien

Informations forums :
Inscription : janvier 2011
Messages : 76
Points : 50
Points : 50
oui aucun soucis.
j'ai trouvé une méthode mais pas encore dans ce que j'ai besoin.
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

n : INTEGER := 0 ;
tab : array ( 1 .. 10000) of INTEGER;
i : INTEGER := 0;
val : integer := 0;
begin

put ( "donner un entier  : ");
get ( n );

while n > 0 loop
--put ( n mod 10,0); 
val := (n mod 10);
put ( val );
--tab(i) := val;
i := i + 1;
n:=n/10;

end loop;

si je tape 456.
Cela m'affiche 6.5.4
kirua99 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/11/2011, 12h10   #4
Membre régulier
 
Inscription : mai 2006
Messages : 68
Détails du profil
Informations personnelles :
Localisation : France, Nord (Nord Pas de Calais)

Informations forums :
Inscription : mai 2006
Messages : 68
Points : 76
Points : 76
Bonjour,

Pourquoi n'utilises tu pas l'attribut image? Integer'Image(n), cela convertit ton entier en string. Ce serait quand plus simple pour bosser. Ou bien c'est l'objet de l'exercice de faire toi-même la conversion?

Seb
Seb_de_lille est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/11/2011, 10h12   #5
Membre confirmé
 
Inscription : juin 2006
Messages : 649
Détails du profil
Informations personnelles :
Âge : 42

Informations forums :
Inscription : juin 2006
Messages : 649
Points : 276
Points : 276
Citation:
Envoyé par kirua99 Voir le message
oui aucun soucis.
j'ai trouvé une méthode mais pas encore dans ce que j'ai besoin.
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

n : INTEGER := 0 ;
tab : array ( 1 .. 10000) of INTEGER;
i : INTEGER := 0;
val : integer := 0;
begin

put ( "donner un entier  : ");
get ( n );

while n > 0 loop
--put ( n mod 10,0); 
val := (n mod 10);
put ( val );
--tab(i) := val;
i := i + 1;
n:=n/10;

end loop;

si je tape 456.
Cela m'affiche 6.5.4
Après t'as plus qu'a lire ton tableau de 1 à i dans une boucle for avec le mot réservé "revese" entre "in et la borne inférieur.
jovalise est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 10h04.


 
 
 
 
Partenaires

Hébergement Web