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

#458
Cerinţa
Se citește numărul natural impar n, şi două caractere c şi d. Să se afișeze următorul pătrat, format din n linii şi n coloane, în care cele două caractere alternează:

cdc...dc
dcd...cd
....
dcd...cd
cdc...dc
Date de intrare
Programul citește de la tastatură numărul n şi caracterele c d .

Date de ieşire
Programul afișează pe ecran pătratul descris mai sus.

Restricţii şi precizări
1 ≤ n ≤ 19
c şi d sunt caractere cu codul ASCII cuprins între 33 şi 126, inclusiv.



Exemplu
Intrare

5 * #
Ieșire

*#*#*
#*#*#
*#*#*
#*#*#
*#*#*
ma poate ajuta cineva?

Răspunsuri la întrebare

Răspuns de ovdumi
2

Răspuns:

#include <iostream>

using namespace std;

int main()

{

   int n,i,j;

   char c,d;

   cin>>n;

   cin>>c>>d;

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

   {

       if (i%2!=0)

       {

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

           {

               cout<<c<<d;

           }

           cout<<c<<endl;

       }

       else

       {

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

           {

               cout<<d<<c;

           }

           cout<<d<<endl;

       }

   }

   return 0;

}

Explicație:

Daca i este impar atunci trebuie sa se afiseze cdcdc...cdc. Intrucat trebuie sa fie n caractere pe un rand si n este impar, inseamna ca avem (n-1)/2 perechi "cd" si un "c" liber. Daca i este par, este invers. Dupa ce afisam ultimul caracter, care nu are pereche, trecem la urmatorul rand.

Alte întrebări interesante