sa ne marche pas !!!

sa ne marche pas !!! - C - Programmation

Marsh Posté le 13-02-2006 à 14:30:09    

:hello:  
voici mon probleme:
il s'agit d'un tableau de 8 lignes, 6 colonnes. je veut que celui ci se remplisse d'une croix dans 1 case sur 2 en partant de la [0,0] jusqu'au bout.  
jusque là pas de problème.  
seulement, on me demande à ce que ce tableau se remplisse en spirale, c'est à dire une croix sur [0,0], [0,2], [0,4], [1,5], [3,5], .... jusque au centre...  
  et là, je patauge. :pfff:  
 
alors de l'aide SVP.
merci d'avance    :jap:  

Reply

Marsh Posté le 13-02-2006 à 14:30:09   

Reply

Marsh Posté le 13-02-2006 à 14:31:34    

j'ai essaiyer avc ça mais .....:
 
 
 
#include<stdio.h>
main() {
int t[8][6],y_inf,y_sup,x_inf,x_sup,delta_x,delta_y,i,j,y,x;
 
 for(i=0;i<=7;i++)
 for(j=0;j<=5;j++)
 t[i][j]=0;
 
 
 y_inf=0; y_sup=7; x_inf=0; x_sup=5; y=0; x=0; delta_x=2; delta_y=0;
 
 while (x_inf<x_sup && y_inf<y_sup)
  {
  t[x][y]=1;
  if(x+delta_x>x_sup)
  { delta_x=0;
   delta_y=2;
   y_inf=y_inf+1;
  }
  if(x+delta_x<x_inf)
  { delta_x=0;
   delta_y=-2;
   y_sup=y_sup-1;
  }
  if(y+delta_y>y_sup)
  { delta_x=-2;
   delta_y=0;
   x_sup=x_sup-1;
  }
  if(y+delta_y<y_inf)
  { delta_x=2;
   delta_y=0;
   x_inf=x_inf+1;
  }
  x=x+delta_x;
  y=y+delta_y;
 }
  for(i=0;i<=7;i++)
  for(j=0;j<=5;j++)
  printf("%d\t",t[i][j]);
 }
 
 :whistle:

Reply

Marsh Posté le 13-02-2006 à 15:16:04    

Code :
  1. #include<stdio.h>
  2. main() {
  3. int t[8][6],y_inf,y_sup,x_inf,x_sup,delta_x,delta_y,i,j,y,x;
  4. for(i=0;i<=7;i++)
  5. for(j=0;j<=5;j++)
  6. t[i][j]=0;
  7. y_inf=0; y_sup=7; x_inf=0; x_sup=5; y=0; x=0; delta_x=2; delta_y=0;
  8. while (x_inf<x_sup && y_inf<y_sup)
  9.   {
  10.   t[x][y]=1;
  11.   if(x+delta_x>x_sup)
  12.   { delta_x=0;
  13.    delta_y=2;
  14.    y_inf=y_inf+1;
  15.   }
  16.   if(x+delta_x<x_inf)
  17.   { delta_x=0;
  18.    delta_y=-2;
  19.    y_sup=y_sup-1;
  20.   }
  21.   if(y+delta_y>y_sup)
  22.   { delta_x=-2;
  23.    delta_y=0;
  24.    x_sup=x_sup-1;
  25.   }
  26.   if(y+delta_y<y_inf)
  27.   { delta_x=2;
  28.    delta_y=0;
  29.    x_inf=x_inf+1;
  30.   }
  31.   x=x+delta_x;
  32.   y=y+delta_y;
  33. }
  34.   for(i=0;i<=7;i++)
  35.   for(j=0;j<=5;j++)
  36.   printf("%d\t",t[i][j]);
  37. }

Reply

Marsh Posté le 13-02-2006 à 21:21:18    

olivier318 a écrit :

:hello:  
voici mon probleme:
il s'agit d'un tableau de 8 lignes, 6 colonnes. je veut que celui ci se remplisse d'une croix dans 1 case sur 2 en partant de la [0,0] jusqu'au bout.  
jusque là pas de problème.  
seulement, on me demande à ce que ce tableau se remplisse en spirale, c'est à dire une croix sur [0,0], [0,2], [0,4], [1,5], [3,5], .... jusque au centre...  
  et là, je patauge. :pfff:  
 
alors de l'aide SVP.
merci d'avance    :jap:


 
Bon, vite fait voilà comment je vois le truc

  • une borne ligne haut
  • une borne ligne bas
  • une borne colonne gauche
  • une borne colonne droite

Phase 1: J'avance le long de la ligne haut depuis la colonne gauche jusqu'à la droite. Puis la ligne haut descend d'un cran
Phase 2: Je descend le long de la colonne de droite depuis la ligne haut jusqu'à la ligne bas. Puis la colonne droite recule d'un cran
Phase 3: Je recule long de la ligne bas depuis la colonne droite jusqu'à la gauche. Puis la ligne bas remonte d'un cran
Phase 4: Je monte le long de la colonne de gauche depuis la ligne bas jusqu'à la ligne haut. Puis la colonne gauche avance d'un cran
Et je recommence les 4 phase jusqu'à ce que j'arrive au centre (ligne haut rejoint ligne bas ou colonne gauche rejoint colonne droit)...


---------------
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
Reply

Marsh Posté le 13-02-2006 à 21:21:59    

c'est un pote a toi, tayl ? [:god]
 
l'orthographe vacillante me fait douter [:petrus75]

Message cité 1 fois
Message édité par chrisbk le 13-02-2006 à 21:22:23
Reply

Marsh Posté le 13-02-2006 à 22:30:13    

chrisbk a écrit :

c'est un pote a toi, tayl ? [:god]
 
l'orthographe vacillante me fait douter [:petrus75]


 
t'es pas le seul  [:petrus75]

Reply

Marsh Posté le 14-02-2006 à 17:53:39    

son probléme ma intéresser je l'ai reprit  :na:

Reply

Marsh Posté le 14-02-2006 à 17:54:59    

sans blague? [:moule_bite]


---------------
Can't buy what I want because it's free -
Reply

Marsh Posté le 14-02-2006 à 17:55:29    

mais bien sur [:ula]

Reply

Marsh Posté le 14-02-2006 à 17:55:35    

pour Sve@r
c'est ce que j'ai fais non !
 
mes quand je le déroule ca ne marche pas !!!!!! :heink:  
 
alors!!!!!!!!!!!! :pfff:

Reply

Marsh Posté le 14-02-2006 à 17:55:35   

Reply

Marsh Posté le 14-02-2006 à 17:56:39    

Alors tu réfléchis un peu tout seul, marre que tu nous saoules avec tes exos.[:mechant]


---------------
Can't buy what I want because it's free -
Reply

Marsh Posté le 14-02-2006 à 17:57:05    

olivier318 a écrit :

pour Sve@r
c'est ce que j'ai fais non !
 
mes quand je le déroule ca ne marche pas !!!!!! :heink:


Tu l'as déroulé manuellement sur papier pour savoir si chaque étape était correcte? [:itm]


Message édité par masklinn le 14-02-2006 à 18:01:03

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 14-02-2006 à 17:58:13    

pou skeye et lorill :
essayer plutot de résoudre se probléme si vous vous croyer doué :lol:  :lol:  :lol:  :lol:

Reply

Marsh Posté le 14-02-2006 à 18:00:11    

olivier318 a écrit :

pou skeye et lorill :
essayer plutot de résoudre se probléme si vous vous croyer doué :lol:  :lol:  :lol:  :lol:


Non.
La charte de ce forum explique clairement qu'on ne fait pas le boulot à la place des autres, et encore moins les exercices des étudiants.
Donc travaille, réfléchis, et arrête de nous spammer avec tes demandes de résolutions d'exercices.


---------------
Can't buy what I want because it's free -
Reply

Marsh Posté le 14-02-2006 à 18:09:45    

olivier318 a écrit :

pour Sve@r
c'est ce que j'ai fais non ?


J'en sais rien, j'ai pas regardé ton code. C'est peut-être parce qu'il y a trop de commentaires...
 

olivier318 a écrit :

mais quand je le déroule ca ne marche pas !!!!!! :heink:  
 
alors!!!!!!!!!!!! :pfff:


Alors déroule-le à la main (papier+crayon) et/ou réécris-le en supprimant les commentaires inutiles...


---------------
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
Reply

Marsh Posté le 14-02-2006 à 18:26:15    

bon dieu qu'il est pète-berles


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Sujets relatifs:

Leave a Replay

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