Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <math.h>
- using namespace std;
- int main() {
- int pb;
- cout << "Introdu numarul problemei:" << endl; cin >> pb;
- switch (pb) {
- case 1: {//V 44, pb.5
- int n;
- cout << "n="; cin >> n;//n<=23 && n>=0
- int **v = new int *[n];
- for (int i = 0; i < n; i++) v[i] = new int[n];
- cout << "Matricea formata este:" << endl;
- //elemente mai mici decat n, linii coloane cu sume diferite
- for (int i = 0; i < n; i++) {
- for (int j = 0; j < n; j++) {
- if (i == 0) v[i][j] = 1;
- else if (j == 0) v[i][j] = 1;
- else v[i][j] = v[i - 1][j - 1] + v[i - 1][j];
- }
- }
- for (int i = 0; i < n; i++) {
- for (int j = 0; j < n; j++)
- cout << v[i][j] << " ";
- cout << endl;
- }
- break;
- }
- case 2: {//V 48, pb.3
- //graf???????????
- break;
- }
- case 3: {// V 50, pb.4
- int n; cout << "n="; cin >> n;
- int **v = new int *[n];
- for (int i = 0; i < n; i++) v[i] = new int[n];
- //generare matrice
- int lin = 0, col = n - 1, k=1;
- int p;
- (n % 2) ? (p = n / 2 + 1) : (p = n / 2);
- for (int s = 0; s < p; s++) {
- for (int i = n-col-1; i < col; i++)
- v[lin][i] = k++;
- lin++;
- for (int i = lin - 1; i <= n-lin; i++)
- v[i][col] = k++;
- col--;
- for (int i = col; i >= n-col-2; i--)
- v[n - lin][i] = k++;
- for (int i = n - lin - 1; i >= lin; i--)
- v[i][n - col - 2] = k++;
- }
- cout << "Matricea formata este:" << endl;
- for (int i = 0; i < n; i++) {
- for (int j = 0; j < n; j++)
- cout << v[i][j] << " ";
- cout << endl;
- }
- break;
- }
- case 4: {// V 54, pb 5
- int n; cout << "n="; cin >> n;
- int **v = new int *[n];
- for (int i = 0; i < n; i++) v[i] = new int[n];
- int x; //de 3 cifre
- cout << "x="; cin >> x;
- for (int i = 0; i < n; i++) {
- for (int j = 0; j < n; j++)
- v[i][j] = (x / 10) % 10;
- }
- for (int i = 0; i < n; i++) {
- v[i][i] = x / 100;
- v[i][n - i - 1] = x % 10;
- }
- cout << "Matricea formata este:" << endl;
- for (int i = 0; i < n; i++) {
- for (int j = 0; j < n; j++)
- cout << v[i][j] << " ";
- cout << endl;
- }
- break;
- }
- case 5: {// V 63, pb.5
- int n; cout << "n="; cin >> n;
- int m; cout << "m="; cin >> m;
- int **v = new int *[n];
- for (int i = 0; i < n; i++) v[i] = new int[m];
- int k = 1;
- for (int i = 0; i < m; i++) {
- for (int j = 0; j < n; j++)
- v[j][i] = k++;
- }
- cout << "Matricea formata este:" << endl;
- for (int i = 0; i < n; i++) {
- for (int j = 0; j < m; j++)
- cout << v[i][j] << " ";
- cout << endl;
- }
- break;
- }
- case 6: {// V 68, pb.5
- int n; cout << "n="; cin >> n;
- int m; cout << "m="; cin >> m;
- int **v = new int *[n+1];
- int p = 1;
- for (int i = 0; i < n+1; i++) v[i] = new int[m+1];
- cout << "Introduceti elementele matricei:" << endl;
- for (int i = 1; i <= n; i++) {
- for (int j = 1; j <= m; j++) {
- cin >> v[i][j];
- if (!(i % 2)) {
- if (j % 2)
- if (v[i][j] >= 0)
- p *= v[i][j];
- }
- }
- }
- cout << "Ultima cifra este: " << p % 10 << endl;
- break;
- }
- case 7: {// V 74, pb.5
- int n; cout << "n="; cin >> n;
- int **v = new int *[n];
- for (int i = 0; i < n; i++) v[i] = new int[n];
- v[0][1] = v[0][0] = 1;
- //linia 0
- for (int i = 2; i < n; i++) v[0][i] = v[0][i - 1] + v[0][i - 2];
- //restul
- for (int i = 1; i < n; i++) {
- for (int j = 0; j < n; j++) {
- if (j == 0) {
- v[i][j] =v[i - 1][n - 1] + v[i - 1][n - 2];
- }
- if (j == 1) {
- v[i][j] = v[i][j - 1] + v[i - 1][n - 1];
- }
- if (j!=1 && j!=0)
- v[i][j] = v[i][j - 2] + v[i][j - 1];
- }
- }
- cout << "Matricea formata este:" << endl;
- for (int i = 0; i < n; i++) {
- for (int j = 0; j <n ; j++)
- cout << v[i][j] % 10 << " ";
- cout << endl;
- }
- break;
- }
- case 8:{// V 75, pb.5
- int n; cout << "n="; cin >> n;
- int **v = new int *[n + 1];
- for (int i = 0; i <= n; i++) v[i] = new int[n+1];
- for (int i = 1; i <= n; i++) {
- for (int j = 1; j <= n; j++) {
- v[i][j] = (i + j)*(i + j);
- }
- }
- cout << "Matricea formata este:" << endl;
- for (int i = 1; i <= n; i++) {
- for (int j = 1; j <= n; j++)
- cout << v[i][j] << " ";
- cout << endl;
- }
- break;
- }
- case 9: {// V 37 , pb.3-sub 3
- //permutare circulara cu k pozitii spre stg
- int n; cout << "n="; cin >> n;
- int k; cout << "k="; cin >> k;
- int *v = new int[n];
- cout << "Introdu elementele vectorului:" << endl;
- for (int i = 0; i < n; i++) cin >> v[i];
- int *v_nou = new int[n];
- for (int i = 0; i < n; i++) {
- if (i - k >= 0)
- v_nou[i - k] = v[i];
- else
- v_nou[n - abs(i-k)] = v[i];
- }
- cout << "Vectorul format este:" << endl;
- for (int i = 0; i < n; i++) cout << v_nou[i] << " ";
- }
- }
- system("pause");
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement