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

---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box, and replicate and expand beyond their wildest dreams by throwing away the limits imposed by overbearing genetic r
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