Desenvolvimento de um programa de estatísticas de trânsito

 

Com base no problema apresentado a possível solução do problema é o desenvolvimento de um programa de estatísticas de trânsito que ajuda a entender melhor a relação entre o número de veículos e a frequência de acidentes em várias cidades, com foco nas cidades menores e com menos de 2000 veículos.

Logica do programa:

Coleta de Dados

Inicialmente, o programa solicitará ao usuário que insira dados para várias cidades. Estes dados incluirão o código da cidade, o número de veículos de passeio, e o número de acidentes de trânsito com vítimas. A coleta de dados terminará quando o usuário decidir não inserir mais dados.

 

Processamento de Dados

À medida que os dados são inseridos, o programa calculará:

 

A cidade com o maior e o menor número de acidentes, incluindo seus códigos e o número de acidentes.

A soma total de veículos entre todas as cidades inseridas.

O número de cidades com menos de 2000 veículos e a soma de acidentes nessas cidades.

Cálculo de Médias

Após a finalização da entrada de dados:

 

Calcula-se a média de veículos por cidade.

Calcula-se a média de acidentes nas cidades com menos de 2000 veículos.

Exibição dos Resultados

Finalmente, o programa exibirá as estatísticas calculadas.

 

 

 

 

 

 

Algoritmo do programa:

 

programa {

    funcao inicio() {

        inteiro codigo_menor_cidade = 0

        inteiro codigo_maior_cidade = 0

        inteiro indice_menor_cidade = 0

        inteiro indice_maior_cidade = 0

        inteiro soma_acidentes_menor_2000 = 0

        inteiro numero_cidades_veiculos_menor_2000 = 0

        inteiro continuar_a_pedir_dados = 1

        inteiro soma_geral_de_veiculos = 0

        inteiro numero_cidades = 0

        inteiro media_de_veiculos_cidades = 0

        inteiro media_de_acidentes_menor_2000 = 0

 

        enquanto(continuar_a_pedir_dados == 1) {

            escreva("Insira o Código da Cidade: ")

            inteiro codigo

            leia(codigo)

 

            escreva("Insira o número de veículos de passeio: ")

            inteiro veiculos

            leia(veiculos)

 

            escreva("Insira número de acidentes de trânsito com vítimas: ")

            inteiro acidentes

            leia(acidentes)

 

            soma_geral_de_veiculos += veiculos

            numero_cidades += 1

 

            se (acidentes < indice_menor_cidade ou indice_menor_cidade == 0) {

                codigo_menor_cidade = codigo

                indice_menor_cidade = acidentes

            }

            se (acidentes > indice_maior_cidade ou indice_maior_cidade == 0) {

                codigo_maior_cidade = codigo

                indice_maior_cidade = acidentes

            }

            se (veiculos < 2000) {

                soma_acidentes_menor_2000 += acidentes

                numero_cidades_veiculos_menor_2000 += 1

            }

 

            escreva("\nPara continuar digite 1, para finalizar o programa digite qualquer outro valor: ")

            leia(continuar_a_pedir_dados)

        }

 

        se(numero_cidades > 0) {

            media_de_veiculos_cidades = soma_geral_de_veiculos / numero_cidades

        }

 

        se(numero_cidades_veiculos_menor_2000 > 0) {

            media_de_acidentes_menor_2000 = soma_acidentes_menor_2000 / numero_cidades_veiculos_menor_2000

        }

 

        escreva("\nMaior índice de acidentes: ", indice_maior_cidade)

        escreva("\nCidade com mais acidentes: ", codigo_maior_cidade)

        escreva("\nMenor índice de acidentes: ", indice_menor_cidade)

        escreva("\nCidade com menos acidentes: ", codigo_menor_cidade)

        escreva("\nMédia de veículos: ", media_de_veiculos_cidades)

        escreva("\nMédia de acidentes em cidades com menos de 2000 veículos de passeio: ", media_de_acidentes_menor_2000)

    }

}

Comentários