Algoritmos e Programação
_
Departamento de Informática
Turma 2015 – Noturno
Lista de exercícios – Estruturas de Decisão/Repetição
INSTRUÇÕES IMPORTANTES – LEIA COM ATENÇÃO:
 Sugestão: Inicialmente desenvolver a ideia dos programas em
pseudocódigo ou linguagem de programação Pascal (escrever a
mão), posteriormente implementar em um dos Ambientes de
Programação C, utilizados na disciplina, preferencialmente
Dev C++.
 Atenção: para os códigos fontes gerados, seguir a mesma nomenclatura sugerida para cada um dos arquivos, entre parênteses.
 Dois dos exercícios (problemas) abaixo serão escolhidos aleatoriamente pelo professor para apresentação, no dia
29/Setembro/2015 (terça-feira) no horário das aulas teóricas e dia da avaliação bimestral (teórica), o professor informará quais os exercícios que foram selecionados para apresentação;
 Os exercícios escolhidos (item anterior) correspondem aos
20% (vinte por cento) da nota de avaliação relativa aos
trabalhos práticos do bimestre (Valor: 2,0 pontos).
 Os algoritmos (pseudocódigos) e códigos em linguagem de
programação dos exercícios anteriormente citados deverão
ser entregues conforme descrito a seguir:
o Turmas NA e NB – no dia 05/Outubro/2015 – dia e horário de aula prática, deverão ser entregues impressos
ou escritos a mão os arquivos fontes correspondentes,
pessoalmente e também apresentados ao Prof. Jeferson
Antonio Quimelli, a execução dos respectivos programas. Não esquecer de identificar os documentos, com o
seu RA e nome.
o Turmas ND e NP – no dia 06/Outubro/2015 – dia e horário de aula teórica, deverão ser entregues impressos
ou escritos a mão, pessoalmente ao Prof. Ivo Mario Mathias e também o envio por e-mail dos arquivos fontes
correspondentes para [email protected]. Não esquecer
de identificar os documentos, com o seu RA e nome.
_______________________________________________________________________________
Professores: Ivo Mário Mathias/Jeferson Antonio Quimelli - agosto/2015
1/3
Algoritmos e Programação
_
Departamento de Informática
Exercícios/Problemas
1. (Prog_exe_11) - Construa um programa que de acordo com o horário digitado (hh:mm) o programa exiba na tela a saudação "Bom dia", se for de
manhã, "Boa tarde", se for a tarde e "Boa noite", se for a noite ou de
madrugada. Considere que a passagem da manhã para a tarde ocorra às
12h00min horas e a passagem da tarde para a noite ocorre às 18h00min
horas.
2. (Prog_exe_12) - Implemente em linguagem de programação C as expressões
a seguir com suas respectivas variáveis. Para a saída do programa,
quando o resultado de uma expressão for um valor lógico, seja exibida
na tela do computador uma mensagem, "Verdadeiro" ou "Falso", conforme
o resultado obtido pela avaliação da respectiva expressão. Para as
demais expressões, os resultados numéricos também devem ser exibidos.
Observação: para solucionar integralmente esse exercício, pesquise
como funcionam as funções de manipulação de strings em linguagem C:
strcpy(), strcat() e strcmp().
VAR
Inteiro
Real
Lógico
Literal
:
:
:
:
1)
2)
3)
4)
5)
6)
7)
8)
9)
10)
11)
12)
13)
14)
15)
16)
A=1, B=2, C=3;
X=2.0, Y=10.0, Z=-1.0;
L1=.V., L2=.F.;
NOME[20] = "FULANO", SOBRENOME[20] = "DE TAL";
A + C / B
A + B / C
C / B / A
A ** B ** A
Z * X ** B
–X ** B
–(X ** B)
(–X) ** B
NOME + SOBRENOME
NOME = SOBRENOME
L1 .OU. L2
(L1 .E. (.NÃO. L2))
(L2 .E. (.NÃO. L1))
(L1.E.(.NÃO.L2)).OU.(L2.E. (.NÃO. L1))
X > Y .E. C <= B
(C – 3 * A) < (X + 2 * Z)
_______________________________________________________________________________
Professores: Ivo Mário Mathias/Jeferson Antonio Quimelli - agosto/2015
2/3
Algoritmos e Programação
_
Departamento de Informática
3. (Prog_exe_13) - Fazer um programa que calcule e imprima a soma dos
números pares desde 100 até 200, inclusive. Utilize estrutura while.
4. (Prog_exe_14) – Repetir o exercício anterior com a estrutura do while.
5. (Prog_exe_15) – Repetir o exercício anterior com a estrutura for.
6. (Prog_exe_16) - Utilizando alguma das estruturas de repetição,
desenvolva um programa que permita a digitação de uma frase qualquer,
a qual deve ser finalizada teclando-se <Enter>. Durante a digitação,
simultaneamente, o programa deve exibir ler e ecoar apenas letras,
vogais e consoantes, MAIÚSCULAS. Para as demais teclas o programa deve
emitir uma mensagem como <caracter inválido>.
7. (Prog_exe_17) – Para o caso de um suposto estacionamento de carros, o
controle de pagamento ocorre do seguinte modo: as primeiras duas horas
custam R$ 3,00; após as primeiras duas horas o custo do estacionamento
aumenta R$ 0,02 por cada minuto adicional até atingir o valor máximo
de R$ 14,40, que corresponde ao valor máximo a ser pago por cada
período de 24 horas. Sendo assim, quando o valor do estacionamento
atinge R$ 14,40, a hora passa a ter o valor de R$ 0,60 e, o minuto R$
0,01. Diante disso, sendo informados o dia, a hora e os minutos de
ingresso e o dia, a hora e os minutos de saída, o programa deve
fornecer o total a ser pago por aquele período de estacionamento.
Observação: Para solucionar o próximo exercício, (Prog_exe_18), pesquise como funcionam as funções randomize()/random() dos IDEs da linguagem de programação C, de modo que, os supostos valores a serem sorteados no problema, sejam escolhidos aleatoriamente pelas funções em
referência.
8. (Prog_exe_18) – Desenvolva um programa que simule um jogo de bingo,
semelhante ao que ocorre em festas de igreja e quermesses. Simular a
existência de pelo menos duas cartelas com um mínimo de 5 números cada
uma, variáveis simples, cujos valores poderão ser inseridos via
teclado ou gerados aleatoriamente. Neste sentido, fazer um sistema de
entrada ou geração automática dos dados (números) de modo que números
repetidos não sejam aceitos pelo sistema (consistência). Para o
sorteio dos números, usar funções de geração de números randômicos, e
num processo continuo verificar qual cartela terá todos os seus
números sorteados. Como saída, o programa deve exibir qual a cartela
ganhadora, os respectivos números e a quantidade total de valores
gerados randomicamente para completar o processo.
9. (Prog_exe_19) - Utilizando alguma das estruturas de repetição,
desenvolva um programa em linguagem de programação C que leia
sequencialmente da tabela ASC o alfabeto (de 'A' a 'Z') e durante a
leitura, selecione e exiba as letras que formam a palavra "DEINFO",
nesta ordem, de modo que ao final da execução do programa deverá estar
escrita na tela do computador a palavra indicada.
_______________________________________________________________________________
Professores: Ivo Mário Mathias/Jeferson Antonio Quimelli - agosto/2015
3/3
Download

Estrutura de Programação