quinta-feira, 23 de junho de 2011

Aula 19 - 22/06/11

1- Faça um programa que leia 10 nomes de alunos e guarde em uma lista.

Algoritmo "Exercício Vetores 1"

var
a,b:inteiro
nome:caracter
nomes: vetor [1..10] de caracter
inicio
para a de 1 ate 10 faca
escreval ("Digite o nome do aluno: ")
leia (nome)
nomes[a]<- nome
fimpara
escreval ("***********************************************")
para b de 1 ate 10 faca
escreval (b," nome: ",nomes[b])
fimpara
fimalgoritmo


2- Faça um programa que leia 10 nomes de alunos e sua media final e guartde em listas . Ao final, listar o nome do aluno e sua media , mostrando "aprovado" se a media for maior ou igual a 7.0 ou 'reprovado' caso contrario.

Algoritmo "Exercícios Vetores 2"

var
a,b:inteiro
nome:caracter
nomes: vetor [1..10] de caracter
medias: vetor [1..10] de real
mediafinal:real
inicio
para a de 1 ate 10 faca
   escreval ("Digite o nome do aluno: ")
   leia (nome)
   escreval ("Digite a media final do aluno: ")
   leia (mediafinal)
   nomes[a]<- nome
   medias[a]<- mediafinal
fimpara
escreval ("***********************************************")
para b de 1 ate 10 faca
   escreval (b," nome: ",nomes[b])
   se (medias[b] >= 7) entao
      escreval ("Aprovado")
   senao
      escreval ("Reprovado")
   fimse
fimpara
fimalgoritmo



3- Faça um programa que leia 50 valores reais e guarde em um vetor. Ao final, mostrar a soma e a media dos valores lidos.


Algoritmo "Exercício Vetores 3"

var
numero: vetor [1..50] de real
media,soma,n:real
a:inteiro
inicio
soma <- 0
para a de 1 ate 50 faca
escreval ("Escreva um numero: ")
leia (n)
numero[a]<- n
soma <- soma + numero[a]
fimpara
media <- soma / 50
escreval ("A Soma dos valores lidos é: ",soma)
escreval ("A media dos valores lidos é: ",media)
fimalgoritmo



4- Faça um programa que calcule a media (nota 1 + nota 2)/2) de 10 alunos e guarde em um vetor . Percorra o vetor e mostre as medias. Ao final mostre a media geral da turma.


Algoritmo "Exercício Vetores 4"

var
media: vetor [1..10] de real
nota1,nota2,mediadoaluno,mediageral:real
a,b,c:inteiro
inicio
para a de 1 ate 10 faca
escreval ("Aluno",a)
escreval ("Digite a primeira nota do aluno: ")
leia (nota1)
escreval ("Digite a segunda nota do aluno: ")
leia (nota2)
mediadoaluno <- (nota1 + nota2) / 2
media[a]<- mediadoaluno
fimpara
para c de 1 ate 10 faca
escreval ("A media do aluno ",c," é ",media[c])
fimpara
para b de 1 ate 10 faca
mediageral <- mediageral + media[b] / 10
fimpara
escreval ("A media geral da turma é: ",mediageral)
fimalgoritmo




5- Faça um programa que mostre o mes do ano de acordo com o numero (de 1 a 12) informado pelo usuário.

Algorirmo "Exercício Vetores 5"

var
mes: vetor [1..12] de caracter
numero :inteiro
inicio
mes[1] <- "Janeiro"
mes[2] <- "Fevereiro"
mes[3] <- "Março"
mes[4] <- "Abril"
mes[5] <- "Maio"
mes[6] <- "Junho"
mes[7] <- "Julho"
mes[8] <- "Agosto"
mes[9] <- "Setembro"
mes[10] <- "Outubro"
mes[11] <- "Novembro"
mes[12] <- "Dezembro"
escreval ("Digite um numero de 1 ate 12 para informar o mes corespondente ao numero: ")
leia (numero)
enquanto (numero < 1) ou (numero > 12) faca
escreval ("Digite um numero de 1 ate 12 para informar o mes correspondente ao numero: ")
leia (numero)
fimenquanto
escreval ("O numero digita corresponde ao mes de: ",mes[numero])
fimalgoritmo


Nesta aula aprendemos sobre VETORES, eu acabei me surpreendendo como eu não tive dificuldade com vetores, consegui resolver essas 5 questões em pouco tempo, acho que treinar um pouco em casa esta me deixando mais ligado nessa matéria, vou continuar treinando. Podemos dizer também que a explicação do professor melhorou e muito, não condeno ele por sua explicação porque é uma matéria difícil de ensinar, pois cara pessoa pensa de um jeito diferente de resolver cada problema, mais vamos la estou bem animado por não estar com tanta dificuldade como no começo do curso.

Aula 18 - 15/06/11

1- Faça um programa que receba dez numeros inteiros e mostre a quantidade de numeros primos dentre os numeros que foram digitados.

Algoritmo "PRIMO"

var
x,y,primo,cont,z:inteiro
inicio
primo <- 0
escreval ("Voce terá que digitar 10 numeros")
para x de 1 ate 10 faca
cont <- 0
escreval ("Digite o",x," numero: ")
 leia (y)
      para z de 1 ate y faca
         se (y MOD z = 0 ) entao
           cont <- cont + 1
         fimse
      fimpara
      se (cont <= 2) entao
        primo <- primo + 1
      fimse
fimpara
escreval ("Entre os 10 numeros digitados tem :",primo," numero(s) primo(s)")
fimalgoritmo



Bom nesta aula foi feita a correção dos exercícios feitos no trabalho, pelo visto errei pouca coisa, vou ir bem nesse trabalho. O professor mandou a turma resolver esse exercício de números primos, visto a dificuldade que a turma esta tendo com números primos, posso dizer depois dessa aula que números primos é o meu forte, consegui resolver o exercício com muita pouca dificuldade, logo que cheguei em casa resolvi ele sozinho, nessas questões que eu tenho um pouco de dificuldade vou começar a pegar elas em um dia que estou sem fazer nada e tentar resolver para treinar.

Aula 17 - 08/06/11

Algoritmos – exercícios aula 17


1) Em uma eleição presidencial existem quatro candidatos. Os votos são informados por meio de código. Os códigos utilizados são:
           
1, 2, 3, 4
Votos para os respectivos candidatos
5
Voto nulo
6
Voto em branco
            Faça um programa que calcule e mostre:
-        o total de votos para cada candidato;
-        o total de votos nulos;
-        o total de votos em branco;
-        a percentagem de votos nulos sobre o total de votos;
-        a percentagem de votos em branco sobre o total de votos.
           
            Para finalizar o conjunto de votos, tem-se o valor ZERO e, para códigos inválidos, o programa deverá mostrar uma mensagem.

Allgoritmo "Trabalho 1"

var
prime,secon,terce,quart,nulo,branco,totalvotos :inteiro
porcentnulo,porcentbranco,x :real
inicio
prime <- 0
secon <- 0
terce <- 0
quart <- 0
nulo <- 0
branco <- 0
totalvotos <- 0
porcentnulo <- 0
porcentbranco <- 0
repita
   escreval ("Digite 1,2,3,4 para escolher seu canditado")
   escreval ("5 para nulo, 6 para voto em branco ou 0 (ZERO) para encerrar o programa.")
   leia (x)
   se (x >= 0) e (x < 7) entao
      se (x <> 0) entao
         totalvotos <- totalvotos + 1
         se (x = 1) entao
            prime <- prime + 1
            escreval ("Voce escolheu o primeiro candidato.")
         senao
            se (x = 2) entao
               secon <- secon + 1
               escreval ("Voce escolheu o segundo candidato.")
            senao
               se (x = 3) entao
                  terce <- terce + 1
                  escreval ("Voce escolheu o terceiro candidato.")
               senao
                  se (x = 4) entao
                     quart  <- quart + 1
                     escreval ("Voce escolheu o quarto candidato.")
                  senao
                     se (x = 5) entao
                        nulo <- nulo + 1
                        escreval ("Seu voto foi nulo.")
                     senao
                        se (x = 6) entao
                           branco <- branco + 1
                           escreval ("Seu voto foi em branco.")
                        senao
                           escreval ("Os numeros digitados devem estar entre 1 e 6")
                        fimse
                     fimse
                  fimse
               fimse
            fimse
         fimse
      senao
         escreval ("Voce digitou 0(ZERO)")
      fimse
   senao
      escreval ("Os numeros digitados devem estar entre 1 e 6")
   fimse
ate (x = 0)
escreval ("Voce encerrou o programa logo abaixo consta os resultados.")
se (totalvotos <> 0) entao
porcentnulo <- (nulo * 100) / totalvotos
porcentbranco <- (branco * 100) /  totalvotos
fimse
escreval ("Candidato numero 1 tem: ",prime," voto(s).")
escreval ("Candidato numero 2 tem: ",secon," voto(s).")
escreval ("Candidato numero 3 tem: ",terce," voto(s).")
escreval ("Candidato numero 4 tem: ",quart," voto(s).")
escreval ("Teve : ",nulo," voto(s) nulo.")
escreval ("Teve : ",branco," voto(s) em branco.")
escreval ("A porcentagem de votos nulos sao: ",porcentnulo," %.")
escreval ("A porcentagem de votos em branco sao: ",porcentbranco," %.")
fimalgoritmo





2) Faça um programa que receba um conjunto de valores inteiros e positivos, calcule e mostre o maior e o menor valor do conjunto. Considere que:
-        para encerrar a entrada de dados, deve ser digitado valor zero;
-        para valores negativos, deve ser enviada uma mensagem;
-        os valores negativos ou iguais a zero não entram nos cálculos.

Algoritmo "Trabalho 2" 
var
x,maior,menor:inteiro
inicio
repita
   escreval ("digite um numero inteiro positivo")
   leia (x)
   se (x < 0) entao
      escreval ("Voce digitou um numero negativo")
   senao
      maior <- x
      menor <- x
      enquanto (x <> 0) faca
         escreval ("digite um numero inteiro positivo")
         leia (x)
         se (x < 0) entao
            escreval ("Voce digitou um numero negativo")
         senao
            se (x <> 0) entao
               se (maior < x) entao
                  maior <- x
               fimse
               se (menor > x) entao
                  menor <- x
               fimse
            fimse
         fimse
      fimenquanto
   fimse
ate (x = 0)
se (maior = 0) e (menor = 0) entao
   escreval ("Voce encerrou o programa sem digitar um número inteiro e positivo.")
senao
   escreval ("O maior número digitado é: ",maior)
   escreval ("O menor número digitado é: ",menor)
fimse
fimalgoritmo





3) Faça um programa que receba os dados a seguir de vários produtos: preço unitário, país de origem (1- Brasil, 2- Portugal e 3 – outros), meio de transporte (T – terrestre, F – fluvial e A – aéreo), carga perigosa (S- sim, N – não), finalize a entrada de dados com um preço inválido, ou seja, menor ou igual a zero e que calcule e mostre:
  • O valor do imposto, usando a tabela a seguir.
Preço unitário
Percentual de imposto sobre o preço unitário
Até R$ 280,00
5.00%
Maior que R$ 280,00
10.00%

  • O valor do transporte usando a tabela a seguir
Carga Perigosa
País de Origem
Valor do Transporte
S
1
R$ 140,00
2
R$ 59,00
3
R$ 67,00
N
1
R$ 34,00
2
R$ 59,00
3
R$ 168,00

  • O valor do seguro, usando a regra a seguir:
                        Os produtos que vêm de Portugal e os produtos que utilizam transporte                          aéreo pagam metade do valor do seu preço unitário como seguro.

  • O preço final, ou seja, preço unitário mais imposto mais valor do transporte mais valor do seguro.
  • O total dos impostos (somando impostos de todos os produtos).


Algoritmo "Trabalho 3"

var
totalimposto,precouni,pais,calcseguro,impostoprecouni,valortrans:real
trans,carga:caracter
inicio
totalimposto <- 0
repita
   escreval ("***********************************************************************")
   escreval ("Preço unitário")
   leia (precouni)
   se (precouni <= 0) entao
      escreval ("Voce encerrou o programa")
   senao
   valortrans <- 0
      escreval ("País de origem (1- Brasil, 2- Portugal e 3 - outros)")
      leia (pais)
      enquanto (pais < 1) ou (pais > 3) faca
         escreval ("Opçao incorreta.Digite dinovo.")
         escreval ("País de origem (1- Brasil, 2- Portugal e 3 - outros)")
         leia (pais)
      fimenquanto
      escreval ("Meio de transporte (T - terrestre, F - fluvial e A - aéreo)")
      leia (trans)
      enquanto (trans <> "T") e (trans <> "F") e (trans <> "A") faca
         escreval ("Opçao incorreta.Digite dinovo.")
         escreval ("Meio de transporte (T - terrestre, F - fluvial e A - aéreo)")
         leia (trans)
      fimenquanto
      escreval ("carga perigosa (S- sim, N - não)")
      leia (carga)
      enquanto (carga <> "S") e (carga <> "N") faca
         escreval ("Opçao incorreta.Digite dinovo.")
         escreval ("carga perigosa (S- sim, N - não)")
         leia (carga)
      fimenquanto
      limpatela
      se (pais = 2) ou (trans = "A") entao
         calcseguro <- precouni / 2
      senao
         calcseguro <- 0
      fimse
      se (precouni <= 280) entao
         impostoprecouni <- precouni * (5/100)
         precouni <- precouni + impostoprecouni
      senao
         impostoprecouni <- precouni * (10/100)
         precouni <- precouni + impostoprecouni
      fimse
      se (carga = "S") entao
         se (pais = 1) entao
            precouni <- precouni + 140
            valortrans <-  valortrans + 140
         senao
            se (pais = 2) entao
               precouni <- precouni + 59
               valortrans <-  valortrans + 59
            senao
               se (pais = 3) entao
                  precouni <- precouni + 67
                  valortrans <-  valortrans + 67
               fimse
            fimse
         fimse
      senao
         se (pais = 1) entao
            precouni <- precouni + 34
            valortrans <-  valortrans + 34
         senao
            se (pais = 2) entao
               precouni <- precouni + 59
               valortrans <-  valortrans + 59
            senao
               se (pais = 3) entao
                  precouni <- precouni + 168
                  valortrans <-  valortrans + 168
               fimse
            fimse
         fimse
      fimse
      precouni <- precouni + calcseguro
      totalimposto <- totalimposto + impostoprecouni
      escreval ("***********************************************************************")
      escreval ("Valor do Seguro: ",calcseguro)
      escreval ("O valor do imposto desse produto é: ",impostoprecouni)
      escreval ("O valor do transporte desse produto é: ",valortrans)
      escreval ("O preço final do produto é: ",precouni)
      escreval ("O total de imposto é: ",totalimposto)
   fimse
ate (precouni <= 0)
fimalgoritmo


Bom esses não foi um trabalho tao fácil assim, achei um pouco de dificuldade na terceira questão mais quando fui ver ela não era tão difícil assim só pedia bastante coisa, espero ter ido com no trabalho pra dar uma forcinha pra nota da prova.

Aula 16 - 01/06/11

Um supermercado deseja reajustar os preços de seus produtos usando o seguinte criterio o produto podera ter seu Preço aumentanodo ou duminuido.Para o preço ser alterado, o produto deve preencher pelo menos um dos requissitos a seguir:


venda media preço atual   % de aumento   % de diminuiçao
< 500 < r$ 30,00   10 -
>= 500 e < 1200 >= R$ 30,00 e < r$ 80,00 15 -
>= 1200 >= r$ 80,00 - 20

faça um programa que receba o preço e a venda media mensal do produto , calcule e mostre o novo preço.

Algoritmo "Exercício 1"

var
produto,mproduto,novopreco,novopreco1,novopreco2,soma:real
inicio
escreval ("Digite o preço do produto: ")
leia (produto)
escreval ("Digite a media mensal do produto")
leia (mproduto)
se (mproduto < 500) ou (produto < 30) entao
   novopreco <- produto * (10/100) + produto
   escreval ("Novo preço com 10% de aumento é: ",novopreco)
senao
     se ((mproduto >= 500) e (mproduto < 1200)) ou ((produto >= 30) e (produto < 80)) entao
        novopreco1 <- produto * (15/100) + produto
        escreval ("Novo preço com 15% de aumento é: ",novopreco1)
     senao
        se (mproduto >= 1200) ou (produto >= 80) entao
        novopreco2 <- produto * (20/100)
        soma <- produto - novopreco2
        escreval ("Novo preço com 20% de desconto é: ",soma)
        senao
        escreval ("Nao teve reajuste nos preços")
        fimse
     fimse
fimse
fimalgoritmo



2) Faça um programa que monte os outro primeiros termos da senquencia de Fibonacci.
0-1-1-2-3-5-8-13-21-34-55...

Algoritmo "Exercício 2"

var
soma:inteiro
inicio
soma <- 0 + 1
soma <- soma + 1
soma <- soma + 3
soma <- soma + 8
soma <- soma + 21
soma <- soma + 55
escreva (soma)
fimalgoritmo


Professor explicou tudo que vimos ate agora para que as duvidas sejam todas tiradas de vez.

Aula 15 - 26/05/11







1 - Dados três valores x, y e z, faça um algoritmo para verificar se eles podem ser os comprimentos dos lados de um triângulo e, se forem, verifique se é um triângulo eqüilátero, isóscele ou escaleno. Se eles não formarem um triângulo escreva uma mensagem de alerta. Considere que:


* O comprimento de cada lado de um triângulo é menor do que a soma dos outros dois lados;
* Um triângulo eqüilátero tem os seus três lados iguais;
* Um triângulo isóscele tem o comprimento de dois lados iguais; e
* Um triângulo escaleno tem os três lados diferentes.

algoritmo "Prova 1"
var
   x, y, z:inteiro
inicio
   escreval("Digite a medida dos 3 lados do triangulo")
   leia(x, y, z)
   se (x >= y+z) ou (y  >= x+z) ou (z >= x+y) entao
      escreval("As medidas informadas nao formam um triangulo")
   senao
      se (x=y) e (y=z) entao
         escreval("Triangulo equilatero - todos os lados iguais")
      senao
         se (x=y) ou (x=z) ou (y=z) entao
            escreval("Triangulo isoceles - 2 lados iguais")
         senao
            se (x<>y) e (x<>z) e (y<>z) entao
               escreval("Triangulo escaleno - todos os lados diferentes")
            fimse
         fimse
      fimse
   fimse
fimalgoritmo




2 - Faça um programa que receba a medida de um ângulo em graus. Calcule e mostre o quadrante em que se localiza esse ângulo. Considere os quadrantes da trigonometria e, no caso de ângulos maiores que 360º ou menores que -360º, reduzi-los, mostrando também o número de voltas e o sentido da volta (horário ou anti-horário).

algoritmo "Prova 2"
var
   a: inteiro
   voltas: real
inicio
   escreval("Digite um angulo")
   leia(a)
   se (a>360) ou (a < -360) entao
      voltas <- a / 360
      a <- a mod 360
   senao
      voltas <- 0
   fimse
   se (a=0) ou (a=90) ou (a=180) ou (a=270) ou (a=360) ou (a=-90) ou (a=-180) ou (a=-270) ou (a=-360) entao
      escreval("Esta sobre um dos eixos")
   senao
      se ((a >0) e (a < 90)) ou ((a < -270) e (a > -360)) entao
         escreval("1 quadrante")
      fimse
      se ((a >90) e (a < 180)) ou ((a < -180) e (a > -270)) entao
         escreval("2 quadrante")
      fimse
      se ((a >180) e (a < 270)) ou ((a < -90) e (a > -180)) entao
         escreval("3 quadrante")
      fimse
      se ((a >270) e (a < 360)) ou ((a < 0) e (a > -90)) entao
         escreval("4 quadrante")
      fimse
      escreva(" ", voltas," voltas no sentido ")
      se (a<0) entao
         escreval(" horario")
      senao
         escreval(" anti-horario")
      fimse
   fimse
fimalgoritmo




3 -  Faça um programa que receba vários números, calcule e mostre:
   - a soma dos números digitados;
   - a quantidade de números digitados;
   - a média dos números digitados;
   - o maior número digitado;
   - o menor número digitado
   - a média dos números pares;
   - a porcentagem de números ímpares entre todos os números digitados;
   - a soma dos números primos digitados;
Finalize a entrada de dados com a digitação do número 99999. Este número não pode considerado nos cálculos.

algoritmo "Prova 3"
var
   num, prim, soma_prim, soma, qtd, z, maior, menor, qtd_par, soma_par, qtd_impar: inteiro
   media_par, media, perc : real
inicio
   qtd <- 0
   qtd_par<-0
   soma_par <-0
   soma_prim <- 0
   qtd_impar <-0
   escreval("Digite um numero")
   leia(num)
   repita
     se (qtd=0) entao
        maior <- num
        menor <- num
     senao
        se (num > maior) entao
           maior <- num
        fimse
        se (num < menor ) entao
           menor <- num
        fimse
     fimse
     soma <- soma + num
     qtd <- qtd + 1
     se (num mod 2 = 0) entao
        soma_par <- soma_par + num
        qtd_par <- qtd_par + 1
     senao
        qtd_impar <- qtd_impar + 1
     fimse
     prim <- 0
     para z de 1 ate num faca
        se (num mod z = 0) entao
           prim <- prim + 1
        fimse
     fimpara
     se (prim <= 2)entao
        soma_prim <- soma_prim + num
     fimse
     leia(num)
   ate(num=99999)
   se (qtd = 0) entao
      escreval("Nenhum numero digitado")
   senao
      escreval("A soma e ",soma)
      escreval("A quantidade e ",qtd)
      media <- soma / qtd
      escreval("A media e ", media)
      escreval("O maior e ", maior)
      escreval("O menor e ", menor)
      se (qtd_par = 0 ) entao
         escreval("Nenhum numero par foi digitado")
      senao
         media_par <- soma_par / qtd_par
         escreval("A media dos pares e ", media_par)
      fimse
      perc <- qtd_impar * 100 / qtd
      escreval("O percentual de impares e ", perc)
      escreval("A soma dos primos e ",soma_prim)
   fimse
fimalgoritmo

O mais triste da prova que só 5 alunos passaram, o lado bom foi que eu consegui passar, apesar de ter uma boa dificuldade em algumas questões, números primos ainda não é meu forte haha.

Aula 14 - 25/05/11

Senti dificuldade na questao 3 da prova, a questões 1 e 2 tive 1 pouco de dificuldade mais conseguir resolver.
nao achei a prova tao dificil assim, se tivesse estudado 1 pouco mais , teria tirado uma nota melhor.O que foi difícil era tentar se concentrar com o barulho que tinha do lado de fora.

Segue na aula 15 as questões resolvidas.

Aula 13 - 19/05/11

5 - Faça um programa que receba a hora do início de um jogo e a hora final (cada hora é composta por duas variáveis inteiras: hora e minuto). Calcule e mostre a duração do jogo (horas e minutos), sabendo-se que o tempo máximo de duração do jogo é de 24 horas e que ele pode iniciar-se em um dia e terminar no dia seguinte.

algoritmo "Exercício 5"
var
   horaIni, minIni, horaFim, minFim, minDif, horaDif:inteiro
inicio
   escreval("Digite hora e minutos do inicio do jogo ")
   leia(horaIni, minIni)
   escreval("Digite hora e minutos do fim do jogo ")
   leia(horaFim, minFim)
   se (minIni > minFim) entao
      minFim <- minFim + 60
      horaFim <- horaFim - 1
   fimse
   se (horaIni > horaFim) entao
      horaFim <- horaFim + 24
   fimse
   minDif <- (minFim - minIni)
   horaDif <- (horaFim - horaIni)
   escreval("O jogo durou", horaDif, " horas e ", minDif, " minutos")
fimalgoritmo


6 - Faça um programa que receba cem números, calcule e mostre a soma dos números pares e a média dos números primos.

algoritmo "Exercício 6"
var
x,y,nro,primo:inteiro
cont,media,soma,parcial:real
inicio
  soma<-0
  PARA x de 1 ATE 100 FACA
    escreval("DIGITE UM NUMERO")
    leia(nro)
    SE (nro mod 2=0) entao
       escreval("VC DIGITOU UM NUMERO PAR!")
       soma<-soma+nro
    FIMSE
    primo<-0
    PARA y de 1 ATE nro FACA
       SE (nro mod y =0) ENTAO
          primo<-primo+1
       FIMSE
     FIMPARA
     cont<-0
     SE primo<=2 ENTAO
       escreval("VC DIGITOU UM NUMERO PRIMO")
       cont<-cont+1
       parcial<-parcial+primo
     FIMSE
   FIMPARA
   media<-parcial/cont
   escreval(" A SOMA DOR NUMEROS PARES É", soma)
   escreval("A MEDIA DOS NUMERO PRIMOS É", media)
fimalgoritmo

7 - Faça um programa que receba a idade e o peso de 75 pessoas, e que calcule e mostre as médias dos pesos das pessoas da mesma faixa etária. As faixas etárias são: de 1 a 10 anos, de 11 a 20 anões de 21 a 30 anos e de 31 anos para cima.

algoritmo "Exercício 7"

var
   cont, cod, num_vei, num_acid, maior, cid_maior, menor, cid_menor: inteiro
   media_vei, media_acid: real
   soma_vei, soma_acid, cont_acid:inteiro
inicio
   soma_vei <-0
   soma_acid <-0
   cont_acid <- 0
   para cont <- 1 ate 5 faca
      escreval("Digite o codigo da cidade, o numero de veiculos e o numero de acidentes" )
      leia(cod, num_vei, num_acid)
      se (cont=1) entao
         maior <- num_acid
         cid_maior <- cod
         menor <- num_acid
         cid_menor <- cod
      senao
         se (num_acid > maior) entao
            maior <- num_acid
            cid_maior <- cod
         fimse
         se (num_acid < menor) entao
            menor <- num_acid
            cid_menor <- cod
         fimse
      fimse
      soma_vei <- soma_vei + num_vei
      se (num_vei < 2000) entao
         soma_acid <- soma_acid + num_acid
         cont_acid <- cont_acid + 1
      fimse
   fimpara
   escreval("O maior indice e ",maior," na cidade ",cid_maior)
   escreval("O menor indice e ",menor," na cidade ",cid_menor)
   media_vei <- soma_vei / 5
   escreval("A media de veiculos e ",media_vei)
   se (cont_acid = 0) entao
      escreval("Nao foi digitada nenhuma cidade com menos de 2000 veiculos" )
   senao
      media_acid <- soma_acid / cont_acid
      escreval("A media de acidentes em cidades com menos de 2.000 veiculos e ", media_acid)
   fimse
fimalgoritmo


8 - Cada espectador de um cinema respondeu a um questionário no qual constava sua idade e sua opinião em relação ao filme: ótimo – 3, bom – 2, regular – 1. Faça um programa que receba a idade e a opinião de 75 espectadores, calcule e mostre:
− a média das idades das pessoas que responderam ótimo;
− a quantidade de pessoas que responderam regular;
− a percentagem de pessoas que responderam bom, entre todos os espectadores analisados.

algoritmo "Exercício 8"
var
   x,idade,opcao:inteiro
   contador1,contador2,contador3,idade_o,media_o,media_b:real
inicio
   para x de 1 ate 75 faca
      escreval("Ola, digite sua idade e opinição do filme.")
      escreva("Digite sua idade: ")
      leia(idade)
      limpatela
      escreval("Para Ótimo digite 3, para Bom digite 2 e para Regular digite 1.")
      repita
         escreva("Digite a opcao desejada: ")
         leia(opcao)
         se (opcao<>1) ou (opcao<>2) ou (opcao<>3) entao
            escreva("Digitou opção errada, redigite sua opção!")
         fimse
      ate(opcao=1)ou(opcao=2)ou(opcao=3)
      limpatela
      se (opcao = 1) entao
         contador1<-contador1+1
      fimse
      se (opcao = 3) entao
         contador3<-contador3+1
         idade_o<-idade+idade_o
      fimse
      se (opcao = 2) entao
         contador2<-contador2+1
      fimse
   fimpara
   media_o<-idade_o/contador3
   escreval("A média das pessoas que acharam ótimo foi de",media_o,".")
   escreval(contador1," pessoas responderam Regular.")
   media_b<-75/contador2
   escreval(media_b,"% das pessoas responderam Bom.")
fimalgoritmo



Nesses exercícios desta aula tive mais dificuldade, principalmente nas questões das horas e na dos números primos, eu intendia a lógica que deveria fazer mais não conseguia passala pro programa.