👤

Scrieţi un program C/C++ care citeşte de la tastatură două numere naturale din intervalul
[2,20], n și k, şi construieşte în memorie un tablou bidimensional cu n∙k linii şi n
coloane, numerotate începând cu 1, astfel încât fiecare coloană i (i∈[1,n]) memorează
un şir crescător de termeni cu proprietatea că primul termen este i, fiecare valoare apare
în şir de exact k ori și oricare doi termeni alăturați au valori egale sau consecutive.
Programul afişează pe ecran tabloul construit, fiecare linie a tabloului pe câte o linie a
ecranului, cu valorile aflate pe aceeaşi linie separate prin câte un spaţiu.
Exemplu: dacă n=4 și k=3, se afişează pe ecran tabloul alăturat.


1 2 3 4
1 2 3 4
1 2 3 4
2 3 4 5
2 3 4 5
2 3 4 5
3 4 5 6
3 4 5 6
3 4 5 6
4 5 6 7
4 5 6 7
4 5 6 7


Răspuns :

am intamplator problema rezolvata pe pbinfo de cativa ani,nu le am cu info,dar e verificata:)

#include<iostream>

using namespace std;

int main()

{

unsigned int n, k, matrice[21][21], p = 1;

cin >> n >> k;

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

{

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

{

for (int kk = 1; kk <= k; kk++)

{

matrice[i][p] = j + i;

p = p + 1;

}

}

p = 1;

}

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

{

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

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

cout << "\n";

}

return 0;

}

Vă mulțumim că ați ales să vizitați platforma noastră dedicată Informatică. Sperăm că informațiile disponibile v-au fost utile. Dacă aveți întrebări suplimentare sau aveți nevoie de sprijin, nu ezitați să ne contactați. Vă așteptăm cu drag și data viitoare! Nu uitați să adăugați site-ul nostru la favorite pentru acces rapid.


Wix Learning: Alte intrebari