algoritmo "25 Outubro 2"
// Função : Procurar numeros multiplos de 5 entre 600 e 700
// Autor : Gustavo Ferreira
// Data : 26/10/2010
// Seção de Declarações
var
i:inteiro
inicio
// Seção de Comandos
escreval("O numeros abaixo sao multiplos de 5 e tambem de 7")
para i de 600 ate 700 passo 1 faca
se ((i mod 5) = 0) entao
se ((i mod 7) = 0) entao
escreval(i)
fimse
fimse
fimpara
fimalgoritmo
quarta-feira, 27 de outubro de 2010
Lista 25 out. 2
Faça um programa que mostre na tela o(s) número(s) dentro do intervalo entre 600 e 700 que sejam múltiplos de 5 e também de 7.
Lista 25 out. 1
Faça um programa que calcule a média aritmética de 35 alunos do curso de Algoritmos. Use comandos de repetição.
algoritmo "25 outubro 1"
// Função :
// Autor : Gustavo Ferreira
// Data : 26/10/2010
// Seção de Declarações
var
soma, aux :real
i :inteiro
inicio
// Seção de Comandos
para i de 1 ate 35 passo 1 faca
escreval("Informe a media do aluno ",i,":")
leia(aux)
soma<- soma+aux
fimpara
escreva("A media aritmetica da turma foi: ",soma/35)
fimalgoritmo
Capitulo 4 Homens e mulheres
algoritmo "Homens e mulheres"
// Função :
// Autor : Gustavo Ferreira
// Data : 15/10/2010
// Seção de Declarações
var
quantidadeHomens,quantidadeMulheres,idadeHomens,idadeMulheres,idade:inteiro
pesoMulheres,pesoHomens,peso:real
sexo:caracter
inicio
idade<-1
quantidadeHomens<-0
quantidadeMulheres<-0
pesoMulheres<-0
pesoHomens<-0
repita
escreva("Informe o sexo:")
leia(sexo)
se (sexo = "M") entao
quantidadeHomens<-quantidadeHomens +1
escreval("Informe o peso do homem:")
leia(peso)
pesoHomens<- pesoHomens + peso
escreval("Informe a idade do homem:")
leia(idade)
idadeHomens<- idadeHomens + idade
senao
quantidadeMulheres<-quantidadeMulheres +1
escreval("Informe o peso da mulher:")
leia(peso)
pesoMulheres<- pesoMulheres + peso
escreval("Informe a idade da mulher:")
leia(idade)
idadeMulheres<- idadeMulheres + idade
fimse
ate (idade=0)
escreval("Media de idade das mulheres:",idadeMulheres/quantidadeMulheres)
escreval("Peso medio dos homens:",pesoHomens/quantidadeHomens)
escreval("Media de idade de todos:",(idadeHomens+idadeMulheres)/(quantidadeHomens+quantidadeMulheres))
escreval("Quantidade homens (%): ",(100*quantidadeHomens)/(quantidadeHomens+quantidadeMulheres))
escreval("Quantidade mulheres (%): ",(100*quantidadeMulheres)/(quantidadeMulheres+quantidadeMulheres))
fimalgoritmo
Exercicio capitulo 4 Tabuada
Criar um algoritmo que peça um numero e faça a tabuada para ele.
algoritmo "Calcular tabuada"
// Função :
// Autor : Gustavo Ferreira
// Data : 15/10/2010
// Seção de Declarações
var
numero,contador:inteiro
inicio
contador <- 1;
escreval("Informe o numero para trabalhar")
leia(numero)
repita
escreval(contador," X",numero," =",contador*numero)
contador <- contador + 1
ate (contador>10)
fimalgoritmo
Exercicio 18 capitulo 3
Tendo duas notas, quanto devera tirar na terceira para a media final ser maior que 6.
algoritmo "3.18"
// Função :
// Autor : Gustavo
// Data : 28/9/2010
// Seção de Declarações
var
nota1,nota2:real
inicio
escreval("Informe a nota1:")
leia(nota1)
escreval("Informe a nota2:")
leia(nota2)
se (((nota1+nota2)/3)<6) entao
escreva("Deve tirar ",(6-((nota1+nota2)/3))*3)
senao
escreva("Pode tirar 0 (zero) nessa prova, so com duas provas ja atingiu ",((nota1+nota2)/3):5:2)
fimse
fimalgoritmo
Exercicio 17 capitulo 3
Quantas cartas você pode enviar.
algoritmo "3.17"
// Função : Calcular quantos cartas voce pode enviar
// Autor : Gustavo
// Data : 28/9/2010
// Seção de Declarações
// Obs: Parece um algoritmo grande devido à quantidade de comentarios e o tamanho do nome das variaveis.
var
dinheiro,precoEnvelope,precoSelo:real
qtdeCartas,qtdeEnvelopes,qtdeSelos:real
precoDuplaSeloEnvelope:real
qtdeDuplaSeloEnvelope:real
inicio
escreval("Informe a quantia em dinheiro:")
leia(dinheiro)
escreval("Informe o preco do selo:")
leia(precoSelo)
escreval("Informe o preco do envelope:")
leia(precoEnvelope)
escreval("Informe a quantidade de envelopes que voce tem:")
leia(qtdeEnvelopes)
escreval("Informe a quantidade de selos que voce tem:")
leia(qtdeSelos)
se (qtdeEnvelopes0) entao //sobrou envelopes...
//Bom... vamos imaginar que sobrou 10 envelopes e nenhum selo, preciso nivelar esse déficit...
//Tenho dinheiro para comprar selos para selar os envelopes que sobrou?
//Parece confuso eu multiplicar o preco do selo pela qtde de envelopes, mas é que a quantidade de envelopes que sobrou é a quantidade de selos que terei que comprar
se ((precoSelo*qtdeEnvelopes)<=dinheiro) entao //ufa... ou sobrou dinheiro ou foi a quantia exata, enfim, resoloveu o défit de selos
qtdeDuplaSeloEnvelope<- qtdeDuplaSeloEnvelope + qtdeEnvolopes // mais cartas seladas...
dinheiro<- dinheiro - (precoSelo*qtdeEnvelopes) //debitando a bufunfa...
qtdeEnvelope<- 0
senao
//Bom... nao deu para comprar todos os selos..
//imaginemos que cada selo custe 1 real, tenho 5 reais sobrando e preciso selar 10 envelopes. É óbvil que só vou conseguir selar metade, ou seja, 0.5 dos envelopes. Essa porcentagem de envelopes vezes o preco de cada selo dá a quantidade de selos que posso comprar.
qtdeDuplaSeloEnvelope<- qtdeDuplaSeloEnvelope + ((dinheiro)/(qtdeEnvelopes*precoSelo))*qtdeEnvelopes
//Descontando dos envelopes que sobrou.
qtdeEnvelopes<- qtdeEnvelopes - ((dinheiro)/(qtdeEnvelopes*precoSelo))*qtdeEnvelopes
//debitando do dinheiro...
dinheiro<- dinheiro - (((dinheiro)/(qtdeEnvelopes*precoSelo))*qtdeEnvelopes)*precoSelo
fimse
senao
se (qtdeSelos>0) entao //sobrou selos...
//Bom... vamos imaginar que sobrou 10 selos e nenhum envelope, preciso nivelar esse déficit...
//Tenho dinheiro para comprar evelopes suficientes para usar os selos que sobrou?
//Parece confuso eu multiplicar o preco do envelope pela qtde de selos que sobrou, é que precisarei comprar de envelopes a qtde de selos que sobrou.
se ((precoEnvelope*qtdeSelos)<=dinheiro) entao //ufa... ou sobrou dinheiro ou foi a quantia exata, enfim, resoloveu o défit de envelopes
qtdeDuplaSeloEnvelope<- qtdeDuplaSeloEnvelope + qtdeSelos // mais cartas seladas...
dinheiro<- dinheiro - (precoEnvelope*qtdeSelos) //debitando a bufunfa...
qtdeSelos<- 0
senao
//Bom... nao deu para comprar todos os envelopes..
//imaginemos que cada envelope custe 1 real, tenho 5 reais sobrando e preciso usar meus 10 selos sobrando. É óbvil que só vou conseguir comprar metade dos envelopes necessarios, ou seja, 0.5 dos selos. Essa porcentagem de selo vezes o preco de cada envelope dá a quantidade de envelopes que posso comprar.
qtdeDuplaSeloEnvelope<- qtdeDuplaSeloEnvelope + ((dinheiro)/(qtdeSelos*precoEnvelope))*qtdeSelos
//Descontando dos selos que sobrou.
qtdeSelos<- qtdeSelos - (dinheiro)/(qtdeSelos*precoEnvelope))*qtdeSelos
//debitando do dinheiro...
dinheiro<- dinheiro - ((dinheiro)/(qtdeSelos*precoEnvelope))*qtdeSelos)*precoEnvelope
fimse
fimse
fimse
// No teste acima, veja que nao testei se sobrou os dois (selos e envelopes), pois é impossivel, pois se sobrou dos dois dari para fazer mais pares. (aula do joao, ou sobrou selo, ou e se somente selos, mas nao ambos)
// Tambem nao testei se selos e envelopes foram zerados, pois se isso aconteceu, nao precisaria nivelar o deficit.
// Bom, deficit's nivelado ou quase.
//Agora vamos ver se sobrou dinheiro e ver quantos pares (1 envelope e 1 selo) posso comprar
se (dinheiro>0) entao
precoDuplaSeloEnvelope<- precoSelo+precoEnvelope
escreval(dinheiro div precoDuplaSeloEnvelope)
qtdeDuplaSeloEnvelope<- qtdeDuplaSeloEnvelope + (dinheiro div precoDuplaSeloEnvelope) // sem casas decimas, nao existe meia carta.
//pronto, ja sabemos quantas cartas voce pode enviar usando somente o seu dinheiro.
dinheiro<- dinheiro - (dinheiro div precoDuplaSeloEnvelope):5:2
fimse
//escreval(98.89871 div 1)
escreval("Voce pode enviar ",qtdeDuplaSeloEnvelope," cartas")
escreval("Sobrou ",qtdeEnvelopes," envelopes")
escreval("Sobrou ",qtdeSelos," selos")
escreva("Sobrou R$ ",dinheiro:5:2)
fimalgoritmo
terça-feira, 28 de setembro de 2010
Exercicio 16 capitulo 3
Escreva um algoritmo que leia os nomes dos três candidatos ao Senado (para uma vaga) com
suas respectivas votações. O algoritmo deve escrever o nome do candidato mais votado. Por
exemplo,
Maior votação: João da Silva
No caso de haver empate entre dois (os mais votados) ou entre os três candidatos, devem ser
escritos os nomes desses candidatos. Por exemplo,
Maior votação: João da Silva, Maria do Socorro
suas respectivas votações. O algoritmo deve escrever o nome do candidato mais votado. Por
exemplo,
Maior votação: João da Silva
No caso de haver empate entre dois (os mais votados) ou entre os três candidatos, devem ser
escritos os nomes desses candidatos. Por exemplo,
Maior votação: João da Silva, Maria do Socorro
algoritmo "2.16"
// Função :
// Autor : Gustavo
// Data : 28/9/2010
// Seção de Declarações
var
nomeCandidato1,nomeCandidato2,nomeCandidato3:literal
votacaoCand1,votacaoCand2,votacaoCand3:inteiro
inicio
escreval("Informe o nome e a votacao do candidato 1:")
escreva("Nome: ")
leia(nomeCandidato1)
escreva("Votacao: ")
leia(votacaoCand1)
escreval("Informe o nome e a votacao do candidato 2:")
escreva("Nome: ")
leia(nomeCandidato2)
escreva("Votacao: ")
leia(votacaoCand2)
escreval("Informe o nome e a votacao do candidato 3:")
escreva("Nome: ")
leia(nomeCandidato3)
escreva("Votacao: ")
leia(votacaoCand3)
escreval
//todo mundo ganhou...
se ((votacaoCand1 = votacaoCand2) e (votacaoCand2 = votacaoCand3)) entao
escreva("Maior votacao: ",nomeCandidato1,", ",nomeCandidato2,", ",nomeCandidato3)
senao
//se o candidato 1 é igual ao candidato 2, estao empatados. Se os dois forem maior que o 3, sao os vencedores
se((votacaoCand1=votacaoCand2) e (votacaoCand1>votacaoCand3)) entao
escreva("Maior votacao: ",nomeCandidato1,", ",nomeCandidato2)
senao
//se o candidato 1 é igual ao candidato 3, estao empatados. Se os dois forem maior que o 2, sao os vencedores.
se ((votacaoCand1=votacaoCand3) e (votacaoCand1>votacaoCand2)) entao
escreva("Maior votacao: ",nomeCandidato1,", ",nomeCandidato3)
senao
//se o candidato 2 é igual ao candidato 3, estao empatados. Se os dois forem maior que o 1, sao os vencedores.
se ((votacaoCand2=votacaoCand3) e (votacaoCand2>votacaoCand1)) entao
escreva("Maior votacao: ",nomeCandidato2,", ",nomeCandidato3)
senao
//Nao. Nao temos empate, vamos ver quem foi o vencedor.
se ((votacaoCand1>votacaoCand2) e (votacaoCand1>votacaoCand3)) entao
escreva("Maior votacao: ",nomeCandidato1)
senao
se ((votacaoCand2>votacaoCand1) e (votacaoCand2>votacaoCand3)) entao
escreva("Maior votacao: ",nomeCandidato2)
senao
//Nem precisa testar agora né? Pelas regras da probabilidade o candidato 3 venceu
escreva("Maior votacao: ",nomeCandidato3)
fimse
fimse
fimse
fimse
fimse
fimse
fimalgoritmo
Assinar:
Postagens (Atom)