dessiner un triangle

dessiner un triangle - Programmation

Marsh Posté le 22-11-2001 à 12:11:00    

comment feriez vous un programme en C pour dessiner un triangle :
   *
  ***
 *****
*******
 
en utilisant un tableau type matrice (tab[N][M] , où N est le nbre de ligne et M le nombre de colonnes). on a aussi M=2N-1.
help !!
le prof veut qu on utilise une fonction ...
help !! g devoir samedi et y aura un truc du genre.

Reply

Marsh Posté le 22-11-2001 à 12:11:00   

Reply

Marsh Posté le 22-11-2001 à 12:34:14    

uns simple triangle isocèle? quand en plus on te donne déja la taille de M et N et que tu est sur que M est impaire, je vois vraiment pas ce qu'il y a de compliqué.
 
A moins que ce soit autre chose que tu ne veuilles.

Reply

Marsh Posté le 22-11-2001 à 13:05:18    

Le devoir de samedi, ce sera peut-être pour dessiner un sapin de noël par la même méthode ... :D

Reply

Marsh Posté le 22-11-2001 à 14:22:30    

Code :
  1. *
  2.    ***
  3.   *****
  4. *******
  5.    ***
  6.   *****
  7. *******
  8.    ***
  9.   *****
  10. *******
  11.    ***
  12.    ***
  13.    ***


 
Voila j'ai fait un sapin de noel (à la main c'est plus rapide que de faire le programme complet !!!

 

[edtdd]--Message édité par darkoli--[/edtdd]

Reply

Marsh Posté le 22-11-2001 à 14:25:46    

:heink:
:heink::heink:
:heink::heink::heink:
:heink::heink::heink::heink:
 
:lol:

Reply

Marsh Posté le 22-11-2001 à 16:03:11    

en fait, on doit dessiner un triangle a base de * .
on doit y incorporer une fonction. mais je n ai qu'1 petit mois de prog derriere moi. J ai essayé de penser à un truc a base de boucle for mais  c est plus que foireux.
HELP  :cry:

Reply

Marsh Posté le 22-11-2001 à 16:23:34    

mordicus340 a écrit a écrit :

en fait, on doit dessiner un triangle a base de * .
on doit y incorporer une fonction. mais je n ai qu'1 petit mois de prog derriere moi. J ai essayé de penser à un truc a base de boucle for mais  c est plus que foireux.
HELP  :cry:  



he bien ...
 
* écris nous l'énoncé
* écris nous ce à quoi tu penses pour le résoudre

Reply

Marsh Posté le 22-11-2001 à 16:35:40    

énoncé du pb : "dessines-moi un mouton"


---------------
Je ne suis ni pour, ni contre, bien au contraire  
Reply

Marsh Posté le 22-11-2001 à 17:32:09    

Fait à la vas vite... On part du bas et on remonte :
 
/* version standard */
/* remplissage auto d'un tableau de char[]  en dessinant un triangle*/
 
/* parametre d'entrée : hauteur */
  int hauteur=8;
 
 
 
  int largeur=2* hauteur -1;
 
  char *tableau = new char[hauteur*largeur];
 
  memset(tableau,(int)' ',hauteur*largeur);
 
  int tableau_depart_x=0;
 
  int tableau_fin_x=largeur;
 
  for(int l=hauteur;l>0;l--)
  {
 
   for(int k = tableau_depart_x;k < tableau_fin_x;k++)
   {
    tableau[l*largeur + k]='*';
   }
 
   tableau_depart_x++;
   tableau_fin_x--;
  }
 
/* version plus rapide */
 
  int larg_triangle = largeur;
  for(int l=hauteur;l>0;l--)
  {
   memset(tableau + l*largeur + tableau_depart_x,(int)'*',larg_triangle);
   if (larg_triangle>1) larg_triangle-=2;
   else     larg_triangle=1;
   tableau_depart_x++;
  }
*/
 
YA PU K

Reply

Marsh Posté le 22-11-2001 à 18:32:48    

bha tu peux utiliser l'algo de bresenham pour faire un truc propre en dessinant chaque segment puis algo de balayage.

Reply

Marsh Posté le 22-11-2001 à 18:32:48   

Reply

Marsh Posté le 22-11-2001 à 19:01:46    

voila une solution:
#include <iostream.h>
 
const int longueur=10; //longueur du tringle
void dessineligne(int );
 
void main()
{
int i;
for (i=0;i<longueur;i++)
{
   dessineligne(i);
}
}
 
void dessineligne(int i)
{
int j;
for (j=0;j<longueur-i;i++)
{
   cout << ' ';
}
for {j=0;j<i+1;j++)
{
  cout << '*';
}
cout << endl;
}
 
 
voila g pas verifier mais a mon avis ca devrai marcher

Reply

Marsh Posté le 23-11-2001 à 08:30:30    

c tres sympa a vous tous mais je n ai pas encore vu les commande memset, cout , endl et je ne connais que 3 librairies : stdio.h, conio.h et math.h ....
je vous donne le corriger jeudi !

Reply

Marsh Posté le 23-11-2001 à 08:33:41    

Ben les librairies c'est pas a apprendre par coeur :crazy::D

Reply

Marsh Posté le 23-11-2001 à 09:03:02    

mais comment tu sais lesquelles il faut utiliser ?

Reply

Marsh Posté le 23-11-2001 à 09:17:15    

Ben quand tu trouves une fonction generalement on te dit sous quel OS elle marche, quels sont les lib a inclure eventuellement, les *.h, etc...

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed