Mudanças entre as edições de "PRG29002 - Programação I - Eng.Telecom 2017-1"
Linha 118: | Linha 118: | ||
*#Every 4 Pomodoros take a longer break between 15 and 30 minutes. | *#Every 4 Pomodoros take a longer break between 15 and 30 minutes. | ||
*Desenvolva um algoritmo na forma de fluxograma que exibe todos os números pares de 1 a 100 | *Desenvolva um algoritmo na forma de fluxograma que exibe todos os números pares de 1 a 100 | ||
+ | |||
+ | =Pseudo-código= | ||
+ | {{collapse top|Pseudo-código utilizando Portugol - Introdução e condicionais}} | ||
+ | |||
+ | Ver exemplos de códigos Portugol dentro do software portugol (menu Arquivo->Abrir exemplo) | ||
+ | *[http://docente.ifsc.edu.br/cleber.amaral/ensino/2016-2/PRG29002/Portugol/ Portugol offline, TCC sobre Portugol e exemplos .POR] | ||
+ | |||
+ | Exercícios: | ||
+ | #Desenvolva um algoritmo na forma de pseudocódigo que obtenha três números inteiros distintos e escreva na tela os valores do menor para o maior. (id:0.10) | ||
+ | #Implemente um pseudocódigo que converte “celsius para fahrenheit” ou “fahrenheit para celsius” conforme opção que deve ser apresentada pelo algoritmo. (id:0.09) | ||
+ | #Implemente por fluxograma e pseudocódigo um controlador de acesso que verifica se a senha digitada é igual a senha padrão “1234” abrindo a porta. O sistema deve sinalizar tanto no caso de acesso liberado ou negado. (id:0.07) | ||
+ | #Desenvolva um algoritmo na forma de pseudocódigo que obtenha duas datas fornecidas pelo usuário (três números inteiros cada: dia, mês e por último ano com 4 dígitos) e mostra como resultado qual das duas datas é cronologicamente maior. (id:0.13) | ||
+ | #Implementar em pseudocódigo um algoritmo que através do valor ôhmico dado diz qual é a sequencia de cores de um resistor. Considere apenas resistores de 4 bandas de cores incluindo a tolerância, porém neste exercício ignore a tolerância. Desconsidere resistores de precisão, aqueles com multiplicadores ouro e prata. Considere que o multiplicador máximo é de 10MOhm (violeta). (id:0.12) | ||
+ | #Implementar em pseudocódigo um algoritmo que através de uma sequencia de cores de um resistor dado dá o valor ôhmico do resistor. Considere apenas resistores de 4 bandas de cores incluindo a tolerância, porém neste exercício ignore a tolerância. Desconsidere resistores de precisão, aqueles com multiplicadores ouro e prata. Considere que o multiplicador máximo é de 10MOhm (violeta). (id. 0.17) | ||
+ | #Implemente em pseudocódigo o algoritmo descrito no fluxograma abaixo (clique na imagem para ampliar) (id:0.08): <br> [[Image:bhaskara.png|200px]] | ||
+ | #Implementar em pseudocódigo algoritmo que imprime em tela o ranking de países através das medalhas obtidas nas olimpíadas. Sabendo que fica melhor colocado no ranking o país que soma mais medalhas de ouro, caso haja empate aquele que soma mais prata entre os empetados e caso haja empate na quantidade de prata também será melhor colocado no ranking o que tiver mais bronzes. O algoritmo deve ser capaz de armazenar e ranquear três países. Dica: crie as variáveis paisA_ouro, paisA_prata e paisA_bronze como numéricas para armazenar as medalhas obtidas pelo país A, da mesma forma para o país B e país C. Você pode limitar a quantidade de medalhas total e determinar pesos para obter um valor absoluto de pontuação. (id:0.18) | ||
+ | #Implemente um algoritmo em pseudocódigo que informa ao usuário se ele é obrigado ou não a fazer sua declaração de imposto de renda. O algoritmo deve solicitar ao usuário que responda sim ou não para as seguintes questões, sendo que o contribuinte deve declarar se se enquadrar em uma delas ou conforme descreve as condições (o texto está resumido, caso de dúvidas ver fonte): | ||
+ | ## Recebeu RENDIMENTOS TRIBUTÁVEIS superior a R$ 28.123,91 | ||
+ | ## Recebeu RENDIMENTOS ISENTOS superior a R$ 40.000,00 | ||
+ | ## OBTEVE GANHO DE CAPITAL NA ALIENAÇÃO DE BENS ou BOLSAS DE VALORES | ||
+ | ## Caso relacionado a ATIVIDADE RURAL: obteve receita superior a R$ 140.619,55 ou pretenda compensar, PREJUÍZOS de anos anteriores | ||
+ | ## Tem POSSE total superior a R$ 300.000,00, estando dispensado se seus bens estiverem lançados na declaração do cônjuge | ||
+ | ## Passou à CONDIÇÃO DE RESIDENTE no Brasil em qualquer mês | ||
+ | ## Quem optou pela ISENÇÃO DO IMPOSTO SOBRE A RENDA INCIDENTE SOBRE O GANHO DE CAPITAL auferido na VENDA DE IMÓVEIS RESIDENCIAIS | ||
+ | #*Fonte: http://economia.ig.com.br/financas/impostoderenda/2016-02-03/imposto-de-renda-confira-o-que-muda-para-a-declaracao-em-2016.html | ||
+ | #Implemente um algoritmo que solicita ao usuário entrar com 10 temperaturas, o algoritmo deve usar um laço de repetição para isso. No final deve mostrar a maxima, minima e média das temperaturas (id:0.16) | ||
+ | #Desenvolva em pseucodigo um algortimo que testa o vencedor de uma rodada de truco. A sequencia das cartas esta descrita na imagem abaixo bem como dos naipes franceses. Além da sequencia ali descrita, uma carta será sorteada e fará com que se torne a mais forte (manilha) aquela de força imediatamente superior sorteada (no caso da carta sorteada ser um 3 a manilha é o 4). A rodada é vencida numa disputa de melhor de três. As manilhas nunca empatam, neste caso prevalesce o naipe conforme sequencia. No caso de empate no último turno vence a rodada quem venceu o primeiro turno. Na ocorrência de empate nos três turnos vence a rodada quem foi o primeiro a jogar. <br> [[Image:truco.jpg]] | ||
+ | |||
+ | Proposta de solução para o exercício 1. Por: Guilherme dos Santos Januário: | ||
+ | Observar que este algoritmo falha em algumas condições de entrada | ||
+ | |||
+ | <code> | ||
+ | algoritmo | ||
+ | declare n1, n2, n3, m numerico | ||
+ | |||
+ | escreva "Digite três números:" | ||
+ | leia n1, n2, n3 | ||
+ | se n1 > n2 e n1 > n3 e n3 > n2 entao | ||
+ | escreva n1, ", ", n3, ", ", n2 | ||
+ | se n2 > n1 e n2 > n3 e n3 > n1 entao | ||
+ | escreva n2, ", ", n3, ", ", n1 | ||
+ | se n3 > n2 e n3 > n1 e n1 > n2 entao | ||
+ | escreva n3, ", ", n1, ", ", n2 | ||
+ | se n1 > n2 e n1 > n3 e n2 > n3 entao | ||
+ | escreva n1, ", ", n2, ", ", n3 | ||
+ | se n2 > n1 e n2 > n3 e n1 > n3 entao | ||
+ | escreva n2, ", ", n1, ", ", n3 | ||
+ | se n3 > n2 e n3 > n1 e n2 > n1 entao | ||
+ | escreva n3, ", ", n2, ", ", n1 | ||
+ | fim_algoritmo. | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | Uma outra proposta de código para o problema 1: | ||
+ | <code> | ||
+ | algoritmo | ||
+ | declare n1, n2, n3 numerico | ||
+ | escreva "Digite três números:" | ||
+ | leia n1, n2, n3 | ||
+ | se n1>=n2 e n1>=n3 entao | ||
+ | se n2>=n3 entao | ||
+ | escreva n3, "-", n2, "-", n1 | ||
+ | senao | ||
+ | escreva n2, "-", n3, "-", n1 | ||
+ | senao se n2>=n1 e n2>=n3 entao | ||
+ | se n1>=n3 entao | ||
+ | escreva n3, "-", n1, "-", n2 | ||
+ | senao | ||
+ | escreva n1, "-", n3, "-", n2 | ||
+ | senao | ||
+ | se n1>=n2 entao | ||
+ | escreva n2, "-", n1, "-", n3 | ||
+ | senao | ||
+ | escreva n1, "-", n2, "-", n3 | ||
+ | fim_algoritmo. | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | Observe que os dois algoritmos apresentados acima possuem falhas em algumas condições caso as entradas possuam números iguais | ||
+ | |||
+ | *[https://vinyanalista.github.io/portugol/ Portugol online] | ||
+ | |||
+ | ==Pseudo-código utilizando Portugol - repetições== | ||
+ | Exercícios - série 1 | ||
+ | #Implemente um algoritmo que solicita ao usuario entrar com um numero negativo qualquer. O algoritmo deve mostrar todos os números impares e pares de 0 até este negativo indicado. Utilize a estrutura para, verifique qual o passo adequado para resolver esta questão. (id:1.07) | ||
+ | #Desenvolva uma algoritmo para marcar o placar de um jogo de futebol, deve solicitar ao usuário digitar A ou B, ao digitar A é somado um gol a equipe A e o mesmo para a B. Se digitado F deve encerrar e mostrar o placar final. (id:1.11) | ||
+ | #Implemente um algoritmo que obtém um número do usuário e utilizando laço para verifica se um número primo. Valide seu algoritmo comparando com a lista de primos [[Media:primos.pdf|Lista de números primos]] (id:1.14) | ||
+ | #Implemente um algoritmo que obtém dois números inteiros positivos do usuário e utilizando laço de repetição realização a multiplicação destes dois números através de operações de soma. (id:1.09) | ||
+ | #Implemente um algoritmo que obtém dois números inteiros positivos do usuário e utilizando laço de repetição realização a divisão destes dois números através de operações de subtração. (id:1.10) | ||
+ | #Faça um algoritmo que apresente a sequencia de Fibonacci dado um valor “n” que representa a quantidade de números em série que se deseja exibir | ||
+ | #Implemente um algoritmo que utiliza uma estrutura "PARA" afim de desenhar uma moldura com 10 colunas e "n" linhas. A quantidade de linhas "n" deve ser obtida do usuário. Se o usuário digitar 6 ficaria conforme mostrado a seguir: <code> | ||
+ | XXXXXXXXXX | ||
+ | X X | ||
+ | X X | ||
+ | X X | ||
+ | X X | ||
+ | XXXXXXXXXX | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | Exercícios - série 2 | ||
+ | #Rode e teste o exemplo do "Quadro 42 - Exemplo de uso de vetores em Portugol" do TCC de Antônio Medeiros, compare com a implementação de teste de números primos feito na lista anterior. Com o uso de vetores o que mudou? | ||
+ | #Implemente um algoritmo que solicita do usuário 10 números, após a leitura mostra ao usuários os números na ordem inversa em que foram digitados | ||
+ | #Escreva um algoritmo que solicita ao usuário digitar 6 números para uma aposta na megasena. O algoritmo deve utilizar a estrutura repita, gravar em variaveis distintas cada número que deve estar entre 1 e 60. Deve garantir que os 6 números são diferentes entre si e no final mostrar os números digitados | ||
+ | #Implemente o pseudocódigo de uma calculadora que realiza operações de soma ou subtração de dois números. A calculadora deve operar em um laço infinito encerrando sua operação se o usuário digitar "q" | ||
+ | #Implemente o pseudocódigo de um programa que solicita o nome e idade de 5 pessoas gravando em dois vetores distintos (um literal e outro numérico). No final imprime em tela o indice de memória de cada usuário e seus dados como no exemplo a seguir "O nome do usuário '1' é 'Joao' e tem 40 ano(s)" (Neste exemplo o usuário digitou nome: Joao, Idade: 40). Utilize estrutura de repetição REPITA. | ||
+ | #Implemente o pseudocódigo de um programa que utiliza uma matriz para armazenar informações NUMERICAS de um estoque de produtos. Cada linha desta matriz representa um produto, usaremos o limite de 5 produtos para este exercicio. A matrriz deve ter 3 colunas, a primeira representará a quantidade em estoque, a segunda o valor de custo e a terceira o preço de venda. O programa deve apresentar uma entrada de dados para receber do usuário parâmetros destes 5 produtos. No final um relatório deve ser apresentado mostrando a quantidade em estoque e o lucro bruto em % que está sendo aplicado para cada produto. Utilize estrutura de repetição ENQUANTO. | ||
+ | #Implemente em pseudocódigo um programa que obtém o nome de 10 alunos e suas 4 notas para cada aluno. No final deve imprimir um relatório mostrando cada aluno por nome, a média de suas notas e sua situação final (aprovado se a média for >= 6). Utilize vetores, matrizes e estruturas de repetição PARA. | ||
+ | |||
+ | Exercícios complementares: | ||
+ | *Sessão 12.5 (página 294) de Araújo, Everton Coimbra de. Algoritmos: fundamento e prática; 3ª ed. [S.l]:Visual Books, 2007. 414p. ISBN 9788575022092. | ||
+ | |||
+ | ==Pseudo-código utilizando Portugol - sub-rotinas e registros== | ||
+ | Exercícios | ||
+ | #Execute o código do TCC do Antonio Medeiros, "Quadro 49 - Exemplo de passagem de parâmetros por referência em Portugol" | ||
+ | #Execute o código do TCC do Antonio Medeiros, "Quadro 50 - Exemplo de uso de sub-rotina que retorna valor em Portugol" | ||
+ | #Implemente um algoritmo que realiza análises combinatórias pelo uso de uma sub-rotina de cálculo de fatorial. Neste caso o usuário deve entrar com um inteiro e o algoritmo deve retornar o número de possíveis combinações para aquele dado. | ||
+ | #Implemente um algoritmo que utilizando as sub-rotinas pré-definidas do portugol (seno e cosseno) criando outras sub-rotinas para cálculos da tangente, arco-seno, arco-coseno e arco-tangente. Neste caso utilizando angulos em radianos | ||
+ | #Implemente um algoritmo anterior agora aceitando angulos em graus | ||
+ | #Execute o código do TCC do Antonio Medeiros, "Quadro 56 - Exemplo de uso de vetor de registros em Portugol" | ||
+ | #Desenvolva uma algoritmo para marcar o placar de um jogo de futebol, deve solicitar ao usuário digitar o nome das equipes A e B, guardando esta informação em campos de registros bem como deve possuir campos para armazenar o placar de cada equipe. Depois que o usuário digitar os nomes deve aguardar o anúncio de gols. Ao digitar A é somado um gol a equipe A e o mesmo para a B. Se digitado F deve encerrar e mostrar o placar final mostrando os nomes das equipes. | ||
+ | #Implemente o pseudocódigo de um programa que solicita o nome e idade de 5 pessoas gravando em uma estrutura de dados tipo registro com dois campos (um literal e outro numérico). No final imprime em tela o indice de memória de cada usuário e seus dados como no exemplo a seguir "O nome do usuário '1' é 'Joao' e tem 40 ano(s)" (Neste exemplo o usuário digitou nome: Joao, Idade: 40). | ||
+ | |||
+ | Parte da implementação do problema das funções trigonométricas | ||
+ | <code> | ||
+ | algoritmo | ||
+ | declare angulo,s,c,t numerico | ||
+ | |||
+ | escreva "Digite um angulo: " | ||
+ | leia angulo | ||
+ | |||
+ | s <- arredonda(seno(angulo)) | ||
+ | escreva "O seno do angulo ",angulo," é: ",s | ||
+ | c <- arredonda(cosseno(angulo)) | ||
+ | escreva "O cosseno do angulo ",angulo," é: ",c | ||
+ | t <- arredonda(tangente(angulo)) | ||
+ | escreva "O tangente do angulo ",angulo," é: ",t | ||
+ | |||
+ | fim_algoritmo | ||
+ | |||
+ | sub-rotina tangente (x numerico) | ||
+ | declare aux numerico | ||
+ | aux <- seno(x) / cosseno(x) | ||
+ | retorne aux | ||
+ | fim_sub_rotina tangente | ||
+ | </syntaxhighlight> |
Edição das 11h38min de 16 de fevereiro de 2017
Dados importantes
- Professor da Disciplina: Cleber Jorge Amaral
- Email: cleber.amaral@ifsc.edu.br
- Atendimento paralelo: terças e quintas das 12:00 as 13:00 na Sala Multimeios de Tele (ao lado da reprografia)
- Agenda do professor: Ver página
Dados da Disciplina
- Ementa da disciplina na wiki: Engenharia de Telecomunicações 2ª Fase
- Página no moodle: moodle
- Monitoria: Programa_de_monitoria_dos_cursos_superiores_de_Telecomunicações
Plano de aula
Aula | Data | Horas | Conteúdo | Recursos | |
---|---|---|---|---|---|
1 | 9/2 | 2 | Aula inaugural, apresentação do professor e turma, apresentação da disciplina e introdução aos algoritmos | Lab Redes 2 | |
2 | 14/2 | 2 | Introdução ao fluxograma com resolução de exercícios | Lab Redes 1 | |
3 | 16/2 | 2 | Prática de fluxogramas | Lab Redes 2 | |
4 | 21/2 | 2 | Introdução ao pseudocódigo com resolução de exercícios | Lab Redes 1 | |
5 | 23/2 | 2 | Pseudocódigo: Estruturas de repetição e sub-rotinas | Lab Redes 2 | |
6 | 2/3 | 2 | Prática: Resolução de problemas em pseudocódigo e fluxogramas (declaração de variáveis, leia e escreva, uso de condicionais e biblioteca portugol) | Lab Redes 2 | |
7 | 7/3 | 2 | Pseudocódigo: Uso de vetores e sub-rotinas | Lab Redes 1 | |
8 | 9/3 | 2 | Prática: Resolução de problemas com vetores e sub-rotinas | Lab Redes 2 | |
9 | 14/3 | 2 | Pseudocódigo: Registros e revisão geral (preparação para prova) | Lab Redes 1 | |
10 | 16/3 | 2 | Pseudocódigo e fluxogramas: Resolução de exercícios (preparação para prova) | Lab Redes 2 | |
11 | 21/3 | 2 | Avaliação: Introdução a algoritmos (fluxograma e pseudocódigo) | Lab Redes 1 | |
12 | 23/3 | 2 | Prática: Correção da Avaliação / possível realização de recuperação | Lab Redes 2 | |
13 | 28/3 | 2 | Introdução ao C, primeiros conceitos de compilação, variáveis, controle de fluxo com if… else, switch, entrada e saída de dados com printf e scanf, | Lab Redes 1 | |
14 | 30/3 | 2 | Continuação C, condicionais, operadores relacionais, operadores lógicos. Prática: Controle de fluxo em C, entrada e saída de dados | Lab Redes 2 | |
15 | 4/4 | 2 | Continuação C: estruturas de repetição | Lab Redes 1 | |
16 | 6/4 | 2 | Prática: estruturas de repetição | Lab Redes 2 | |
17 | 11/4 | 2 | Continuação C: funções | Lab Redes 1 | |
18 | 13/4 | 2 | Prática: Funções em C | Lab Redes 2 | |
19 | 18/4 | 2 | Introdução a vetores e matrizes em C. Resolução de exercícios de vetores | Lab Redes 1 | |
20 | 20/4 | 2 | Prática: Resolução de exercícios de fixação de vetores. | Lab Redes 2 | |
21 | 25/4 | 2 | Compreendendo melhor a função main e exit, gerando números pseudo-aleatórios, defines e operadores e precedências | Lab Redes 1 | |
22 | 27/4 | 2 | Prática: Exercícios de C | Lab Redes 2 | |
23 | 2/5 | 2 | Avaliação: C até funções | Lab Redes 1 | |
24 | 4/5 | 2 | Prática: Correção da Avaliação / possível realização de recuperação | Lab Redes 2 | |
25 | 9/5 | 2 | Structs e Unions | Lab Redes 1 | |
26 | 11/5 | 2 | Prática: Structs e unions | Lab Redes 2 | |
27 | 16/5 | 2 | Ponteiros | Lab Redes 1 | |
28 | 18/5 | 2 | Prática: Exercicios ponteiros | Lab Redes 2 | |
29 | 23/5 | 2 | Vetor de Ponteiros e Ponteiro Para Estruturas, typedef, recursividade, apresentação do projeto | Lab Redes 1 | |
30 | 25/5 | 2 | Prática de Ponteiros e structs | Lab Redes 2 | |
31 | 30/5 | 2 | Avaliação: C até structs | Lab Redes 1 | |
32 | 1/6 | 2 | Prática: Correção da Avaliação / possível realização de recuperação / Desenvolvimento do projeto | Lab Redes 2 | |
33 | 6/6 | 2 | Alocação dinâmica de memória, apresentação do projeto | Lab Redes 1 | |
34 | 8/6 | 2 | Prática: Desenvolvimento do Projeto | Lab Redes 2 | |
35 | 13/6 | 2 | Desenvolvimento do Projeto | Lab Redes 1 | |
36 | 20/6 | 2 | Desenvolvimento do Projeto | Lab Redes 1 | |
37 | 22/6 | 2 | Prática: Desenvolvimento do Projeto | Lab Redes 2 | |
38 | 27/6 | 2 | Desenvolvimento do Projeto | Lab Redes 1 | |
39 | 29/6 | 2 | Avaliação: Apresentação do projeto | Lab Redes 2 | |
40 | 4/7 | 2 | Recuperação: Projeto | Lab Redes 1 | |
TOTAL | 80 |
Diário de aula
Introdução aos algoritmos utilizando fluxograma
- Apresentada ementa através dos slides disponibilizados.
- Conceito de Algoritmo: Sequência ordenada de passos para resolução de um dado problema.
- Para que serve e como abordaremos?
- Algoritmos estão associados a automação de processos, permitem descrever os passos que uma máquina (mecânica ou eletrônica) irá realizar geralmente de maneira repetitiva (garantindo repetibilidade).
- Trabalharemos neste curso com problemas bem definidos que possuem objetivos, caminhos de solução e expectativa de solução claros.
- Formas de representação
- Descrição narrativa: Descrição informal de uma situação e passos para solução de um problema
- Fluxograma: Operações são representadas por formas geométricas
- Pseudo-código: Representação de comportamento e ações por meio de regra predefinida
- Códigos de programação: Um PROGRAMA implementa um algoritmo. É o algoritmo materializado na forma de uma sequência de instruções.
- Descrição narrativa
- Trata-se de um texto livre mas é sugerido organizar em tópicos como os seguintes:
- Cenário;
- Problema;
- Dados de entrada e saída;
- Solução esperada;
- Etapas;
- Solução proposta.
- Exemplos comuns são receitas de culinária, mas pode-se descrever de forma narrativa qualquer tipo de algoritmo.
- Descreva o algoritmo para fazer um ovo frito
- Descreva o algoritmo para cozinhar macarrão instantâneo
- Trata-se de um texto livre mas é sugerido organizar em tópicos como os seguintes:
- Fluxogramas
- Um fluxograma é uma linguagem semi-gráfica que pode ser utilizada para descrição de algoritmos.
- Existem diferentes padrões, aqui utilizaremos o ANSI.
- Exemplo:
- Outros exemplos de algoritmos para exercitar fluxogramas (pode-se abstrair e fazer de modo simplificado na forma de uma série de processos ou modo mais completo com condicionais):
- Fritar um ovo
- Cozinhar macarrão instantâneo
- Cozinhar miojo com ovo
- Trocar o pneu de um carro
- Enviar um e-mail
- Pegar um livro na biblioteca
- Calcular a área de um cômodo
- Outros conceitos trabalhados
- abstração
- estruturas de dados
Desenvolvendo algoritmos na forma de fluxogramas
Exercícios para resolver em sala de aula:
- Desenvolve um algoritmo na forma de fluxograma para cálculo da média de dois números fracionários exibindo o resultado
- Desenvolva um algoritmo na forma de fluxograma que calcula a média de consumo de um veículo. Deve obter a distância que um veículo percorreu e a quantidade de litros consumida, exibindo em tela o consumo médio em km/l.
- Desenvolva um algoritmo na forma de fluxograma que lê dois valores inteiros e apresenta qual é o valor maior
- Desenvolva um algoritmo na forma de fluxograma que lê dois valores inteiros e apresenta a diferença do maior para o menor
- Desenvolva um algoritmo na forma de fluxograma que obtém a nota do aluno e mostra em tela o conceito sabendo que A se for >= 9.0, B >= 7.5 e < 9.0, C >= 6.0 e < 7.5 e D < 6.0
- Desenvolva um algoritmo na forma de fluxograma que obtém do usuário 10 valores, calcula a média e exibe (utilize uma estrutura de repetição)
- Desenvolva um algoritmo na forma de fluxograma que implementa a técnica de pomodoro, mostrando ao usuário o cronômetro e mensagens de quando deve fazer pausas (Siga os passos descritos aqui
- Choose a task you want to get done. Write it down.
- Set the your Pomodoro/timer to 25 minutes.
- Work on the task until the timer goes off. Tick the task off.
- Take a 5 minute break.
- Repeat.
- Every 4 Pomodoros take a longer break between 15 and 30 minutes.
- Desenvolva um algoritmo na forma de fluxograma que exibe todos os números pares de 1 a 100
Pseudo-código
Pseudo-código utilizando Portugol - Introdução e condicionais |
---|
Ver exemplos de códigos Portugol dentro do software portugol (menu Arquivo->Abrir exemplo) Exercícios:
Proposta de solução para o exercício 1. Por: Guilherme dos Santos Januário: Observar que este algoritmo falha em algumas condições de entrada
|