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

Salut, ma poate ajuta cineva la aceasta tema? De mentionat trebuie rezolvata in C++ (int main)
ex1. Se citeste o matrice patratica, sa se numere cate elemente sunt numere palindrome sub diagonala principala.
ex2. Se citeste o matrice patratica, sa se calculeze numarul cifrelor elementelor aflate pe cele 2 diagonale.
ex3. Se citeste o matrice patratica, sa se calculeze suma tuturor divizorilor elementelor aflate deasupra diagonalei principale.
Multumesc!

Răspunsuri la întrebare

Răspuns de NoxNostraEst
1

Exercitiul 1:

#include <iostream>

using namespace std;

int main()

{

  int a[100][100], i, j, n, k = 0, c, o;

 

  cin >> n;

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

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

    cin >> a[i][j];

   

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

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

    if (i>j)

     {

        c = a[i][j]; // c = copie numar aflat pe pozitia respectiva

        o = 0; // o = variabila de memorare a oglinditului

        while (c != 0)

        {

            o = o * 10 + c % 10;

            c = c / 10;

        }

        if (a[i][j] == o)

         k++;

     }

   

   cout << k;

 

  return 0;

}

Exercitiul 2:

#include <iostream>

using namespace std;

int main()

{

  int a[100][100], i, j, n, k = 0;

 

  cin >> n;

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

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

    cin >> a[i][j];

   

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

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

    if (i == j or i+j == n+1)

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

      k = 1;

     else

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

      {

          k++;

          a[i][j] = a[i][j] / 10;

      }

     

   cout << k;

     

  return 0;

}

Exercitiul 3:

#include <iostream>

using namespace std;

int main()

{

  int a[100][100], i, j, n, s = 0, k;

 

  cin >> n;

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

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

    cin >> a[i][j];

   

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

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

    if (i<j)

     for (k = 1; k <= a[i][j]; k++)

      if (a[i][j]%k == 0)

       s = s + k;

       

   cout << s;

   

     

  return 0;

}

La 3 nu imi merge pe compilatorul meu exact asa cum trebuie, dar nu imi explic ce problema poate sa aiba in afara de faptul ca sunt folosite o gramada de functii for si if. Incearca sa vezi daca merge la tine. In caz de intrebari, posteaza-le in comentarii

Alte întrebări interesante