Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

johnnyNT

Desenhar Gráfico

Recommended Posts

algoritmo "Grafico"

var
vpos, vpos2, vpos3, vpos4, vpos5, vpos6, vpos7, vpos8, vpos9, vpos10, resto: vetor [1..20] de inteiro
v, i: inteiro
vposi, vposi2, vposi3, vposi4, vposi5, vposi6, vposi7, vposi8, vposi9, vposi10: vetor [1..20] de caracter
inicio
// Seção de Comandos 
i <- 1

escrevaL (" Informe quantos valores quer incluir no gráfico   (máximo 10 valores)")
leia (v)
    escolha v
    caso 1
    escrevaL ("Digite o 1º número (no máximo ate 20)")
      leia (vpos[i])
    caso 2
      escrevaL ("Digite o 1º número (no máximo ate 20)")
            leia  (vpos[i])
               escrevaL ("Digite o 2º número")
                        leia  (vpos2[i])

     caso 3
         escrevaL ("Digite o 1º número (no máximo ate 20)")
            leia  (vpos[i])
               escrevaL ("Digite o 2º número")
                        leia  (vpos2[i])
                    escrevaL ("Digite o 3º número")
                        leia  (vpos3[i])
        caso 4
            escrevaL ("Digite o 1º número (no máximo ate 20)")
            leia  (vpos[i])
               escrevaL ("Digite o 2º número")
                        leia  (vpos2[i])
                    escrevaL ("Digite o 3º número")
                        leia  (vpos3[i])
                           escrevaL ("Digite o 4º número")
                                  leia  (vpos4[i])
           caso 5
                escrevaL ("Digite o 1º número (no máximo ate 20)")
            leia  (vpos[i])
               escrevaL ("Digite o 2º número")
                        leia  (vpos2[i])
                    escrevaL ("Digite o 3º número")
                        leia  (vpos3[i])
                           escrevaL ("Digite o 4º número")
                                  leia  (vpos4[i])
                               escrevaL ("Digite o 5º número")
                          leia  (vpos5[i])
       caso 6
            escrevaL ("Digite o 1º número (no máximo ate 20)")
            leia  (vpos[i])
               escrevaL ("Digite o 2º número")
                        leia  (vpos2[i])
                    escrevaL ("Digite o 3º número")
                        leia  (vpos3[i])
                           escrevaL ("Digite o 4º número")
                                  leia  (vpos4[i])
                               escrevaL ("Digite o 5º número")
                          leia  (vpos5[i])
                                escrevaL ("Digite o 6º número")
                              leia  (vpos6[i])
         caso 7
               escrevaL ("Digite o 1º número (no máximo ate 20)")
            leia  (vpos[i])
               escrevaL ("Digite o 2º número")
                        leia  (vpos2[i])
                    escrevaL ("Digite o 3º número")
                        leia  (vpos3[i])
                           escrevaL ("Digite o 4º número")
                                  leia  (vpos4[i])
                               escrevaL ("Digite o 5º número")
                          leia  (vpos5[i])
                                escrevaL ("Digite o 6º número")
                              leia  (vpos6[i])
                                    escrevaL ("Digite o 7º número")
                              leia  (vpos7[i])

        caso 8
               escrevaL ("Digite o 1º número (no máximo ate 20)")
            leia  (vpos[i])
               escrevaL ("Digite o 2º número")
                        leia  (vpos2[i])
                    escrevaL ("Digite o 3º número")
                        leia  (vpos3[i])
                           escrevaL ("Digite o 4º número")
                                  leia  (vpos4[i])
                               escrevaL ("Digite o 5º número")
                          leia  (vpos5[i])
                                escrevaL ("Digite o 6º número")
                              leia  (vpos6[i])
                                    escrevaL ("Digite o 7º número")
                              leia  (vpos7[i])
                                       escrevaL ("Digite o 8º número")
                              leia  (vpos8[i])
             caso 9
               escrevaL ("Digite o 1º número (no máximo ate 20)")
            leia  (vpos[i])
               escrevaL ("Digite o 2º número")
                        leia  (vpos2[i])
                    escrevaL ("Digite o 3º número")
                        leia  (vpos3[i])
                           escrevaL ("Digite o 4º número")
                                  leia  (vpos4[i])
                               escrevaL ("Digite o 5º número")
                          leia  (vpos5[i])
                                escrevaL ("Digite o 6º número")
                              leia  (vpos6[i])
                                    escrevaL ("Digite o 7º número")
                              leia  (vpos7[i])
                                       escrevaL ("Digite o 8º número")
                              leia  (vpos8[i])
                                      escrevaL ("Digite o 9º número")
                              leia  (vpos9[i])

   caso 10
               escrevaL ("Digite o 1º número (no máximo ate 20)")
            leia  (vpos[i])
               escrevaL ("Digite o 2º número")
                        leia  (vpos2[i])
                    escrevaL ("Digite o 3º número")
                        leia  (vpos3[i])
                           escrevaL ("Digite o 4º número")
                                  leia  (vpos4[i])
                               escrevaL ("Digite o 5º número")
                          leia  (vpos5[i])
                                escrevaL ("Digite o 6º número")
                              leia  (vpos6[i])
                                    escrevaL ("Digite o 7º número")
                              leia  (vpos7[i])
                                       escrevaL ("Digite o 8º número")
                              leia  (vpos8[i])
                                      escrevaL ("Digite o 9º número")
                              leia  (vpos9[i])
                                      escrevaL ("Digite o 10º número")
                              leia  (vpos10[i])
            fimescolha

            resto[1] <- 20 - vpos[1]
            resto[2] <- 20 - vpos2[1]
            resto[3] <- 20 - vpos3[1]
            resto[4] <- 20 - vpos4[1]
            resto[5] <- 20 - vpos5[1]
            resto[6] <- 20 - vpos6[1]
            resto[7] <- 20 - vpos7[1]
            resto[8] <- 20 - vpos8[1]
            resto[9] <- 20 - vpos9[1]
            resto[10] <- 20 - vpos10[1]
                    para i de 1 ate resto[1] faca
                         vposi[i] <- " "
                         fimpara
                       para i de 1 ate resto[2] faca
                         vposi2[i] <- " "
                         fimpara
                      para i de 1 ate resto[3] faca
                         vposi3[i] <- " "
                         fimpara
                        para i de 1 ate resto[4] faca
                         vposi4[i] <- " "
                         fimpara
                    para i de 1 ate resto[5] faca
                         vposi5[i] <- " "
                         fimpara
                        para i de 1 ate resto[6] faca
                         vposi6[i] <- " "
                         fimpara
                    para i de 1 ate resto[7] faca
                         vposi7[i] <- " "
                         fimpara
                        para i de 1 ate resto[8] faca
                         vposi8[i] <- " "
                         fimpara
                    para i de 1 ate resto[9] faca
                         vposi9[i] <- " "
                         fimpara
                        para i de 1 ate resto[10] faca
                         vposi10[i] <- " "
                         fimpara

               para i de 1 ate 20 faca
                    se vposi[i] <> " " entao
                             vposi[i] <- "x"
                             fimse
                    fimpara

                          para i de 1 ate 20 faca
                    se vposi2[i] <> " " entao
                             vposi2[i] <- "x"
                             fimse
                    fimpara
                     para i de 1 ate 20 faca
                    se vposi3[i] <> " " entao
                             vposi3[i] <- "x"
                             fimse
                    fimpara
                     para i de 1 ate 20 faca
                    se vposi4[i] <> " " entao
                             vposi4[i] <- "x"
                             fimse
                    fimpara
                     para i de 1 ate 20 faca
                    se vposi5[i] <> " " entao
                             vposi5[i] <- "x"
                             fimse
                    fimpara
                     para i de 1 ate 20 faca
                    se vposi6[i] <> " "  entao
                             vposi6[i] <- "x"
                             fimse
                    fimpara
                     para i de 1 ate 20 faca
                    se vposi7[i] <> " "  entao
                             vposi7[i] <- "x"
                             fimse
                    fimpara
                     para i de 1 ate 20 faca
                    se vposi8[i] <> " " entao
                             vposi8[i] <- "x"
                            fimse
                    fimpara
                     para i de 1 ate 20 faca
                   se vposi9[i] <> " "  entao
                             vposi9[i] <- "x"
                             fimse
                    fimpara
                     para i de 1 ate 20 faca
                    se vposi10[i] <> " "entao
                             vposi10[i] <- "x"
                             fimse
                    fimpara
           limpatela
          escrevaL ("  20|  ", vposi[1], " ", vposi2[1], " ", vposi3[1]," ", vposi4[1]," ", vposi5[1]," ", vposi6[1]," ", vposi7[1]," ", vposi8[1]," ", vposi9[1]," ", vposi10[1])
          escrevaL ("    |  ", vposi[2], " ", vposi2[2], " ", vposi3[2]," ", vposi4[2]," ", vposi5[2]," ", vposi6[2]," ", vposi7[2]," ", vposi8[2]," ", vposi9[2]," ", vposi10[2])
          escrevaL ("    |  ", vposi[3], " ", vposi2[3], " ", vposi3[3]," ", vposi4[3]," ", vposi5[3]," ", vposi6[3]," ", vposi7[3]," ", vposi8[3]," ", vposi9[3]," ", vposi10[3])
          escrevaL ("    |  ", vposi[4], " ", vposi2[4], " ", vposi3[4]," ", vposi4[4]," ", vposi5[4]," ", vposi6[4]," ", vposi7[4]," ", vposi8[4]," ", vposi9[4]," ", vposi10[4])
          escrevaL ("    |  ", vposi[5], " ", vposi2[5], " ", vposi3[5]," ", vposi4[5]," ", vposi5[5]," ", vposi6[5]," ", vposi7[5]," ", vposi8[5]," ", vposi9[5]," ", vposi10[5])
          escrevaL ("  15|  ", vposi[6], " ", vposi2[6], " ", vposi3[6]," ", vposi4[6]," ", vposi5[6]," ", vposi6[6]," ", vposi7[6]," ", vposi8[6]," ", vposi9[6]," ", vposi10[6])
          escrevaL ("    |  ", vposi[7], " ", vposi2[7], " ", vposi3[7]," ", vposi4[7]," ", vposi5[7]," ", vposi6[7]," ", vposi7[7]," ", vposi8[7]," ", vposi9[7]," ", vposi10[7])
          escrevaL ("    |  ", vposi[8], " ", vposi2[8]," ", vposi3[8]," ", vposi4[8]," ", vposi5[8]," ", vposi6[8]," ", vposi7[8]," ", vposi8[8]," ", vposi9[8]," ", vposi10[8])
          escrevaL ("    |  ", vposi[9], " ", vposi2[9]," ", vposi3[9]," ", vposi4[9]," ", vposi5[9]," ", vposi6[9]," ", vposi7[9]," ", vposi8[9]," ", vposi9[9]," ", vposi10[9])
          escrevaL ("    |  ", vposi[10], " ", vposi2[10]," ", vposi3[10]," ", vposi4[10]," ", vposi5[10]," ", vposi6[10]," ", vposi7[10]," ", vposi8[10]," ", vposi9[10]," ", vposi10[10])
          escrevaL ("  10|  ", vposi[11], " ", vposi2[11]," ", vposi3[11]," ", vposi4[11]," ", vposi5[11]," ", vposi6[11]," ", vposi7[11]," ", vposi8[11]," ", vposi9[11]," ", vposi10[11])
          escrevaL ("    |  ", vposi[12], " ", vposi2[12]," ", vposi3[12]," ", vposi4[12]," ", vposi5[12]," ", vposi6[12]," ", vposi7[12]," ", vposi8[12]," ", vposi9[12]," ", vposi10[12])
          escrevaL ("    |  ", vposi[13], " ", vposi2[13]," ", vposi3[13]," ", vposi4[13]," ", vposi5[13]," ", vposi6[13]," ", vposi7[13]," ", vposi8[13]," ", vposi9[13]," ", vposi10[13])
          escrevaL ("    |  ", vposi[14], " ", vposi2[14]," ", vposi3[14]," ", vposi4[14]," ", vposi5[14]," ", vposi6[14]," ", vposi7[14]," ", vposi8[14]," ", vposi9[14]," ", vposi10[14])
          escrevaL ("    |  ", vposi[15], " ", vposi2[15]," ", vposi3[15]," ", vposi4[15]," ", vposi5[15]," ", vposi6[15]," ", vposi7[15]," ", vposi8[15]," ", vposi9[15]," ", vposi10[15])
          escrevaL ("   5|  ", vposi[16], " ", vposi2[16]," ", vposi3[16]," ", vposi4[16]," ", vposi5[16]," ", vposi6[16]," ", vposi7[16]," ", vposi8[16]," ", vposi9[16]," ", vposi10[16])
          escrevaL ("    |  ", vposi[17], " ", vposi2[17]," ", vposi3[17]," ", vposi4[17]," ", vposi5[17]," ", vposi6[17]," ", vposi7[17]," ", vposi8[17]," ", vposi9[17]," ", vposi10[17])
          escrevaL ("    |  ", vposi[18], " ", vposi2[18]," ", vposi3[18]," ", vposi4[18]," ", vposi5[18]," ", vposi6[18]," ", vposi7[18]," ", vposi8[18]," ", vposi9[18]," ", vposi10[18])
          escrevaL ("    |  ", vposi[19], " ", vposi2[19]," ", vposi3[19]," ", vposi4[19]," ", vposi5[19]," ", vposi6[19]," ", vposi7[19]," ", vposi8[19]," ", vposi9[19]," ", vposi10[19])
          escrevaL ("    |  ", vposi[20], " ", vposi2[20]," ", vposi3[20]," ", vposi4[20]," ", vposi5[20]," ", vposi6[20]," ", vposi7[20]," ", vposi8[20]," ", vposi9[20]," ", vposi10[20])
          escrevaL ("   0|------------------------------> ")
fimalgoritmo

 

Foi o único jeito que consegui mas acho que deve ter outro jeito mais simples, se alguem souber posta ai!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ae galera eu pedi ae pra ve se alguem souberia fazer diferente mas nem postei a pergunta tambem, foi mal. A questão que o professor foi a seguinte:

Dado um conjunto de no máximo 10 valores que podem variar no intervalo de 0 a 20, desenhar o gráfico como no exemplo abaixo.

 

20|
 |
 |
 |
 |
15|
 |
 |     x
 |     x
 |     x
10|     x
 |     x
 | x   x
 | x   x x
 | x   x x
5 | x   x x
 | x x x x
 | x x x x x
 | x x x x x
 | x x x x x
  ----------------->
0 |

Exemplo considerando que o usuário informou 5 valores 8,4, 13, 7 e 3.

 

Ta aí se alguem souber fazer diferente do que eu fiz ali em cima posta ae!!!Valeu abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

n começo a mecher com matriz ainda n?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Opa, claro q tem..

com matriz ficaria bem + simples..

 

[]s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tipo eu sei que com matriz fica mais facil, porém nao faço a mpinima idéia de como fazer isso com matriz no VisualG, da de fazer no VisualG??

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.