Informatică, întrebare adresată de Vibe23, 9 ani în urmă

Un program c++ care afiseaza cel mai mic patrat perfect mai mare decat un numar ( citi de la tastatura ) dintre numerele citite in diagonala secundara a unei matrici patratice . Stiu ca enuntul e complicat ..sper sa ma fi exprimat bine .Programul sa mearga in code::blocks si sa fie cat mai simplu.


iulyus01: Matricea și dimensiunea matricii sunt citite de la tastatură?
Vibe23: Da

Răspunsuri la întrebare

Răspuns de iulyus01
2

n - dimensiunea matricii

a - numărul citit


#include <iostream>

using namespace std;

bool patratPerfect(int c) {

   for(int i = 1; i <= c / 2; i ++) {

       if(i * i == c) return true;

   }

   return false;

}

int main(){

   int a, n, m[20][20], min = -1;

   cin>>n>>a;

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

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

           cin>>m[i][j];

   for(int i = 0; i < n; i++) {

       int nr = m[i][n-i-1];

       if(nr > a && (nr < min || min == -1) && patratPerfect(nr)) min = nr;

   }

   

   cout<<min;

   

}

Alte întrebări interesante