Advertisement
Guest User

Untitled

a guest
Jun 29th, 2017
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.00 KB | None | 0 0
  1. /*
  2.                                     les j
  3.  
  4.  
  5.                                 t[i][j] 0 1 2...nb
  6.                                        \__________
  7.                                                                  0  \_\_\_\_\_\
  8.                             les i         1  \_\_\_\_\_\
  9.                                     2 \_\_\_\_\_\
  10.                                      . \_\_\_\_\_\
  11.                                          nb \_\_\_\_\_\
  12.  
  13.  
  14.  
  15. */
  16.  
  17.  
  18.  
  19.  
  20.  
  21.  
  22.  
  23. 2.2 Verification carré magique
  24.  
  25. fonction saisietableau2DIM(tableau de reel t1[0....nb-1][0...nb-1]):entier
  26.  
  27.         nb,i,j:
  28.         entier
  29.         DEBUT {
  30.     t[0....nb-1][0...nb-1]
  31.     ecrire("Saisir la longueur d'un coté du carré")
  32.     lire(nb)
  33.  
  34.     TANT QUE(nb==0) faire{
  35.         ecrire("Resaisissez la valeur")
  36.         lire(t1[i][j])
  37.     } finTANTQUE
  38.     POUR i de 0 a nb-1 faire{
  39.  
  40.         POUR j de 0 a nb-1 faire{
  41.             ecrire("Saisir une valeur")
  42.             lire(t1[i][j])
  43.             TANT QUE(t1[i][j]==0) faire{
  44.                 ecrire("Resaisissez la valeur")
  45.                 lire(t1[i][j])
  46.             } finTANTQUE
  47.  
  48.  
  49.         } finPOUR
  50.  
  51.     } finPOUR
  52.     retourner nb
  53. } FIN
  54. ========================================================================================================
  55. var t:
  56. tableau d'entier [0...nb-1][0...nb-1]
  57. nb :entier
  58. i,j,k : entier
  59. res1,test :entier
  60. stop :booleen
  61. DEBUT
  62. res1,res2,test <--0
  63. nb <- saisietableau2DIM (t)//tableau de taille nb de coté
  64. i<--0
  65. k<--0
  66. j<--0
  67.  
  68. POUR j de 0 a nb-1 faire{// valeur de test des lignes
  69.     test<--test+t[i][j]
  70. }finPOUR
  71. stop=1
  72.  
  73.  
  74.         POUR i de 0 a nb-1 faire{
  75.             res1<-0
  76.             res2<-0
  77.             POUR j de 0 a nb-1 faire{
  78.                 res1<--res1+t[i][j]
  79.                 res2<--res2+t[j][i]
  80.             }finPOUR
  81.             si (test != res1 || test !=res2){
  82.                 alors stop <- 0
  83.             }finSI
  84.            
  85.        
  86.        
  87.            
  88.         }fin pour
  89.         i<--0
  90.         k<--0
  91.         j<--0
  92.         res1<-0
  93.         res2 <--0
  94.         POUR k de 0 a nb-1 faire{
  95.             res1<--res1+t[k][k]
  96.             res2<--res2+t[nb-1-k][k]
  97.             si (test != res1 || test !=res2){
  98.                 alors stop <- 0
  99.             } FINSI
  100.            
  101.         } fin pour
  102.        
  103.        
  104.    
  105.  
  106.  
  107. SI(stop)faire
  108.     ecrire("Le carré est magique")
  109. SINON
  110.     ecrire("Le carré n'est pas magique")
  111. FINSI
  112.  
  113. FIN
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement