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

Sa se scrie un program in C++ in care sa se arate transformarea unei matrici intr-un sir si invers.


netuioanaralucpb3570: pune si exemplu
Gredet: mai ai nevoie ?
Momoring: da, mai am
Momoring: pai cred ca trebuie in general
Momoring: nu am primit si exemplu
Gredet: Pot sa-l scriu in C, tu mai departe il vei transforma in C++ , diferente nu sunt multe, daca ceva intreaba sau net
Gredet: Daca folosesc functii v-or fi probleme ?
Momoring: nu, e ok

Răspunsuri la întrebare

Răspuns de Gredet
1

Răspuns:

#include <stdio.h>

#include <math.h>

int main(void)

{

   int alegere;

   printf("1. Din sir in matrice ?\n2. Din matrice in sir ?\n");

   scanf("%d", &alegere);

   system("cls");

   if(alegere==1)

        matrice();

        if(alegere==2)

           sir();

           if(alegere!=1 && alegere!=2)

        printf("Nu ati introdus varianta valabila");

   return 0;

}

void matrice()

{

  int array[100], x, c, n,y,j;

  int matrix[10][10];

   j=0;

  printf("Introduceti dimensiunea sirului care v-a fi convertat in matrice (exemplu: 4,9,16....): ");

  scanf("%d", &n);

  printf("Introduceti elementele sirului\n");

  for (c = 0; c < n; c++)

  {

      printf("array[%d]= ",c);

     scanf("%d", &array[c]);

  }

printf("\n");

      for(x = 0 ; x < sqrt(c) ; x++) {

       printf(" (");

       for(y = 0 ; y < sqrt(c) ; y++){

           printf("%d     ", array[j]);

           j++;

       }

       printf(")\n");

      }

return;

}

void sir()

{

   int array[100], x, c, n,y,j;

   j=0;

   int matrix[10][10];

   printf("Introduceti dimensiunea matricii care v-a fi convertat in sir (exemplu: 2,3,4....): ");

   scanf("%d", &n);

   for(x = 0 ; x < n ; x++)

       for(y = 0 ; y < n ; y++){

               printf("matrix[%d][%d]=",x,y);

            scanf("%d", &matrix[x][y]);

       }

     printf("Matricea are forma:\n");

    for(x = 0 ; x < n ; x++) {

       printf(" (");

       for(y = 0 ; y < n ; y++)

       {

           printf("%d     ", matrix[x][y]);

       }

       printf(")\n");

      }

printf("\n\n");

for(x = 0 ; x < n ; x++)

       for(y = 0 ; y < n ; y++)

       {

          array[j]=matrix[x][y];

          j++;

       }

      printf("Sirul v-a avea forma:\n\n");

   for(j=0;j<pow(n,2);j++)

       printf("array[%d]=  %d  |",j, array[j]);

       printf("\n");

return;

}

Explicație:

Alte întrebări interesante