Universidade Federal de Campina Grande
Centro de Engenharia Elétrica e Informática – CEEI
Departamento de Sistemas e Computação – DSC
Disciplina: Introdução à Programação – TURMA 03 – Tarde
Prof.
Roberto M. de Faria
3ª Lista de Exercícios – 29/10/2015 (entregar
24/11/2015)
Exercício 1: Faça
um programa em C que leia uma cadeia de até 300
caracteres e crie um array com a quantidade encontrada de cada letra
(maúsculas e minúsculas). O programa,
por meio de opções de menu, responderá as seguintes
perguntas em relação à cadeia:
1. Quantas
letras?
2. Quantas
vogais?
3. Quantas
consoantes?
4. Quantas
letras do tipo? (em seguida pergunta: Qual é a letra?)
5. Fim
do programa
Dicas:
Use uma função para contar cada letra e preencher o array. Use uma função para
executar cada opção do menu. Use como índice do array
totalizador de quantidade de letras: letra - ‘A’.
Exercício 2: Faça
um programa em C para definir e verificar as jogadas
de um “Jogo da Velha”. O programa inicialmente mostrará as instruções para as
informações das jogadas e o tabuleiro tabuleiro
atualizado(no início estará vazio). No início, o programa indicará
randomicamente o primeiro jogador a jogar(jogador_O ou
jogador_X). A cada rodada o programa mostrará o tabuleiro atualizado, e uma
mensagem dizendo o jogador que ganhou ou se houve empate ou qual o próximo
jogador a jogar. As jogadas serão informadas por um sistema de numeração das
posições do tabuleiro (numeração de 1 a 9(da esquerda para a direta e de cima
para baixo) ou por um sistema de numeração matricial de linhas e colunas(numeradas de 1 a 3 respectivamente).
Dicas:
Internamente, o tabuleiro será representado por uma matriz inteira 3x3,
inicialmente zerada. Para o jogador_O, será colocado 1
na posição correspondente de cada jogada sua e, para o jogador_X, será colocado
-1. Quando uma linha, coluna ou diagonal somar 3, o
jogador_O será o vencedor. Quando a soma encontrada for -3 o jogador_X
será o vencedor. Se o tabuleiro for preenchido totalmente e não for encontrada
a soma 3 ou -3, o jogo será empate. Para a númeração
posicional: linha = (posição - 1) / 3 e coluna = (posição - 1) % 3. Exemplos de
figuras:
Numeração
posicional: Numeração
matricial: Tabuleiro empatado:
| | 1 2
3 | |
1 | 2 | 3 | | X | X | O
---+---+--- 1 |
| ---+---+---
4 | 5 | 6 ---+---+--- O | O | X
---+---+--- 2 |
| ---+---+---
7 | 8 | 9 ---+---+--- X | O | X
| | 3 |
| | |
| |
Exercício 3: Faça
um programa em C para fazer a caminhonete da figura
abaixo, movimentar-se da esquerda para a direita da tela.
Dica-1:
Coloque a caminhonete numa matriz de caracteres da largura da tela, à esquerda,
e desloque-a uma posição de cada vez para a direita, apagando seu rastro na
esquerda, mostrando a matriz a cada deslocamento.
Figura da cominhonete(pode ser a sua figura):
____
________|[__\\____.
|o.._....|-...|._.o)
Ooo=--(_)---------(_)-
Dica-2: Utilizando
a biblioteca “windows” (só para o sistema Windows – não funciona com Linux)
você pode posicionar o cursor em um determinada posição da tela e imprimir a
partir dessa posiçã. Veja o programa cobra.cpp,
coletado na Internet e que foi reprogramado utilizando melhores técnicas de
modularização e documentação.
Exercício 4: Reescreva
o programa do exercício 1 utilizando apontadores onde for possível.
Exercício 5: Reescreva
o programa do exercício 2 utilizando apontadores onde for possível.
Exercício 6: Reescreva
o programa do exercício 3 utilizando apontadores onde for possível.
SUCESSO!