Răspuns :
#include <iostream>
#include <fstream>
#include <math.h>
using namespace std;
int main()
{
ifstream f("matrice.in");
ofstream g("matrice.out");
int mat[50][50],n,i,j,t,c,k,x,u;
f>>n;
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
f>>mat[i][j];
for(i=2;i<n;i++)
{
t=mat[1][i];
mat[1][i]=mat[n-1+1][i];
mat[n-1+1][i]=t;
}
for(i=2;i<n;i++)
{
x=mat[i][1];
k=0;
u=x;
// aflu prima cifra
while(u>9)
u=u/10;
t=u;
/* facem algoritmul pana cand numarul se intoarce la cel initial adica cand ultima cifra devine prima cifra
exemplu :124 412 241 124 */
while(t!=x%10)
{
// exemplu 124 ==> 1240 ===> 1240-100=240 + 1=241
x=x*10-1000+u;
c=0;
for(j=2;j<sqrt(x);j++)
if(x%j==0)
c=c+1;
if(c==0)
{
k=1;
break;
}
}
// interschimb valorile
if(k==1)
{
t=mat[i][1];
mat[i][1]=mat[i][n-1+1];
mat[i][n-1+1]=t;
}
}
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
g<<mat[i][j]<<" ";
g<<endl;
}
return 0;
}
#include <fstream>
#include <math.h>
using namespace std;
int main()
{
ifstream f("matrice.in");
ofstream g("matrice.out");
int mat[50][50],n,i,j,t,c,k,x,u;
f>>n;
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
f>>mat[i][j];
for(i=2;i<n;i++)
{
t=mat[1][i];
mat[1][i]=mat[n-1+1][i];
mat[n-1+1][i]=t;
}
for(i=2;i<n;i++)
{
x=mat[i][1];
k=0;
u=x;
// aflu prima cifra
while(u>9)
u=u/10;
t=u;
/* facem algoritmul pana cand numarul se intoarce la cel initial adica cand ultima cifra devine prima cifra
exemplu :124 412 241 124 */
while(t!=x%10)
{
// exemplu 124 ==> 1240 ===> 1240-100=240 + 1=241
x=x*10-1000+u;
c=0;
for(j=2;j<sqrt(x);j++)
if(x%j==0)
c=c+1;
if(c==0)
{
k=1;
break;
}
}
// interschimb valorile
if(k==1)
{
t=mat[i][1];
mat[i][1]=mat[i][n-1+1];
mat[i][n-1+1]=t;
}
}
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
g<<mat[i][j]<<" ";
g<<endl;
}
return 0;
}
Vă mulțumim pentru vizita pe site-ul nostru dedicat Informatică. Sperăm că informațiile disponibile v-au fost utile și inspiraționale. Dacă aveți întrebări sau aveți nevoie de suport suplimentar, suntem aici pentru a vă ajuta. Ne face plăcere să vă revedem și vă invităm să adăugați site-ul nostru la favorite pentru acces rapid!