triangle de pascal - Ada - Programmation
Marsh Posté le 09-11-2005 à 10:00:17
J'ai essayer autre chose :
procedure Calculer_Ligne is |
Mon provblème ici c'est que dans ma deuxième procédure t(j) n'est pas connu.
Comment faire ?
Est il possible de faire ce programme sans utiliser de tableau?
Marsh Posté le 06-12-2005 à 02:27:32
Tableau multi dimentionnel et autant de boucles qu'il faut
Le tout dans une procédure sauf si exercice en demande plus
Suffit de faire le triangle dans le tableau, zut, faut réfléchir
Marsh Posté le 07-11-2005 à 14:49:47
Il me faut écrire une procédure triangle_de_pascal1 qui calcule et affiche le triangle de pascal sachant sachant que tout nombre est la somme des deux du dessus :
ci,j = ci−1,j−1 + ci−1,j . Le premier élément est égal à 1. Il sera simplement affiché en première colonne (pas au centre de la ligne).
Pour cela, calculer une ligne (procédure calculer_ligne) puis lafficher (procédure imprimer_ligne).
Imprimer la ligne élément par élément (procédure imprimer_element).
Fixer le nombre des lignes à 15 et le format des nombres à 5. Lors de lappel, utiliser la
notation par position.
Le nom du fichier est dev2_1.adb.
Voici ce que j'ai fait, ça fonctionne mais j'ai utilisé une seule procédure :
with Ada.Integer_Text_Io, Ada.Text_Io;
-- Programme qui affiche le triangle de Pascal
procedure triangle_de_pascal is
X:integer; -- Entier se situant au dessus à gauche
Y:integer; -- Entier se situant au dessus
-- Tableau contenant une ligne du triangle de Pascal
T : array (0 .. 14) of integer := (0 => 1, others => 0);
begin
-- Saisie de la puissance du triangle de Pascal
ada.text_io.Put("Triangle de Pascal" );
ada.text_io.new_line(2);
-- Calcul et affichage du triangle de Pascal
for I in T'First .. 14 loop
X :=0;
for J in T'First .. I loop
Y := T(J);
T(J) := X + Y;
ada.integer_text_io.Put(T(J), 5);
X := Y;
end loop;
ada.text_io.New_Line;
end loop;
end triangle_de_pascal;
Comment faire pour utiliser les 4 procédures?