Informatică, întrebare adresată de alexandruvezeteu1405, 8 ani în urmă

#207
Scrieţi un program care citeşte de la tastatură un număr natural n şi construieşte în memorie o matrice cu n linii şi n coloane ale cărei elemente vor primi valori după cum urmează:

elementele aflate pe diagonala principală a matricei vor primi valoarea 0
elementele de pe prima coloană, cu excepţia celui aflat pe diagonala principală vor primi valoarea n
elementele de pe a doua coloană, cu excepţia celui aflat pe diagonala principală vor primi valoarea n-1

elementele de pe ultima coloană, cu excepţia celui aflat pe diagonala principală vor primi valoarea 1
Date de intrare
Programul citește de la tastatură numărul n.

Date de ieşire
Programul afișează pe ecran matricea construită, câte o linie a matricei pe câte o linie a ecranului, elementele fiecărei linii fiind separate prin câte un spaţiu.

Restricţii şi precizări
2≤n≤24

Exemplu
Intrare

4
Ieșire

0 3 2 1
4 0 2 1
4 3 0 1
4 3 2 0



#208
Scrieţi un program care citeşte de la tastatură două numere naturale nenule n şi m şi construieşte în memorie o matrice cu n linii şi m coloane astfel încât, parcurgând tabloul linie cu linie de sus în jos şi fiecare linie de la stânga la dreapta, să se obţină şirul primelor n*m pătrate perfecte impare , ordonat strict crescător.

Date de intrare
Programul citește de la tastatură numerele n şi m.

Date de ieşire
Programul afișează pe ecran matricea construită, câte o linie a matricei pe câte o linie a ecranului, elementele fiecărei linii fiind separate prin câte un spaţiu.

Restricţii şi precizări
2≤n,m≤20

Exemplu
Intrare

2 3
Ieșire

1 9 25
49 81 121


#213
Scrieţi un program care citeşte de la tastatură un număr natural n şi construieşte în memorie o matrice cu n linii şi n coloane ale cărei elemente vor primi valori după cum urmează: elementul din linia i şi coloana j primeşte ca valoare ultima cifră a produsului i*j (1≤i≤n şi 1≤j≤n).

Date de intrare
Programul citește de la tastatură numărul n

Date de ieşire
Programul afișează pe ecran matricea construită, câte o linie a matricei pe câte o linie a ecranului, elementele fiecărei linii fiind separate prin câte un spaţiu.

Restricţii şi precizări
2≤n≤24

Exemplu
Intrare

4
Ieșire

1 2 3 4
2 4 6 8
3 6 9 2
4 8 2 6


#206
Scrieţi un program care citeşte de la tastatură două numere naturale nenule n şi m şi care construieşte în memorie şi apoi afişează o matrice A cu n linii (numerotate de la 1 la n) şi m coloane (numerotate de la 1 la m) cu proprietatea că fiecare element Aij memorează cea mai mică dintre valorile indicilor i şi j ( 1≤i≤n, 1≤j≤m ).

Date de intrare
Programul citește de la tastatură numerele n şi m

Date de ieşire
Programul afișează pe ecran matricea construită, câte o linie a matricei pe câte o linie a ecranului, elementele fiecărei linii fiind separate prin câte un spaţiu.

Restricţii şi precizări
2≤m≤20 , 2≤n≤20

Exemplu
Intrare

4 5
Ieșire

1 1 1 1 1
1 2 2 2 2
1 2 3 3 3
1 2 3 4 4

#804
Se dă o matrice cu m linii şi n coloane şi elemente numere naturale cu cel mult 4 cifre fiecare. Să se determine coloanele matricei care au toate elementele egale cu aceeași valoare.

Date de intrare
Programul citește de la tastatură numerele m şi n, iar apoi m*n numere naturale, separate prin spaţii, reprezentând elementele matricei, linie cu linie.

Date de ieşire
Programul afișează pe ecran pentru fiecare coloană cu toate elementele egale, valoarea comună. Valorile afișate vor fi separate prin câte un spațiu, iar dacă nu există coloane cu toate elementele egale, se va afișa nu exista.

Restricţii şi precizări
2 ≤ m,n ≤ 50

#2800
Scrieți un program care citește de la tastatură două numere naturale din intervalul [3,50], n și m, și elementele unui tablou bidimensional cu n linii și m coloane, numere naturale din intervalul [0,104].

Programul modifică în memorie tabloul dat, atribuind valoarea elementului aflat pe ultima linie și pe ultima coloană a tabloului fiecărui element aflat pe conturul acestuia (pe prima linie, ultima linie, prima coloană, ultima coloană), apoi afișează pe ecran tabloul modificat, câte o linie a tabloului pe câte o linie a ecranului, elementele fiecărei linii fiind separate prin câte un spațiu.

Date de intrare
Programul citește de la tastatură numerele n m, iar apoi cele n • m elemente ale tabloului.

Date de ieșire
Programul va afișa pe ecran elementele tabloului modificat, conform cerinței.

Restricții și precizări
3 ≤ n,m ≤ 50
elementele tabloului aparțin intervalului [0,104]

Exemplu
Intrare

5 4
0 5 2 11
3 2 10 2
7 3 1 4
4 5 0 12
8 13 7 5
Ieșire

5 5 5 5
5 2 10 5
5 3 1 5
5 5 0 5
5 5 5 5

Răspunsuri la întrebare

Răspuns de StefanGroparu21
0

Răspuns:

207

#include<bits/stdc++.h>

using namespace std;

int main()

{

int n,a[25][25],m,x,o;

cin>>n;

x=o=m=n;

for(int i=1;i<=n;i++)

   for(int j=1;j<=n;j++)

   a[i][j]=-1;

while(o)

{

a[m][x]=0;

m--;

x--;

o--;

}

for(int j=1;j<=n;j++)

{

   for(int i=1;i<=n;i++)

   if(a[i][j]!=0)

       a[i][j]=n+1-j;

}

for(int i=1;i<=n;i++)

{

   if(i>1 and i<=n)

   cout<<'\n';

   for(int j=1;j<=n;j++)

       cout<<a[i][j]<<" ";

}

return 0;

}

208

#include<bits/stdc++.h>

using namespace std;

int main()

{

int n,m,a[21][21],k=1;

cin>>n>>m;

for(int i=1;i<=n;i++)

{

   for(int j=1;j<=m;j++)

   {

   a[i][j]=k*k;

k=k+2;

   }

}

for(int i=1;i<=n;i++)

{

   if(i>1 and i<=n)

       cout<<'\n';

   for(int j=1;j<=m;j++)

       cout<<a[i][j]<<" ";

}

return 0;

}

213

#include<bits/stdc++.h>

using namespace std;

int uc(int i, int j)

{

   int m=(i*j)%10;

   return m;

}

int main()

{

int n,a[25][25];

cin>>n;

for(int i=1;i<=n;i++)

   for(int j=1;j<=n;j++)

   a[i][j]=uc(i, j);

for(int i=1;i<=n;i++)

   {

       if(i>1 and i<=n)

           cout<<'\n';

   for(int j=1;j<=n;j++)

       cout<<a[i][j]<<" ";

   }

return 0;

}

206

#include<bits/stdc++.h>

using namespace std;

int minn(int i, int j)

{

   if(i>j)

       return j;

   else

       return i;

}

int main()

{

int n,m,a[25][25];

cin>>n>>m;

for(int i=1;i<=n;i++)

   for(int j=1;j<=m;j++)

   a[i][j]=minn(i,j);

   for(int i=1;i<=n;i++)

   {

       if(i>1 and i<=n)

       cout<<'\n';

   for(int j=1;j<=m;j++)

   cout<<a[i][j]<<" ";

   }

return 0;

}

804

#include<bits/stdc++.h>

using namespace std;

int main()

{

int m,n,a[51][51],k,ok,nr=0;

cin>>m>>n;

for(int i=1;i<=m;i++)

   for(int j=1;j<=n;j++)

   cin>>a[i][j];

for(int j=1;j<=n;j++)

{

   ok=1;

   k=a[1][j];

   for(int i=2;i<=m;i++)

       if(a[i][j]!=k)

       ok=0;

   if(ok==1)

   {

       cout<<k<<" ";

       nr++;

   }

}

if(nr==0)

   cout<<"nu exista";

return 0;

}

2800

#include<bits/stdc++.h>

using namespace std;

int main()

{

int n,m,a[51][51],k;

cin>>n>>m;

for(int i=1;i<=n;i++)

for(int j=1;j<=m;j++)

cin>>a[i][j];

k=a[n][m];

for(int i=1;i<=n;i++)

{

   if(i==1 || i==n)

   {

   for(int j=1;j<=m;j++)

   a[i][j]=k;

   }

   else

   {

       a[i][1]=a[i][m]=k;

   }

}

   for(int i=1;i<=n;i++)

{

   if(i>1 and i<=n)

       cout<<'\n';

for(int j=1;j<=m;j++)

   cout<<a[i][j]<<" ";

}

return 0;

}

Explicație:

Sper ca te-am ajutat!!!

(Le-am verificat pe toate si toate iau 100p pe pbinfo)

Alte întrebări interesante