Fazer no VisuAlg um programa que desenhe uma Árvore de Natal:
Há duas possibilidades de resolução:
1. Desenhar apenas a árvore que é apresentada na figura.
2. Desenhar uma árvore, com uma altura definida pelo utilizador.
Colocar a resolução num comentário a este post.
Blogue de Programação de Sistemas Informáticos da Turma TGP2, 2014/2015
terça-feira, 16 de dezembro de 2014
terça-feira, 9 de dezembro de 2014
Módulo 3 - Trabalho 2
Fazer um programa no VisuAlg que leia um número inteiro positivo, calcule a soma dos seus algarismos, conte o número de algarismos que o número possui e escreva o seu inverso (inversão da ordem dos algarismos que constituem o número). O programa deverá ainda dizer se o número é ou não uma capícua.
O programa deve validar se o número inserido é positivo e deverá ter uma interface baseada num menu com as seguintes opções
(1) Inserir um número
(2) Soma dos algarismos
(3) Número de algarismos
(4) Número inverso
(5) Verificar se é capícua
(6) Sair
As opções 2 a 5 devem chamar subprogramas que devolvem o resultado pretendido.
Por exemplo, o número 12321 tem 5 algarismos, a soma dos algarismos é 9 e o número inverso é igual ao número original porque é uma capícua (o número é igual lido da direita para a esquerda e da esquerda para a direita).
Cada grupo de 2 alunos coloca a resolução deste exercício na plataforma da escola (módulo3 - "Programação Estruturada" -> Trabalho 2).
Etiquetas:
subprogramas,
visualg
quinta-feira, 4 de dezembro de 2014
Jogo "Adivinhe o Número"
Fazer no VisuAlg o programa seguinte:
O utilizador pode fazer vários jogos com o computador. Em cada jogo o utilizador tem de adivinhar um número
gerado aleatoriamente pelo programa, compreendido entre 1 e 100. Existe um número máximo
de tentativas para acertar no número. Por cada tentativa do utilizador, o programa
indica se o número inserido pelo utilizador é maior, menor ou igual ao número gerado. O jogo termina quando o número inserido pelo utilizador for igual ao número
gerado ou quando for atingido o número máximo de tentativas. No primeiro caso, o programa apresenta também o número de tentativas que foram necessárias
para acertar no número gerado.
Quando o utilizador adivinha o número, ganha o jogo e marca 1 ponto. Quando não consegue adivinhar o número, ganha o computador que marca 1 ponto.
O utilizador pode fazer vários jogos com o computador até escolher a opção para terminar o programa. Antes de começar um novo jogo pode ver as pontuações.
É necessário definir o nome do utilizador e o número máximo de tentativas permitidas.
O programa deverá ter um menu com as opções seguintes:
(1) Inserir o nome do jogador
(2) Definir o número máximo de tentativas
(3) Iniciar um novo jogo
(4) Ver pontuações
(5) Fim
Este programa é para ser resolvido por grupos de 2 alunos. Cada grupo coloca a sua resolução na plataforma da escola em Módulo 3 - Programação Estruturada -> Jogo "Adivinhe o Número".
Programa "Calculadora"
Fazer no VisuAlg uma calculadora para números reais que tenha as operações de soma, subtração, multiplicação e divisão. O programa deverá ter uma interface com o utilizador baseada num menu de opções:
(1) Inserir os operandos
(2) Soma
(3) Subtração
(4) Multiplicação
(5) Divisão
(6) Sair
As opções 2 a 5 devem chamar, cada um, uma função que efetue o cálculo, retornando o resultado que é escrito no programa principal. O menu de opções é definido no programa principal.
(1) Inserir os operandos
(2) Soma
(3) Subtração
(4) Multiplicação
(5) Divisão
(6) Sair
As opções 2 a 5 devem chamar, cada um, uma função que efetue o cálculo, retornando o resultado que é escrito no programa principal. O menu de opções é definido no programa principal.
Etiquetas:
calculadora,
funções,
menu,
visualg
VisuAlg - Menu de Opções
Exemplo de um menu de opções para ser usado na interface de um programa. Este programa não faz nada de concreto, apenas exemplifica como deve ser a estrutura de um menu de opções.
NOTA: No VisuAlg existe o ciclo repita ... ate que é diferente do ciclo repita ... enquanto do WebPortugol.
algoritmo "menu_de_opcoes"
var
opcao: inteiro
procedimento subprograma1( op1: inteiro )
inicio
escreval( "Escolhida a opção ", op1 )
fimprocedimento
procedimento subprograma2( op2: inteiro )
inicio
escreval( "Escolhida a opção ", op2 )
fimprocedimento
procedimento subprograma3( op3: inteiro )
inicio
escreval( "Escolhida a opção ", op3 )
fimprocedimento
procedimento subprograma4( op4: inteiro )
inicio
escreval( "Escolhida a opção ", op4 )
fimprocedimento
inicio
repita
escreval( "(1) Opção 1" )
escreval( "(2) Opção 2" )
escreval( "(3) Opção 3" )
escreval( "(4) Opção 4" )
escreval( "(5) Sair" )
escreva( "Insira a sua opção: " )
leia( opcao )
escolha opcao
caso 1
subprograma1( opcao )
caso 2
subprograma2( opcao )
caso 3
subprograma3( opcao )
caso 4
subprograma4( opcao )
caso 5
escreval( "O menu vai terminar ..." )
outrocaso
escreval( "Opção inválida!" )
fimescolha
ate opcao = 5
fimalgoritmo
terça-feira, 2 de dezembro de 2014
Exercício com Subprogramas - Numeração Romana
Fazer um programa no VisuAlg que dado um número entre 1 e 9 escreva a correspondente representação em numeração romana.
O programa principal deve ler o número, validar se está dentro do intervalo pretendido e em seguida chamar uma função, passando o número lido como parâmetro. A função retorna a cadeia de caracteres correspondente à representação em numeração romana. Se o número lido estiver fora do intervalo, o programa principal apresenta uma mensagem de erro.
Apresentar a resolução num comentário a este post.
Etiquetas:
funções,
subprogramas,
visualg
Exercício com Subprogramas - Tabuada
Fazer no VisuAlg o exercício da tabuada que foi apresentado neste post.
O programa deve agora no programa principal ler o número (entre 1 e 10) e depois chamar um procedimento, passando o número lido como parâmetro, que escreve a tabuada desse número. O programa principal deve validar se o número lido está dentro do intervalo pretendido. Em caso contrário, apresenta uma mensagem de erro.
Responder com um comentário a este post.
Etiquetas:
procedimentos,
visualg
Resolução de Exercício
Resolução do exercício do post anterior:
algoritmo "diaDaSemana"
var
dia: inteiro
diaDaSemana: caractere
funcao diaSemana( d: inteiro) : caractere
var
ds: caractere
inicio
escolha d
caso 1
ds <- "Domingo"
caso 2
ds <- "Segunda-feira"
caso 3
ds <- "Terça-feira"
caso 4
ds <- "Quarta-feira"
caso 5
ds <- "Quinta-feira"
caso 6
ds <- "Sexta-feira"
caso 6
ds <- "Sábado"
outrocaso
ds <- "Valor inválido"
fimescolha
retorne ds
fimfuncao
inicio
escreval( "Insira um número entre 1 e 7" )
leia( dia )
diaDaSemana <- diaSemana( dia )
escreval( "O dia da semana é ", diaDaSemana )
fimalgoritmo
algoritmo "diaDaSemana"
var
dia: inteiro
diaDaSemana: caractere
funcao diaSemana( d: inteiro) : caractere
var
ds: caractere
inicio
escolha d
caso 1
ds <- "Domingo"
caso 2
ds <- "Segunda-feira"
caso 3
ds <- "Terça-feira"
caso 4
ds <- "Quarta-feira"
caso 5
ds <- "Quinta-feira"
caso 6
ds <- "Sexta-feira"
caso 6
ds <- "Sábado"
outrocaso
ds <- "Valor inválido"
fimescolha
retorne ds
fimfuncao
inicio
escreval( "Insira um número entre 1 e 7" )
leia( dia )
diaDaSemana <- diaSemana( dia )
escreval( "O dia da semana é ", diaDaSemana )
fimalgoritmo
Etiquetas:
funções,
seleção múltipla,
visualg
Instrução de Seleção Múltipla (continuação)
Repetir o exercício do post anterior mas usando uma função em vez do procedimento. A função deverá devolver uma cadeia de caracteres com o nome do dia da semana.
Colocar a resolução num comentário a este post.
Colocar a resolução num comentário a este post.
Etiquetas:
funções,
seleção múltipla,
subprogramas,
visualg
Instrução de Seleção Múltipla
Procurar no tutorial sobre a linguagem VisuAlg (Ajuda -> A Linguagem VisuAlg) a instrução de seleção múltipla. Aplicar esta instrução na resolução do exercício seguinte:
- O programa principal lê um número compreendido entre 1 e 7, inclusive. Se o número lido estiver fora deste intervalo, o programa apresenta uma mensagem de erro.
- Dentro do programa principal, no caso de ter sido lido um número dentro do intervalo pretendido, é chamado um subprograma do tipo procedimento que recebe o número lido como parâmetro e escreve o dia da semana correspondente. Por exemplo, ao número 1 corresponde "Domingo", ao número 2, "Segunda-feira" e assim sucessivamente.
Apresentar a resolução deste exercício num comentário a este post.
Apresentar a resolução deste exercício num comentário a este post.
Etiquetas:
procedimentos,
seleção múltipla,
subprogramas,
visualg
quinta-feira, 27 de novembro de 2014
Exercício no VisuAlg - Funções e Procedimentos
Alterar o exercício deste post usando uma função para calcular a média e um procedimento para escrever a classificação qualitativa.
Cada aluno coloca a resolução num comentário a este post.
Cada aluno coloca a resolução num comentário a este post.
Etiquetas:
funções,
procedimentos,
visualg
terça-feira, 25 de novembro de 2014
Exercício no VisuAlg
Fazer um algoritmo no VisuAlg para ler 3 notas (entre 0 e 20) de um aluno, calcular a média das 3 notas e apresentar a classificação qualitativa:
- média entre 0 e 4: Mau
- média entre 5 e 9: Medíocre
- média entre 10 e 13: Suficiente
- média entre 14 e 17: Bom
- média entre 18 e 20: Muito Bom
Algoritmos no VisuAlg
Instalar o ambiente de desenvolvimento em Português Estruturado VisuAlg.
Converter para o VisuAlg as três resoluções (com os ciclos enquanto, repita e para) do exercício que está resolvido neste post.
Ver um tutorial em A Linguagem de Programação do VisuAlg.
Etiquetas:
português estruturado,
visualg
quinta-feira, 20 de novembro de 2014
Módulo 3 - Exercício 3 (Resolução)
Resolução com ciclo para:
programa sequencia
declaracoes
inteiro x, n, p, max
inicio
escreva ("\nInsira um número inteiro: ")
leia (x)
escreva ("\nInsira o número de valores a gerar: ")
leia (max)
para n<-1 ate max passo 1
se (x mod 2 = 0) entao
x<-x div 2
senao
x<-3*x+1
fimse
escreva( "\n", x )
fimpara
fim
programa sequencia
declaracoes
inteiro x, n, p, max
inicio
escreva ("\nInsira um número inteiro: ")
leia (x)
escreva ("\nInsira o número de valores a gerar: ")
leia (max)
para n<-1 ate max passo 1
se (x mod 2 = 0) entao
x<-x div 2
senao
x<-3*x+1
fimse
escreva( "\n", x )
fimpara
fim
Etiquetas:
instruções cíclicas,
webportugol
Módulo 3 - Exercício 3
O conjunto de regras seguintes permite gerar uma sequência de números:
1. Ler um número inteiro;
2. Se for ímpar, multiplica-se por 3 e soma-se 1;
3. Se for par, divide-se por 2.
Repetir os passos 2 e 3 para cada número obtido.
Fazer um programa no WebPortugol que leia o primeiro número inteiro (passo 1) e o número de vezes que os passos 2 e 3 são repetidos.
Descobrir o que é que as sequências de números gerados têm de especial. Responder com um comentário a este post, colocando também o programa resolvido.
Etiquetas:
instruções cíclicas,
webportugol
Resolução Módulo 3 - Exercício 2
Com um ciclo para:
programa tabuada
declaracoes
inteiro x, n, p
inicio
escreva("Insira o número (entre 1 e 9):")
leia( x )
se (x >= 1 e x <= 9) entao
para n<-1 ate 10 passo 1
p<-x*n
escreva( "\n", x, " x ", n, " = ", p )
fimpara
senao
escreva( "\nNúmero inválido." )
fimse
fim
Com um ciclo enquanto:
programa tabuada
declaracoes
inteiro x, n, p
inicio
escreva ("Insira um número entre 1 e 9: ")
leia (x)
se (x>0 e x<10) entao
n<-1
enquanto (n<=10) faca
p<-x*n
escreva( "\n", x, " x ", n, " = ", p )
n<-n+1
fimenquanto
senao
escreva( "\nNúmero inválido." )
fimse
fim
Com um ciclo repita:
programa tabuada
declaracoes
inteiro x, n, p
inicio
escreva ("Insira um número entre 1 e 10: ")
leia (x)
se (x>0 e x<=10) entao
n<-1
repita
p<-x*n
escreva( "\n", x, " x ", n, " = ", p )
n<-n+1
enquanto(n<=10)
senao
escreva( "\nNúmero inválido." )
fimse
fim
NOTAS:
programa tabuada
declaracoes
inteiro x, n, p
inicio
escreva("Insira o número (entre 1 e 9):")
leia( x )
se (x >= 1 e x <= 9) entao
para n<-1 ate 10 passo 1
p<-x*n
escreva( "\n", x, " x ", n, " = ", p )
fimpara
senao
escreva( "\nNúmero inválido." )
fimse
fim
Com um ciclo enquanto:
programa tabuada
declaracoes
inteiro x, n, p
inicio
escreva ("Insira um número entre 1 e 9: ")
leia (x)
se (x>0 e x<10) entao
n<-1
enquanto (n<=10) faca
p<-x*n
escreva( "\n", x, " x ", n, " = ", p )
n<-n+1
fimenquanto
senao
escreva( "\nNúmero inválido." )
fimse
fim
Com um ciclo repita:
programa tabuada
declaracoes
inteiro x, n, p
inicio
escreva ("Insira um número entre 1 e 10: ")
leia (x)
se (x>0 e x<=10) entao
n<-1
repita
p<-x*n
escreva( "\n", x, " x ", n, " = ", p )
n<-n+1
enquanto(n<=10)
senao
escreva( "\nNúmero inválido." )
fimse
fim
NOTAS:
- Os três ciclos (para, repita e enquanto) são equivalentes;
- Qualquer ciclo para pode ser convertido num ciclo repita ou enquanto;
- Nem todos os ciclos repita ou enquanto podem ser convertidos em ciclos para.
Etiquetas:
instruções cíclicas,
webportugol
terça-feira, 18 de novembro de 2014
Módulo 3 - Exercício 2 (continuação)
Alterar o exercício anterior de forma a que sejam apresentadas todas as tabuadas dos números pares, compreendidos entre 2 e 20 (inclusive).
A resolução é individual. Cada aluno coloca a sua resolução num comentário a este post.
Etiquetas:
instruções cíclicas,
webportugol
Módulo 3 - Exercício 2
Elabore um algoritmo em WebPortugol que leia um número inteiro entre 1 e 9 a apresenta a tabuada de multiplicação respetiva.
Por exemplo, se o programa ler o número 5, deverá escrever,
5 x 1 = 5
5 x 2 = 10
5 x 3 = 15
5 x 4 = 20
5 x 5 = 25
5 x 6 = 30
5 x 7 = 35
5 x 8 = 40
5 x 9 = 45
5 x 10 = 50
A resolução é individual. Cada aluno coloca a sua resolução num comentário a este post.
Por exemplo, se o programa ler o número 5, deverá escrever,
5 x 1 = 5
5 x 2 = 10
5 x 3 = 15
5 x 4 = 20
5 x 5 = 25
5 x 6 = 30
5 x 7 = 35
5 x 8 = 40
5 x 9 = 45
5 x 10 = 50
A resolução é individual. Cada aluno coloca a sua resolução num comentário a este post.
Etiquetas:
instruções cíclicas,
webportugol
Módulo 3 - Resolução Exercício 1
Resolução do exercício 1 em WebPortugol
programa p
declaracoes
inteiro n, soma
inicio
soma<-0
para n<-2 ate 100 passo 3
soma <- soma + n
fimpara
escreva( "SOMA = ", soma )
fim
programa p
declaracoes
inteiro n, soma
inicio
soma<-0
para n<-2 ate 100 passo 3
soma <- soma + n
fimpara
escreva( "SOMA = ", soma )
fim
Etiquetas:
instruções cíclicas,
webportugol
quinta-feira, 13 de novembro de 2014
terça-feira, 11 de novembro de 2014
Exercício Módulo 2 - Instruções Condicionais (2)
Escreva um algoritmo que calcule o valor do prémio de um seguro automóvel em função dos seguintes parâmetros:
- Preço base do seguro = 50,00€
- Idade da viatura (acréscimo ao preço base):
- Entre 6 e 10 anos = 40,00€
- Até 5 anos = 25,00€
- Entre 11 anos e 15 anos = 50,00€
- 16 ou mais anos = 80,00€
- Até 5 anos = 25,00€
- Entre 11 anos e 15 anos = 50,00€
- 16 ou mais anos = 80,00€
- Se a idade do condutor for inferior a 25 anos ou maior ou igual a 60 anos, haverá um agravamento adicional de 25€.
O algoritmo, lê a idade da viatura e a idade do condutor e apresenta o valor total do prémio do seguro.
Representar o algoritmo em:
1. Fluxograma (resolver em papel)
2. Português Estruturado - WebPortugol (colocar na plataforma - Módulo 2, Exercício Instruções Condicionais 2)
Este exercício é para ser resolvido individualmente.
Etiquetas:
Fluxogramas,
instruções condicionais,
webportugol
quinta-feira, 6 de novembro de 2014
Exercício Módulo 2 - Trabalho para Avaliação
Considere o exercício seguinte:
1. Um posto de combustíveis vende os seus produtos, com a seguinte tabela de descontos:
Gasóleo
|
Até 10 litros, desconto de 1% |
10 litros ou mais e menos de 20 litros, desconto de 2% | |
20 litros ou mais, desconto de 3% | |
Gasolina 95
|
Até 10 litros, desconto de 1,5% |
10 litros ou mais e menos de 20 litros, desconto de 3% | |
20 litros ou mais, desconto de 4% |
Escreva um algoritmo que leia o número de litros vendidos e o tipo de combustível (utilizar o carácter D para gasóleo e G para gasolina), calcule e escreva o valor a ser pago pelo cliente sabendo-se que o preço do litro do gasóleo é de 1,197€ e o da gasolina é de 1,378€.
Apresentar o algoritmo em fluxograma.
2. Fazer o algoritmo anterior no WebPortugol, acrescentando o seguinte:
- O programa deve ler repetidamente os dados de entrada (número de litros vendidos e o tipo de combustível) para vários clientes, até ser lido um número de litros igual a 0. Por cada cliente, o programa apresenta uma mensagem com o número de litros, o tipo de combustível e o valor a pagar, por exemplo, 35 litros de gasóleo pelo preço de 40,64€.
- Se o quantidade total de combustível, de qualquer tipo, atingir os 500 litros, o programa termina.
- Se for lido um número de litros negativo, o programa apresenta uma mensagem de erro e pede para inserir um novo valor.
- Se for inserido para o tipo de combustível um carácter diferente de D ou G, o programa apresenta uma mensagem de erro e pede para inserir um novo valor.
As respostas (fluxograma + programa) deverão ser colocadas num só
ficheiro (em formato PDF ou doc) e submetidas na plataforma da escola (Módulo 2 - Exercício Instruções Cíclicas).
O nome do ficheiro tem de conter o nome do grupo.
Deve ser submetida uma resposta por grupo.
Etiquetas:
Fluxogramas,
instruções cíclicas,
instruções condicionais,
webportugol
terça-feira, 4 de novembro de 2014
Continuação Exercício Módulo 2 - Instruções Cíclicas (3)
Alterar o exercício do post anterior de forma a que no início do programa seja pedido o número de valores inteiros que serão lidos. Ou seja, em vez de serem 20 valores inteiros, é o utilizador que indica quantos valores devem ser lidos.
Etiquetas:
instruções cíclicas,
webportugol
Resolução Exercício Módulo 2 - Instruções Cíclicas (3)
programa numeros
declaracoes
inteiro numero, soma, maior, menor, contador
real
media
inicio
//
inicializacao de variáveis
contador <- 0
soma
<- 0
//
leitura do primeiro número
escreva( "Insira um número inteiro:
" )
leia( numero )
//
inicializa o contador em 1
contador <- 1
//
inicializa as variáveis maior e menor
//
como sendo iguais ao primeiro número lido
soma
<- numero
maior <- numero
menor <- numero
//
inicia a leitura dos restantes números
// (segundo número até ao vigésimo número)
enquanto ( contador < 20 ) faca
// pede para inserir um novo número
escreva( "\nInsira um número inteiro:
" )
leia(
numero )
// aumenta o contador por cada numero lido
contador <- contador + 1
// acrescenta à soma o numero lido
soma
<- soma + numero
// verifica se o numero lido é o maior
se ( numero > maior ) entao
maior <- numero
senao
// senao, verifica se é o menor
se ( numero < menor ) entao
menor <- numero
fimse
fimse
fimenquanto
//
calcula a média dos 20 números
media <- soma / 20
//
escreve os resultados pretendidos
escreva( "\nMaior numero lido: ",
maior )
escreva( "\nMenor numero lido: ",
menor )
escreva( "\nSoma dos números lidos :
", soma )
escreva( "\nMédia dos números lidos:
", media )
fim
Etiquetas:
instruções cíclicas,
webportugol
Exercício Módulo 2 - Instruções Cíclicas (3)
Resolver no WebPortugol o exercício seguinte:
Ler uma sequência de 20 números inteiros. Após a leitura dos 20 números, apresentar os resultados seguintes:
Ler uma sequência de 20 números inteiros. Após a leitura dos 20 números, apresentar os resultados seguintes:
- Maior número lido;
- Menor número lido;
- Soma de todos os números lidos;
- Média dos 20 números lidos.
Etiquetas:
instruções cíclicas,
webportugol
quinta-feira, 30 de outubro de 2014
Exercício Módulo 2 - Instruções Cíclicas (2)
Resolver no WebPortugol o exercício que já foi apresentado neste post, com as alterações seguintes:
- O programa deve pedir ao utilizador para inserir o nome;
- No final deve apresentar uma mensagem do género:
- O programa pede sucessivamente os dados de entrada (nome, peso e altura) até ser lido, para um utilizador, um peso e uma altura iguais a 0.
Etiquetas:
instruções cíclicas,
instruções condicionais,
webportugol
Resolução Exercício Módulo 2 - Instruções Cíclicas
Pares e ímpares com ciclo repita...enquanto
programa
pares_e_impares
declaracoes
inteiro x, r
inicio
repita
escreva( "\nInsira um número:
" )
leia( x )
se (x != 0 ) entao
r <- x mod 2
se (r = 0) entao
escreva( "\n", x,
" é par" )
senao
escreva( "\n", x,
" é ímpar" )
fimse
fimse
enquanto( x != 0 )
fim
Pares e ímpares com ciclo enquanto...faça
programa
pares_e_impares
declaracoes
inteiro x, r
inicio
escreva( "\nInsira um número: " )
leia( x )
enquanto( x != 0 ) faca
r <- x mod 2
se (r = 0) entao
escreva( "\n", x,
" é par" )
senao
escreva( "\n", x,
" é ímpar" )
fimse
escreva( "\nInsira um número:
" )
leia( x )
fimenquanto
fim
Etiquetas:
instruções cíclicas,
instruções condicionais,
webportugol
Exercício Módulo 2 - Instruções Cíclicas
Fazer no WebPortugol o algoritmo seguinte:
Ler repetidamente um número até ser lido o número 0. Para cada número diferente de 0, indica se é par ou ímpar.
A resolução no Scratch é
Ler repetidamente um número até ser lido o número 0. Para cada número diferente de 0, indica se é par ou ímpar.
A resolução no Scratch é
Etiquetas:
instruções cíclicas,
instruções condicionais,
Scratch,
webportugol
terça-feira, 28 de outubro de 2014
Exercício Módulo 2 - Instruções Condicionais (Continuação)
Alterar o algoritmo em Português Estruturado do post anterior de forma a que seja lido inicialmente o nome do funcionário. Por exemplo, se o funcionário tiver 20 anos, for solteiro e se chamar António Santos, o programa no WebPortugol deverá apresentar no final a mensagem,
O funcionário António Santos pertence à Categoria 1
O programa deverá ainda validar o estado civil, ou seja, só aceita os caracteres 'C' ou 'S'. No caso de ser inserido outro carácter, o programa apresenta a mensagem Estado civil inválido!
As respostas (fluxograma + programa) deverão ser colocadas num só ficheiro (em formato PDF) e submetidas na plataforma da escola (Módulo 2 - Exercício Instruções Condicionais). Deve ser submetida uma resposta por grupo.
As respostas (fluxograma + programa) deverão ser colocadas num só ficheiro (em formato PDF) e submetidas na plataforma da escola (Módulo 2 - Exercício Instruções Condicionais). Deve ser submetida uma resposta por grupo.
Etiquetas:
Fluxogramas,
webportugol
Exercício Módulo 2 - Instruções Condicionais (Resolução)
programa categorias
declaracoes
caracter estado
inteiro idade
cadeia categoria
inicio
escreva( "Insira o estado civil (S ou C):
" )
leia( estado )
escreva( "\nInsira a idade: " )
leia( idade )
se
(estado = 'S') entao
se( idade < 25 ) entao
categoria <- "categoria
1"
senao
categoria <- "categoria
2"
fimse
senao
se( idade < 34 ) entao
categoria <- "categoria
3"
senao
categoria <- "categoria
4"
fimse
fimse
escreva( "\n", categoria )
fim
Etiquetas:
instruções condicionais,
webportugol
Exercício Módulo 2 - Instruções Condicionais
Desenvolver um algoritmo para resolver o problema seguinte:
O algoritmo deverá ler um carácter, representando o estado civil, e um número inteiro, representando a idade do funcionário.
Cada aluno, individualmente resolve este problema, representando o algoritmo nas formas seguintes:
O algoritmo deverá ler um carácter, representando o estado civil, e um número inteiro, representando a idade do funcionário.
Cada aluno, individualmente resolve este problema, representando o algoritmo nas formas seguintes:
- Fluxograma (usando o Gliffy ou o SmartDraw);
- Programa em Português Estruturado no WebPortugol.
Etiquetas:
Fluxogramas,
webportugol
quinta-feira, 23 de outubro de 2014
Trabalho para Avaliação do Módulo 2
Considere o problema seguinte:
Cada grupo resolve este problema, apresentando um algoritmo representado nas formas seguintes:
- Linguagem corrente;
- Fluxograma (usando o Gliffy ou o SmartDraw);
- Programa em Scratch;
- Programa em Português Estruturado no WebPortugol;
As respostas deverão ser colocadas num só ficheiro (em formato PDF) e submetidas na plataforma da escola (Módulo 2 - Trabalho 1) até ao final das sessões de hoje. Deve ser submetida uma resposta por grupo.
Etiquetas:
módulo 2,
trabalho prático
Módulo 2
O módulo 2 tem 44 tempos letivos e está previsto para terminar no dia 18 de novembro de 2014.
Os elementos de avaliação deste módulo (65% da classificação final) são um teste, a realizar no final do módulo e com um peso de 50%, e 2 trabalhos práticos que terão também um peso de 50%.
terça-feira, 21 de outubro de 2014
Exercício no WebPortugol
Fazer um programa para verificar se 3 valores reais podem ser as medidas dos lados
de um triângulo.
Resolver no WebPortugol e colocar a resolução num comentário a este post.
Cada aluno responde individualmente.
Etiquetas:
exercícios,
triângulos,
webportugol
Exemplo WebPortugol
Exemplo em Português Estruturado no WebPortugol
As instruções devem ser escritas conforme o exemplo, colocando espaços à esquerda para indicar a hierarquia de instruções.
Por exemplo,
escreva( "\nMaior do que 0" )
deve ser escrito mais para a direita para se perceber que está associado à instrução da linha anterior (se (x>0) entao).
O símbolo \n significa uma mudança de linha.
As instruções devem ser escritas conforme o exemplo, colocando espaços à esquerda para indicar a hierarquia de instruções.
Por exemplo,
escreva( "\nMaior do que 0" )
deve ser escrito mais para a direita para se perceber que está associado à instrução da linha anterior (se (x>0) entao).
O símbolo \n significa uma mudança de linha.
Etiquetas:
exemplo,
webportugol
Java - Bloqueios de Segurança
Como resolver os bloqueios de segurança do Java:
ver o link https://www.java.com/en/download/help/java_blocked.xml
E ler a partir de
ver o link https://www.java.com/en/download/help/java_blocked.xml
E ler a partir de
Etiquetas:
bloqueio de segurança,
Java
Algoritmos em Português Estruturado
Link para acesso ao WebPortugol.
Outras alternativas de ambientes de desenvolvimento em Português Estruturado ou Portugol:
Portugol IDE
Visualg
Outras alternativas de ambientes de desenvolvimento em Português Estruturado ou Portugol:
Portugol IDE
Visualg
Etiquetas:
portugol IDE,
português estruturado,
visualg,
webportugol
quinta-feira, 16 de outubro de 2014
Exercício com tipos de dados
Resolver o exercício 1 da ficha 4 e apresentar a resposta num comentário a esta mensagem (cada grupo apresenta uma resposta).
Etiquetas:
tipos de dados
Exercício com Expressões 2
Resolver o exercício 2 da ficha 5 e apresentar a resposta num comentário a esta mensagem (cada grupo apresenta uma resposta).
Exercício com Expressões 1
Resolver o exercício 1 da ficha 3 e apresentar a resposta num comentário a esta mensagem (cada grupo apresenta uma resposta).
terça-feira, 7 de outubro de 2014
quinta-feira, 2 de outubro de 2014
Continuação do Exercício Anterior
Completar o exercício anterior de forma a que, no caso de as medidas inseridas poderem ser um triângulo, o programa de seguida classifica o tipo de triângulo:
- Equilátero: todos os lados iguais;
- Isósceles: dois lados iguais;
- Escaleno: todos os lados diferentes.
Resolver com um fluxograma e com um programa no Scratch. No Scratch o programa deverá ainda desenhar um triângulo correspondente ao tipo encontrado.
- Equilátero: todos os lados iguais;
- Isósceles: dois lados iguais;
- Escaleno: todos os lados diferentes.
Resolver com um fluxograma e com um programa no Scratch. No Scratch o programa deverá ainda desenhar um triângulo correspondente ao tipo encontrado.
Etiquetas:
Expressões lógicas,
Scratch,
Tipo de triângulo
Resolução de Exercício
Resolução em Scratch do exercício para verificar se 3 números podem ser as medidas dos lados de um triângulo.
Etiquetas:
Expressões lógicas,
Scratch
Exercício com Expressões Lógicas
Resolva o exercício seguinte, apresentando a resposta como um comentário a esta mensagem.
Etiquetas:
Expressões lógicas
terça-feira, 30 de setembro de 2014
quinta-feira, 25 de setembro de 2014
Scratch: Resolução de Exercício
Ler repetidamente um número até ser lido o número 0. Para cada número diferente de 0, indica se é par ou ímpar.
Usando o controlo "repete até":
Usando o controlo "para sempre se":
Estas resoluções funcionam exactamente conforme o que era pretendido?
Usando o controlo "repete até":
Usando o controlo "para sempre se":
Estas resoluções funcionam exactamente conforme o que era pretendido?
Etiquetas:
par ou ímpar,
Scratch
Aplicações para Desenho de Fluxogramas
SmartDraw - http://www.smartdraw.com/downloads/
Gliffy (funciona on line) - http://www.gliffy.com/
(podem usar outras aplicações desde que permitam o desenho de fluxogramas).
Gliffy (funciona on line) - http://www.gliffy.com/
(podem usar outras aplicações desde que permitam o desenho de fluxogramas).
Etiquetas:
Fluxogramas,
programas de desenho
terça-feira, 23 de setembro de 2014
Verificar se um número é par ou ímpar
1. Ler um número
2. Didivir o número por 2 e guardar o resto
3. Se o resto for 0 o número é par senão o número é ímpar
Resolução usando o Scratch
2. Didivir o número por 2 e guardar o resto
3. Se o resto for 0 o número é par senão o número é ímpar
Resolução usando o Scratch
Grupos de Trabalho
Responder a esta mensagem indicando o nome do grupo e os nomes de todos os elementos que fazem parte do grupo.
Módulo 1
O módulo 1 tem 44 tempos letivos e está previsto para terminar no dia 14 de outubro de 2014.
A avaliação do módulo será feita através de um teste de escolha múltipla, a realizar no final do módulo com um peso de 50% e através dos exercícios das aulas práticas que terão também um peso de 50%.
A avaliação do módulo será feita através de um teste de escolha múltipla, a realizar no final do módulo com um peso de 50% e através dos exercícios das aulas práticas que terão também um peso de 50%.
Bem-vindo
Bem-vindo ao blogue da disciplina de Programação de Sistemas Informáticos.
Coloque um comentário a esta mensagem com o nome e endereço de email.
Obrigado
Coloque um comentário a esta mensagem com o nome e endereço de email.
Obrigado
Subscrever:
Mensagens (Atom)