Comutare navigație
pbInfo.ro
Probleme
Probleme - clasa a IX-a
Probleme - clasa a X-a
Probleme - clasa a XI-a
Probleme din concursuri
Căutare problemă
Exerciții
Programează cu Blockly
Desenează cu Processing
Exersează SQL
Soluţii
Resurse
Resurse pentru clasa a IX-a
Resurse pentru clasa a X-a
Resurse pentru clasa a XI-a
Subiecte bacalaureat
Ajutor
Autentificare
Înregistrare
×
Autentificare
Utilizator sau email
Parola
Acest site foloseşte cookies. Navigând în continuare, vă exprimaţi acordul asupra folosirii cookie-urilor.
Îti place pbInfo? Atunci acceptă-l cu totul! Dezactivează modulul de blocare a reclamelor!
×
Lista scripturi
Script Nou
Ajutor
"Generare de patrate magice de ordin 4k,4k+1,4k+3 - copie" - Processing
ID
Autor
Duplicat din
Ultima modificare
#4995
Vasile Andreea (_vasi09_)
Generare de patrate magice de ordin 4k,4k+1,4k+3
Marti, 24 mai 2022, 16:58
let n=21,len,lim; let canvwidth=1900,canvheight=1900,cnt=1; let x,y,i=1,j=1; let i1=1,j1=1; let a=[],b=[]; function setup() { createCanvas(canvwidth, canvheight); background(190,19,55); for(i=1;i<1000;i++) {a[i]=[]; for(j=1;j<1000;j++) a[i][j]=0; } for(i=1;i<1000;i++) {b[i]=[]; for(j=1;j<1000;j++) b[i][j]=0; } if((n-1)%4==0 ||(n-3)%4==0) { k=1; for(l=0; l
(n-1)/2; l--) { c=n-1+l; for (i=1; i<=(n-1)/2; i++) a[l+i-1][c-i-n+1] = a[l+i-1][c-i+1]; } for (c=n; c>(n-1)/2; c--) { l=n-1+c; for (i=1; i<=(n-1)/2; i++) a[l-i-n+1][c-1+i]=a[l-i+1][c+i-1]; } for (l=n; l>(n-1)/2; l--) { c=n+1-l; for (i=1; i<=(n-1)/2; i++) a[l+i-1][c-1+i+n]=a[l+i-1][c+i-1]; } i1=1; lim=n; j1=1; } if(n%4==0) { for(i=1; i<=n; i++) for(j=1; j<=n; j++) { a[i][j]=cnt;cnt++;} for(i=1; i<=n/4; i++) for(j=1; j<=n/4; j++) b[i][j]=a[i][j]; for(i=n-n/4+1; i<=n; i++) for(j=1; j<=n/4; j++) b[i][j]=a[i][j]; for(i=1; i<=n/4; i++) for(j=n-n/4+1; j<=n; j++) b[i][j]=a[i][j]; for(i=n-n/4+1; i<=n; i++) for(j=n-n/4+1; j<=n; j++) b[i][j]=a[i][j]; for(i=n/4+1; i<=n-n/4; i++) for(j=n/4+1; j<=n-n/4; j++) b[i][j]=a[i][j]; i1=1; j1=1; lim=n; } } function draw() { len=700/n+20; x=i1*len; y=j1*len; strokeWeight(6); stroke(70,0,70); fill(0); rect(x,y,len,len); noStroke(); fill(255); textSize(20); if(n%4==0) { if(b[j1][i1]!=0) text(b[j1][i1],x+len/2-9,y+len/2+5); else text(a[n-j1+1][n-i1+1],x+len/2-9,y+len/2+5); } if((n-1)%4==0 ||(n-3)%4==0) text(a[j1+(n+1)/2-1][i1+(n+1)/2-1],x+len/2-15,y+len/2+5); if(i1
Duplicare
Executare
Cod
×
Cod HTML
<iframe sandbox="allow-scripts" src="/p5js/index.php?id=4995" style="width:408px; height:408px;border:solid 1px gray; overflow: scroll;"></iframe>
×
Duplicare script
Denumirea noului script
Du-te sus!