1
Description
We needed to get some data, which we can check below:
- Relate the item;
 - City code;
 - Number of passenger cars;
 - Number of traffic accidents with victims;
 
It was wondered yet:
- What is the highest and lowest rate of traffic accidents and to which cities they belong;
 - What is the average vehicle in cities together;
 - Average traffic accidents in cities with less than 2000 vehicles.
 
I resolved it this way:
    var
    codcidade1,codcidade2,codcidade3:caractere
    numveicid1,numveicid2,numveicid3:inteiro
    opcao:inteiro
    acvit1,acvit2,acvit3:inteiro
    mediaacidentes,mediaveiculos:real
    inicio
    opcao<-0
    escreval(":::IBGE::::")
    escreva("Código da 1° cidade: ")
    leia(codcidade1)
    escreva("Qual a quantidade de veículos de passeio da 1° Cidade:")
    leia(numveicid1)
    escreva("Quantidade de acidentes de transito com vítima na 1° cidade:")
    leia(acvit1)
    limpatela
    escreva("Código da 2° cidade: ")
    leia(codcidade2)
    escreva("Qual a quantidade de veículos de passeio da 2° Cidade:")
    leia(numveicid2)
    escreva("Quantidade de acidentes de transito com vítima na 2° cidade:")
    leia(acvit2)
    limpatela
    escreva("Código da 3° cidade: ")
    leia(codcidade3)
    escreva("Qual a quantidade de veículos de passeio da 3° Cidade:")
    leia(numveicid3)
    escreva("Quantidade de acidentes de transito com vítima na 3° cidade:")
    leia(acvit3)
    limpatela
    se((acvit1 > acvit2) e (acvit1 > acvit3)) entao
         escreval(acvit1," maior indice de acidentes de transito, pertencentes a cidade de codigo ",codcidade1)
       senao
            se((acvit2 > acvit1) e (acvit2 > acvit3)) entao
             escreval(acvit2," maior indice de acidentes de transito, pertencentes a cidade de codigo ",codcidade2)
             senao
                  escreval(acvit3," maior indice de acidentes de transito, pertencentes a cidade de codigo ",codcidade3)
             fimse
    fimse
    se((acvit1 < acvit2) e (acvit1 < acvit3)) entao
         escreval(acvit1," menor indice de acidentes de transito, pertencentes a cidade de codigo ",codcidade1)
       senao
            se((acvit2 < acvit1) e (acvit2 < acvit3)) entao
             escreval(acvit2," menor indice de acidentes de transito, pertencentes a cidade de codigo ",codcidade2)
             senao
                  escreval(acvit3," menor indice de acidentes de transito, pertencentes a cidade de codigo ",codcidade3)
             fimse
    fimse
    escreval()
    mediaveiculos<-(numveicid1+numveicid2+numveicid3)/3
    escreval("A média de veículos nas cidades é ",mediaveiculos)
    escreval()
    se((numveicid1<2000) e (numveicid2<2000) e (numveicid3<2000)) entao
       mediaacidentes <- (acvit1+acvit2+acvit3)/3
       senao
           se((numveicid1<2000) e (numveicid2<2000)) entao
           mediaacidentes <- (acvit1+acvit2)/2
           senao
               se((numveicid1<2000) e (numveicid3<2000)) entao
               mediaacidentes <- (acvit1+acvit3)/2
               senao
                   se((numveicid2<2000) e (numveicid3<2000)) entao
                   mediaacidentes <- (acvit1+acvit3)/2
                   senao
                       se(numveicid1<2000) entao
                       mediaacidentes <-acvit1
                       senao
                          se(numveicid2<2000) entao
                          mediaacidentes <-acvit2
                          senao
                          mediaacidentes <-acvit3
                          fimse
                       fimse
                   fimse
               fimse
           fimse
       fimse
       escreval("a média de acidentes de trânsito nas cidades ")
       escreval("com menos de 2000 veículos de passeio é:",mediaacidentes)
    fimalgoritmo
						
Using vectors will certainly make your code much more generic, as you won’t have to define new variables if you want to treat more cities, not just these three. Imagine if you had to deal with 200 cities.
– anonimo
In the stretch
codcidade1,codcidade2,codcidade3:caracterepq does not make a matrix? 1 to 3 and dynamically inserts the name of the cities?– Luiz Augusto