![]() |
|
في حال وجود أي مواضيع أو ردود
مُخالفة من قبل الأعضاء، يُرجى الإبلاغ عنها فورًا باستخدام أيقونة
( تقرير عن مشاركة سيئة )، و الموجودة أسفل كل مشاركة .
آخر المواضيع |
|
|
أدوات الموضوع | انواع عرض الموضوع |
![]() |
رقم المشاركة : 1 | ||||
|
![]() السلام عليكم structure coord
entier crd1 ; entier crd2 ; fin structure ; entier cote,i,j,ind ; entier tab[9][9]; {fonctions et procédures utilisées} {prédicat de test de parité d’un entier} fonction booléen paire(entier n) ; booléen result ; si n modulo 2=0 alors result ¬ true ; sinon result ¬ false; fin si; fin fonction paire ; {procédure de changement de ligne avec traçage du tableau} procédure N_L(entier cote) ; entier x ; nouvelle_ligne( ); pour x :1 à cote écrire(²___²) ; fin pour ; nouvelle_ligne( ) ; écrire(²|²) ; fin procédure N_L ; {fonction qui transforme les anciennes coordonnées d’un nombre du tableau en nouvelles} fonction coord place(entier tab[9][9], coord a_coord) ; coord n_coord ; si a_coord.crd1 < cote alors n_coord.crd1 ¬ a_coord.crd1 + 1 ; sinon n_coord.crd1 ¬ 1 ; fin si ; si a_coord.crd2 < cote alors n_coord.crd2 ¬ a_coord.crd2 + 1 ; sinon n_coord.crd2 ¬ 1 ; fin si ; tant que tab[n_coord.crd1][n_coord.crd2] <> 0 faire n_coord.crd1 ¬ a_coord.crd1 ; n_coord.crd2 ¬ a_coord.crd2 + 2; si n_coord.crd2 = cote +1 alors n_coord.crd.2 ¬ 1; sinon si n_coord.crd2 = cote + 2 alors n_coord.crd2 ¬ 2 fin si ; fin si ; fin tant que ; fin fonction place ; {programme principal} Début Programme principal coord _coord ; écrire(²Donner une valeur impaire du côté du carré magique (maximum 9) ²) ; lire(²cote²) ; si cote > 9 ou paire(cote) ou cote < 0 alors écrire(²Valeur incorrecte ²) ; sinon si cote = 1 alors écrire (²_²) ; nouvelle_ligne( ) ; écrire(²|1|²) ; nouvelle_ligne( ) ; écrire(²_²) ; sinon {traitement} {initialisation du tableau} pour j :1 à cote faire pour i :1 à cote faire tab[i][j] ¬0 ; fin pour fin pour i ¬cote/2 + 1 ; {place le 1 au milieu horizontalement} j ¬cote/2 + 2 ; {place le 1 sous le milieu verticalement} {placement des termes suivants} ind ¬ 1 ; faire tab[i][j] ¬ ind ; _coord.crd1 ¬ i; _coord.crd2 ¬ j; i ¬ place(tab, _coord).crd1; j ¬ place(tab, _coord).crd2; ind ¬ ind + 1; tant que ind <> cote * cote; {affichage} pour j :1 à cote faire N_L(cote) ; pour i :1 à cote faire si tab[i][j]<9 alors écrire(² ²) ; {espace pour l’alignement du tableau} fin si écrire(tab[i][j]) ; écrire(²|²) ; fin pour fin pour fin si fin si Fin Programme principal
|
||||
![]() |
الكلمات الدلالية (Tags) |
un carré magique |
|
|
المشاركات المنشورة تعبر عن وجهة نظر صاحبها فقط، ولا تُعبّر بأي شكل من الأشكال عن وجهة نظر إدارة المنتدى
المنتدى غير مسؤول عن أي إتفاق تجاري بين الأعضاء... فعلى الجميع تحمّل المسؤولية
Powered by vBulletin .Copyright آ© 2018 vBulletin Solutions, Inc