Ir ao conteúdo
  • Cadastre-se

C++ Aumentar o tamanho da matriz sem deixar o Código imenso


Ir à solução Resolvido por kgin,

Posts recomendados

//Fiz esse código pra facilitar alguns cálculos da faculdade e só conseguir calcular na situação específica de uma matriz 4x4, gostaria de saber se tem como fazer uma matriz de 2x2 até 30x30 pra poder escolher o tamnaho que eu quero usar, sem deixar o código muito grande.

 

 

<#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
#include <stdbool.h>
#include <iostream>
#include <string>
#include <conio.h>

using namespace std;

int main(void)
{
    setlocale(LC_ALL,"portuguese");
    
    int hg, op=0; 
    
    while(op==0){
        printf("\n\n Digite 0 para calcular NOVA \n Digite 1 para calcular AHP \n Digite 2 para Finalizar o Aplicativo: ");
        scanf("%i",&hg);
    
        switch(hg)
        {
            case(0):
                printf("SENDO FEITO ");
                
            break;
            
            case(2):
                printf("OPERAÇÃO FINALIZADA");
                op=1;
            
            
            break;
            
            default:
                printf("\nOPÇÃO INVÁLIDA!");
            
            break;
            
            case(1):
    
    
    //Variáveis
      char s1[61], s2[61], s3[61], s4[61],  s5[61], s6[61], s7[61], s8[61];
      float a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p;
    float maior, menor;
    float rt1, rt2, rt3,rt4;
    float x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16;
    float x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32;
    float y1, y2, y3, y4, y5, y6, y7, y8, y9, y10, y11, y12, y13, y14, y15, y16;
    float y17, y18, y19, y20, y21, y22, y23, y24, y25, y26, y27, y28, y29, y30, y31, y32;
    float z1, z2, z3, z4, z5, z6, z7, z8, z9, z10, z11, z12, z13, z14, z15, z16;
    float z17, z18, z19, z20, z21, z22, z23, z24, z25, z26, z27, z28, z29, z30, z31, z32;
    float o1, o2, o3, o4, o5, o6, o7, o8, o9, o10, o11, o12, o13, o14, o15, o16;
    float o17, o18, o19, o20, o21, o22, o23, o24, o25, o26, o27, o28, o29, o30, o31, o32;
    float q=1, r=3, s=5, t=7, u=9;
    float som1, som2, som3, som4, som5;
    float som6, som7, som8, som9, som10;
    float v1, v2, v3, v4;
    float v5, v6, v7, v8;

           //Coleta os Nomes das Colunas
          printf("Digite o nome das colunas: ");
           scanf("%s %s %s %s", s1, s2, s3, s4);
  
          //Coleta os Nomes das Linhas
           printf("Digite o nome das linhas: ");
           scanf("%s %s %s %s", s5, s6, s7, s8);
  
           //Limpa a Tela
          system("clear||cls");   
  
           //Exibe a Tabela Vazia
          printf("DADOS     %s     %s     %s     %s     ", s1, s2, s3, s4);
          printf("\n\n\n%s\n\n\n%s\n\n\n%s\n\n\n%s\n\n\n\n\n\n", s5, s6, s7, s8);
         
         //Coleta os Valores da Primeira Linha
         cout <<"Digite os valores da primeira linha: ";
         cin >> a >> e >> i >> m;
         
         //Limpa a Tela
          system("clear||cls");
         
         //Exibe a Tabela com a Primeira Linha
         printf("DADOS     %s     %s     %s     %s     ", s1, s2, s3, s4);
         printf("\n\n\n%s       ",s5);
         cout <<a;
         printf("       ");
         cout <<e;
         printf("         ");
         cout <<i;
         printf("           ");
         cout <<m;
         printf("\n\n\n%s\n\n\n%s\n\n\n%s\n\n\n\n\n\n", s5, s6, s7, s8);
         
         //Coleta os Valores da Segunda Linha
         cout <<"Digite os valores da segunda linha: ";
         cin >> b >> f >> j >> n;
         
         //Limpa a Tela
          system("clear||cls");
          
          //Exibe a Tabela com a SegundaLinha
         printf("DADOS     %s     %s     %s     %s     ", s1, s2, s3, s4);
         printf("\n\n\n%s       ",s5);
         cout <<a;
         printf("       ");
         cout <<e;
         printf("         ");
         cout <<i;
         printf("           ");
         cout <<m;
         printf("\n\n\n%s       ",s5);
         cout <<b;
         printf("       ");
         cout <<f;
         printf("         ");
         cout <<j;
         printf("           ");
         cout <<n;
         printf("\n\n\n%s\n\n\n%s\n\n\n\n\n\n", s6, s7, s8);
         
         //Coleta os Valores da Terceira Linha
         cout <<"Digite os valores da terceira linha: ";
         cin >> c >> g >> k >> o;
         
         //Limpa a Tela
          system("clear||cls");
          
          //Exibe a Tabela com a Terceira Linha
         printf("DADOS     %s     %s     %s     %s     ", s1, s2, s3, s4);
         printf("\n\n\n%s       ",s5);
         cout <<a;
         printf("       ");
         cout <<e;
         printf("         ");
         cout <<i;
         printf("           ");
         cout <<m;
         printf("\n\n\n%s       ",s6);
         cout <<b;
         printf("       ");
         cout <<f;
         printf("         ");
         cout <<j;
         printf("           ");
         cout <<n;
         printf("\n\n\n%s       ",s7);
         cout <<c;
         printf("       ");
         cout <<g;
         printf("         ");
         cout <<k;
         printf("           ");
         cout <<o;
         printf("\n\n\n%s       \n\n\n\n",s8);
         
         //Coleta os Valores da Quarta Linha
         cout <<"Digite os valores da quarta linha: ";
         cin >> d >> h >> l >> p;
         
         //Limpa a Tela
          system("clear||cls");
          
          //Exibe a Tabela com a Quarta Linha
         printf("DADOS     %s     %s     %s     %s     ", s1, s2, s3, s4);
         printf("\n\n\n%s       ",s5);
         cout <<a;
         printf("       ");
         cout <<e;
         printf("         ");
         cout <<i;
         printf("           ");
         cout <<m;
         printf("\n\n\n%s       ",s6);
         cout <<b;
         printf("       ");
         cout <<f;
         printf("         ");
         cout <<j;
         printf("           ");
         cout <<n;
         printf("\n\n\n%s       ",s7);
         cout <<c;
         printf("       ");
         cout <<g;
         printf("         ");
         cout <<k;
         printf("           ");
         cout <<o;
         printf("\n\n\n%s       ",s8);
         cout <<d;
         printf("       ");
         cout <<h;
         printf("         ");
         cout <<l;
         printf("           ");
         cout <<p;
         
             //Pula uma Linha
             printf("\n");
         
            //Encontra o maior e o menor valor da Primeira Coluna
             if(a > b){maior = a; menor = b;}
             else{ maior = b; menor = a;}
             if(maior > c){maior = maior;}
             else{maior = c;}
             if(c < menor){menor = c;}
             if(maior > d){maior = maior;}
             else{maior = d;}
             if(d < menor){menor = d;}

            //REGRA DE TRÊS PRIMEIRA COLUNA DA TABELA PRINCIPAL
            rt1 = maior-menor;
            
            //Valores de X Diagonais
            x1 = 1;   x6 = 1;   x11 = 1;   x16 = 1;
            
            //Contas Primeira Coluna
            x5 = a-b;          x9 = a-c;          x13 = a-d;
            y1 = x5 * 9;       y2 = x9 * 9;        y3 = x13 * 9;
            z1 = y1 / rt1;     z2 = y2 / rt1;     z3 = y3 / rt1;
            
            //Positivos                   //Negativos
                if(z1 == 1){o3 = 1;}          if(z1 < -1){o1 = 0.33;}
              if(z1 > 1){o3 = 3;}           if(z1 == -3){o1 = 0.33;}
             if(z1 == 3){o3 = 3;}          if(z1 < -3){o1 = 0.20;}
             if(z1 > 3){o3 = 5;}           if(z1 == -5){o1 = 0.20;}
             if(z1 == 5){o3 = 5;}          if(z1 < -5){o1 = 0.14;}
             if(z1 > 5){o3 = 7;}           if(z1 == -7){o1 = 0.14;}
             if(z1 == 7){ o3 = 7;}         if(z1 < -7){o1 = 0.11;}
             if(z1 == 9){o3 = 9;}          if(z1 == -9){o1 = 0.11;}
             if(z1 > 7){o3 = 9;} 
                if(z2 == 1){o2 = 1;}          if(z2 < -1){o2 = 0.33;}
              if(z2 > 1){o2 = 3;}           if(z2 == -3){o2 = 0.33;}
             if(z2 == 3){o2 = 3;}          if(z2 < -3){o2 = 0.20;}
             if(z2 > 3){o2 = 5;}           if(z2 == -5){o2 = 0.20;}
             if(z2 == 5){o2 = 5;}          if(z2 < -5){o2 = 0.14;}
             if(z2 > 5){o2 = 7;}           if(z2 == -7){o2 = 0.14;}
             if(z2 == 7){o2 = 7;}          if(z2 < -7){o2 = 0.11;}
             if(z2 == 9){o2 = 9;}          if(z2 == -9){o2 = 0.11;}
             if(z2 > 7){o2 = 9;}    
                if(z3 == 1){o3 = 1;}          if(z3 < -1){o3 = 0.33;}
              if(z3 > 1){o3 = 3;}           if(z3 == -3){o3 = 0.33;}
             if(z3 == 3){o3 = 3;}          if(z3 < -3){o3 = 0.20;}
             if(z3 > 3){o3 = 5;}           if(z3 == -5){o3 = 0.20;}
             if(z3 == 5){o3 = 5;}          if(z3 < -5){o3 = 0.14;}
             if(z3 > 5){o3 = 7;}           if(z3 == -7){o3 = 0.14;}
             if(z3 == 7){ o3 = 7;}         if(z3 < -7){o3 = 0.11;}
             if(z3 == 9){o3 = 9;}          if(z3 == -9){o3 = 0.11;}
             if(z3 > 7){o3 = 9;}
             
            //Contas Segunda Coluna  
            x2 = b-a;          x10 = b-c;          x14 = b-d;
            y4 = x2 * 9;       y5 = x10 * 9;       y6 = x14 * 9;
            z4 = y4 / rt1;     z5 = y5 / rt1;      z6 = y6 / rt1;
            
            //Positivos                   //Negativos
                if(z4 == 1){o4 = 1;}          if(z4 < -1){o4 = 0.33;}
              if(z4 > 1){o4 = 3;}           if(z4 == -3){o4 = 0.33;}
             if(z4 == 3){o4 = 3;}          if(z4 < -3){o4 = 0.20;}
             if(z4 > 3){o4 = 5;}           if(z4 == -5){o4 = 0.20;}
             if(z4 == 5){o4 = 5;}          if(z4 < -5){o4 = 0.14;}
             if(z4 > 5){o4 = 7;}           if(z4 == -7){o4 = 0.14;}
             if(z4 == 7){o4 = 7;}          if(z4 < -7){o4 = 0.11;}
             if(z4 == 9){o4 = 9;}          if(z3 == -9){o4 = 0.11;}
             if(z4 > 7){o4 = 9;}
                if(z5 == 1){o5 = 1;}          if(z5 < -1){o5 = 0.33;}
              if(z5 > 1){o5 = 3;}           if(z5 == -3){o5 = 0.33;}
             if(z5 == 3){o5 = 3;}          if(z5 < -3){o5 = 0.20;}
             if(z5 > 3){o5 = 5;}           if(z5 == -5){o5 = 0.20;}
             if(z5 == 5){o5 = 5;}          if(z5 < -5){o5 = 0.14;}
             if(z5 > 5){o5 = 7;}           if(z5 == -7){o5 = 0.14;}
             if(z5 == 7){o5 = 7;}          if(z5 < -7){o5 = 0.11;}
             if(z5 == 9){o5 = 9;}          if(z5 == -9){o5 = 0.11;}
             if(z5 > 7){o5 = 9;}
                if(z6 == 1){o6 = 1;}          if(z6 < -1){o6 = 0.33;}
              if(z6 > 1){o6 = 3;}           if(z6 == -3){o6 = 0.33;}
             if(z6 == 3){o6 = 3;}          if(z6 < -3){o6 = 0.20;}
             if(z6 > 3){o6 = 5;}           if(z6 == -5){o6 = 0.20;}
             if(z6 == 5){o6 = 5;}          if(z6 < -5){o6 = 0.14;}
             if(z6 > 5){o6 = 7;}           if(z6 == -7){o6 = 0.14;}
             if(z6 == 7){o6 = 7;}          if(z6 < -7){o6 = 0.11;}
             if(z6 == 9){o6 = 9;}          if(z6 == -9){o6 = 0.11;}
             if(z6 > 7){o6 = 9;}
             
            //Contas Terceira Coluna  
            x3 = c-a;          x7 = c-b;          x15 = c-d;
            y7 = x3 * 9;       y8 = x7 * 9;       y9 = x15 * 9;
            z7 = y7 / rt1;     z8 = y8 / rt1;     z9 = y9 / rt1;
            
            //Positivos                   //Negativos
                if(z7 == 1){o7 = 1;}          if(z7 < -1){o7 = 0.33;}
              if(z7 > 1){o7 = 3;}           if(z7 == -3){o7 = 0.33;}
             if(z7 == 3){o7 = 3;}          if(z7 < -3){o7 = 0.20;}
             if(z7 > 3){o7 = 5;}           if(z7 == -5){o7 = 0.20;}
             if(z7 == 5){o7 = 5;}          if(z7 < -5){o7 = 0.14;}
             if(z7 > 5){o7 = 7;}           if(z7 == -7){o7 = 0.14;}
             if(z7 == 7){o7 = 7;}          if(z7 < -7){o7 = 0.11;}
             if(z7 == 9){o7 = 9;}          if(z7 == -9){o7 = 0.11;}
             if(z7 > 7){o7 = 9;}
                if(z8 == 1){o8 = 1;}          if(z8 < -1){o8 = 0.33;}
              if(z8 > 1){o8 = 3;}           if(z8 == -3){o8 = 0.33;}
             if(z8 == 3){o8 = 3;}          if(z8 < -3){o8 = 0.20;}
             if(z8 > 3){o8 = 5;}           if(z8 == -5){o8 = 0.20;}
             if(z8 == 5){o8 = 5;}          if(z8 < -5){o8 = 0.14;}
             if(z8 > 5){o8 = 7;}           if(z8 == -7){o8 = 0.14;}
             if(z8 == 7){o8 = 7;}          if(z8 < -7){o8 = 0.11;}
             if(z8 == 9){o8 = 9;}          if(z8 == -9){o8 = 0.11;}
             if(z8 > 7){o8 = 9;}
                if(z9 == 1){o9 = 1;}          if(z9 < -1){o9 = 0.33;}
              if(z9 > 1){o9 = 3;}           if(z9 == -3){o9 = 0.33;}
             if(z9 == 3){o9 = 3;}          if(z9 < -3){o9 = 0.20;}
             if(z9 > 3){o9 = 5;}           if(z9 == -5){o9 = 0.20;}
             if(z9 == 5){o9 = 5;}          if(z9 < -5){o9 = 0.14;}
             if(z9 > 5){o9 = 7;}           if(z9 == -7){o9 = 0.14;}
             if(z9 == 7){o9 = 7;}          if(z9 < -7){o9 = 0.11;}
             if(z9 == 9){o9 = 9;}          if(z9 == -9){o9 = 0.11;}
             if(z9 > 7){o9 = 9;}            

            //Quarta Coluna  
            x4 = d-a;          x8 = d-b;         x12 = d-c;
            y10 = x4 * 9;      y11 = x8 * 9;     y12 = x12 * 9;
            z10 = y10 / rt1;   z11 = y11 / rt1;  z12 = y12 / rt1;
            
            //Positivos                   //Negativos
                if(z10 == 1){o10 = 1;}        if(z10 < -1){o10 = 0.33;}
              if(z10 > 1){o10 = 3;}         if(z10 == -3){o10 = 0.33;}
             if(z10 == 3){o10 = 3;}        if(z10 < -3){o10 = 0.20;}
             if(z10 > 3){o10 = 5;}         if(z10 == -5){o10 = 0.20;}
             if(z10 == 5){o10 = 5;}        if(z10 < -5){o10 = 0.14;}
             if(z10 > 5){o10 = 7;}         if(z10 == -7){o10 = 0.14;}
             if(z10 == 7){o10 = 7;}        if(z10 < -7){o10 = 0.11;}
             if(z10 == 9){o10 = 9;}        if(z10 == -9){o10 = 0.11;}
             if(z10 > 7){o10 = 9;}
                if(z11 == 1){o11 = 1;}        if(z11 < -1){o11 = 0.33;}
              if(z11 > 1){o11 = 3;}         if(z11 == -3){o11 = 0.33;}
             if(z11 == 3){o11 = 3;}        if(z11 < -3){o11 = 0.20;}
             if(z11 > 3){o11 = 5;}         if(z11 == -5){o11 = 0.20;}
             if(z11 == 5){o11 = 5;}        if(z11 < -5){o11 = 0.14;}
             if(z11 > 5){o11 = 7;}         if(z11 == -7){o11 = 0.14;}
             if(z11 == 7){o11 = 7;}        if(z11 < -7){o11 = 0.11;}
             if(z11 == 9){o11 = 9;}        if(z11 == -9){o11 = 0.11;}
             if(z11 > 7){o11 = 9;}
                if(z12 == 1){o12 = 1;}        if(z12 < -1){o12 = 0.33;}
              if(z12 > 1){o12 = 3;}         if(z12 == -3){o12 = 0.33;}
             if(z12 == 3){o12 = 3;}        if(z12 < -3){o12 = 0.20;}
             if(z12 > 3){o12 = 5;}         if(z12 == -5){o12 = 0.20;}
             if(z12 == 5){o12 = 5;}        if(z12 < -5){o12 = 0.14;}
             if(z12 > 5){o12 = 7;}         if(z12 == -7){o12 = 0.14;}
             if(z12 == 7){o12 = 7;}        if(z12 < -7){o12 = 0.11;}
             if(z12 == 9){o12 = 9;}        if(z12 == -9){o12 = 0.11;}
             if(z12 > 7){o12 = 9;}
             
             //Soma Primeira Tabela
             som1 = x1 + o1 + o2 + o3;
             som2 = o4 + x6 + o5 + o6;
             som3 = o7 + o8 + x11 + o9;
             som4 = o10 + o11 + o12 + x16;
             
             //Acha o  "V"
             v1 = x1 / som1 + o4 / som2 + o7 / som3 + o10 / som4;
             v2 = o1 / som1 + x6 / som2 + o8 / som3 + o11 / som4;
             v3 = o2 / som1 + o5 / som2 + x11 / som3 + o12 / som4;
             v4 = o3 / som1 + o6 / som2 + o9 / som3 + x16 / som4;
             som5 = v1 / 4 + v2 / 4 + v3 / 4 + v4 / 4;  
              
         //Exibe a Primeira Tabela 
         printf("             %s\n", s1);
         printf("DADOS     %s     %s     %s     %s     V", s5, s6, s7, s8);
         printf("\n\n\n%s       ",s5);
         cout <<x1;
         printf("       ");
         cout <<o4;
         printf("         ");
         cout <<o7;
         printf("           ");
         cout <<o10;
         printf("           ");
         cout <<v1/4;
         printf("\n\n\n%s       ",s6);
         cout <<o1;
         printf("       ");
         cout <<x6;
         printf("         ");
         cout <<o8;
         printf("           ");
         cout <<o11;
         printf("           ");
         cout <<v2/4;
         printf("\n\n\n%s       ",s7);
         cout <<o2;
         printf("       ");
         cout <<o5;
         printf("         ");
         cout <<x11;
         printf("           ");
         cout <<o12;
         printf("           ");
         cout <<v3/4;
         printf("\n\n\n%s       ",s8);
         cout <<o3;
         printf("       ");
         cout <<o6;
         printf("         ");
         cout <<o9;
         printf("           ");
         cout <<x16;
         printf("           ");
         cout <<v4/4;
         printf("\n\n\nSOMA       ");
         cout <<som1;
         printf("       ");
         cout <<som2;
         printf("         ");
         cout <<som3;
         printf("           ");
         cout <<som4;
         printf("           ");
         cout <<som5;
         //Pula uma Linha
         printf("\n");    
         
         break;
         
         
        }
    }

            /*
            PREÇO VIDA MANUTENÇÃO PRODUÇÃO
            OP1 OP2 OP3 OP4
            3500 10 300 1000
            2700 08 315 850
            3100 12 280 950
            4000 12 305 975
            */
      getch();
 return 0;
}>

Link para o comentário
Compartilhar em outros sites

@Fídias Torres Isso funciona?

 

as informações do seu programa estão muito espalhadas, coisas como

23 minutos atrás, Fídias Torres disse:

float som1, som2, som3, som4, som5;
    float som6, som7, som8, som9, som10;

você poderia declarar assim

	float som[10];

e acessar assim

	som[0] = 33.0f;
	som[1] = 13.49f

 

Usar estruturas (structs) ajudaria também para organizar o código.

Link para o comentário
Compartilhar em outros sites

@Fídias Torres Poder ajudar eu até posso, mas eu literalmente não estou entendendo quase nada do seu algoritmo.

 

4 minutos atrás, Fídias Torres disse:

fazer um jeito para eu decidir o tamanho da matriz?

isso seria simples dependendo do compilador que você está usando, você poderia usar VLAs.

Exemplo

#include <stdio.h>

int main()
{
        /* Pega o tamanho da matriz */
        int q_linhas, q_colunas;
        printf("Digite o quantidade de linhas da matriz:");
        scanf("%d%*c", &q_linhas);
        
        printf("Digite o quantidade de colunas da matriz:");
        scanf("%d%*c", &q_colunas);
        
        /* Declara a matriz */
        int matriz_quadrados[q_linhas][q_colunas];
        int linhas, colunas;
        
        for (linhas = 0; linhas < q_linhas; linhas++) {
                for (colunas = 0; colunas < q_colunas; colunas++) {
                        matriz_quadrados[linhas][colunas] = (linhas+1)*(colunas+1);
                }
        }
        
        printf("Quadrados da matriz\n");
        
        for (linhas = 0; linhas < q_linhas; linhas++) {
                for (colunas = 0; colunas < q_colunas; colunas++) {
                        printf("%d, ", matriz_quadrados[linhas][colunas]);
                }
                printf("\n");
        }
        return(0);
}

Veja no navegador!

 

Ou usar alocação dinâmica de memória. 

 

Link para o comentário
Compartilhar em outros sites

@kginÉ meio complicado explicar o que o meu algoritmo tem que fazer exatamente, é uma matéria de Química e Materiais que se aprende em Engenharia Mecânica.

No caso de fazer a matriz desse jeito,  acho que não funcionaria no meu caso, pois eu tenho que atribuir nome para cada coluna e linha, além dos valores (acho que cada valor teria que ser salvo em uma variável diferente, pois vou ter que fazer uns cálculos muito específicos com eles. Obrigado por estar me ajudando! 🙂 

 

Link para o comentário
Compartilhar em outros sites

  • Solução
12 minutos atrás, Fídias Torres disse:

No caso de fazer a matriz desse jeito,  acho que não funcionaria no meu caso, pois eu tenho que atribuir nome para cada coluna e linha, além dos valores (acho que cada valor teria que ser salvo em uma variável diferente, pois vou ter que fazer uns cálculos muito específicos com eles.

Você pode fazer uma matriz só para os nomes da matriz e uma matriz só para os valores.

	int valores[linhas][colunas];
	char nomes[linhas][colunas][64];

 

15 minutos atrás, Fídias Torres disse:

@kginÉ meio complicado explicar o que o meu algoritmo tem que fazer exatamente, é uma matéria de Química e Materiais que se aprende em Engenharia Mecânica.

eh minha praia e outra, tô mais pra programação de jogos e embarcados 😕

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...