Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas

Exercício de Boliche: Calculando Pontuação de Duplas, Notas de aula de Direito

Documento contendo instruções para desenvolver um programa em c que calcula e imprime as pontuações parciais e finais de duplas jogando boliche, com até 4 duplas e 8 jogadores. Os dados de pinos derrubados por bola/partida devem ser lidos de um arquivo.

O que você vai aprender

  • Como ler o número de duplas e seus respectivos nomes do teclado?
  • Como calcular e imprimir as pontuações parciais e finais de duplas?
  • Como ler o número de pinos derrubados por bola/partida de cada dupla de um arquivo?

Tipologia: Notas de aula

2022

Compartilhado em 07/11/2022

Copacabana
Copacabana 🇧🇷

4.4

(49)

221 documentos

1 / 4

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
Departamento de Ciˆencia da Computa¸ao IME-USP
MAC 115 Introdu¸ao `a Computa¸ao
IF - Turma 21 / 2o. Semestre 2005
Exerc´ıcio–Programa: Segundo
Data de entrega: at´e 16 de novembro de 2005
Jogando boliche - Duplas
Uma vez que vocˆes a fizeram um bom programa para computar a pontua¸ao de um jogo
de boliche, o dono de um estabelecimento de jogos de boliche nos convidou para controlarmos a
pontua¸ao de jogos de boliche quando temos at´e 4 duplas jogando (podemos ter de 0 a 4 duplas
8 jogadores). Neste estabelecimento, grupos de pessoas chegam para jogar juntas e querem criar
uma competi¸ao entre duplas.
Dessa forma, os usu´arios fornecem inicialmente o umero de duplas que ir˜ao jogar e seus
respectivos nomes. Na competi¸ao, cada dupla perfaz um jogo (as 10 partidas) de forma alternada
com as outras duplas. Al´em disso, os jogadores das duplas se alternam nas partidas consecutivas.
Se temos, por exemplo, 3 duplas jogando (6 jogadores),
Dupla 1 (D1): Maria, Jo˜ao
Dupla 2 (D2): Inˆes, Pedro
Dupla 3 (D3): Paulo, Carla
teremos as jogadas na seguinte ordem (note que cada jogador joga apenas 5 partidas):
Partida P1 P1 P1 P2 P2 P2 ··· P10 P10 P10
Dupla D1 D2 D3 D1 D2 D3 ··· D1 D2 D3
Jogador Maria Inˆes Paulo Jo˜ao Pedro Carla ··· Jo˜ao Pedro Carla
No in´ıcio de cada partida a ser jogada, aparece no visor a partida a ser jogada e o nome do
jogador da vez. No final de cada partida, aparece no visor o total de pontos da dupla at´e a dada
partida e o umero de pinos derrubados pelo dado jogador e a pontua¸ao correspondente at´e o
momento. A pontua¸ao da dupla segue as mesmas regras de um jogo de boliche. Isto significa que
uma dupla pode completar, no aximo, 300 pontos em um jogo (vide “Regras do Boliche”).
No final do jogo, dever´a ser mostrada no visor a pontua¸ao das duplas para cada partida jogada,
juntamente com os umeros de pinos derrubados e a pontua¸ao final. Primeiro ´e mostrada a dupla
vencedora, a dupla que fez a segunda melhor pontua¸ao, etc. Exemplo:
P. 1 P. 2 P. 3 P. 4 P. 5 P. 6 P. 7 P. 8 P. 9 P. 10 Pontos
1o. Lugar: Inˆes e Pedro
X X X X X X X X X X X X 300
30 30 30 30 30 30 30 30 30 30
2o. Lugar: Maria e Jo˜ao
3 3 X X 5 5 X 2 7 8 0 2 1 6 3 X X X 149
6 25 20 20 19 9 8 3 9 30
3o. Lugar: Paulo e Carla
2 4 5 5 2 1 0 0 X 0 10 1 0 2 4 6 3 2 8 5 83
6 12 3 0 20 11 1 6 9 15
Regras do Boliche
O objetivo do boliche ´e derrubar, em uma erie de 10 partidas, a quantidade axima de pinos
poss´ıvel. Em cada uma das 10 partidas de um jogo, cada jogador tem 2 possibilidades para
derrubar os pinos. Em cada jogo, o umero de pontos marcados ´e dado pelo umero de pinos
1
pf3
pf4

Pré-visualização parcial do texto

Baixe Exercício de Boliche: Calculando Pontuação de Duplas e outras Notas de aula em PDF para Direito, somente na Docsity!

Departamento de Ciˆencia da Computa¸c˜ao – IME-USP MAC 115 – Introdu¸c˜ao `a Computa¸c˜ao IF - Turma 21 / 2o. Semestre 2005

Exerc´ıcio–Programa: Segundo Data de entrega: at´e 16 de novembro de 2005

Jogando boliche - Duplas

Uma vez que vocˆes j´a fizeram um bom programa para computar a pontua¸c˜ao de um jogo de boliche, o dono de um estabelecimento de jogos de boliche nos convidou para controlarmos a pontua¸c˜ao de jogos de boliche quando temos at´e 4 duplas jogando (podemos ter de 0 a 4 duplas – 8 jogadores). Neste estabelecimento, grupos de pessoas chegam para jogar juntas e querem criar uma competi¸c˜ao entre duplas. Dessa forma, os usu´arios fornecem inicialmente o n´umero de duplas que ir˜ao jogar e seus respectivos nomes. Na competi¸c˜ao, cada dupla perfaz um jogo (as 10 partidas) de forma alternada com as outras duplas. Al´em disso, os jogadores das duplas se alternam nas partidas consecutivas. Se temos, por exemplo, 3 duplas jogando (6 jogadores),

  • Dupla 1 (D1): Maria, Jo˜ao
  • Dupla 2 (D2): Inˆes, Pedro
  • Dupla 3 (D3): Paulo, Carla

teremos as jogadas na seguinte ordem (note que cada jogador joga apenas 5 partidas):

Partida P1 P1 P1 P2 P2 P2 · · · P10 P10 P Dupla D1 D2 D3 D1 D2 D3 · · · D1 D2 D Jogador Maria Inˆes Paulo Jo˜ao Pedro Carla · · · Jo˜ao Pedro Carla No in´ıcio de cada partida a ser jogada, aparece no visor a partida a ser jogada e o nome do jogador da vez. No final de cada partida, aparece no visor o total de pontos da dupla at´e a dada partida e o n´umero de pinos derrubados pelo dado jogador e a pontua¸c˜ao correspondente at´e o momento. A pontua¸c˜ao da dupla segue as mesmas regras de um jogo de boliche. Isto significa que uma dupla pode completar, no m´aximo, 300 pontos em um jogo (vide “Regras do Boliche”). No final do jogo, dever´a ser mostrada no visor a pontua¸c˜ao das duplas para cada partida jogada, juntamente com os n´umeros de pinos derrubados e a pontua¸c˜ao final. Primeiro ´e mostrada a dupla vencedora, a dupla que fez a segunda melhor pontua¸c˜ao, etc. Exemplo:

P. 1 P. 2 P. 3 P. 4 P. 5 P. 6 P. 7 P. 8 P. 9 P. 10 Pontos 1o. Lugar: Inˆes e Pedro X – X – X – X – X – X – X – X – X – X X X 300 30 30 30 30 30 30 30 30 30 30 2o. Lugar: Maria e Jo˜ao 3 3 X – X – 5 5 X – 2 7 8 0 2 1 6 3 X X X 149 6 25 20 20 19 9 8 3 9 30 3o. Lugar: Paulo e Carla 2 4 5 5 2 1 0 0 X – 0 10 1 0 2 4 6 3 2 8 5 83 6 12 3 0 20 11 1 6 9 15

Regras do Boliche O objetivo do boliche ´e derrubar, em uma s´erie de 10 partidas, a quantidade m´axima de pinos poss´ıvel. Em cada uma das 10 partidas de um jogo, cada jogador tem 2 possibilidades para derrubar os pinos. Em cada jogo, o n´umero de pontos marcados ´e dado pelo n´umero de pinos

derrubados ao longo das 10 partidas. Al´em disso, quando o jogador consegue derrubar todos os pinos com 2 bolas (chamado spare) o valor da bola seguinte ´e somado ao n´umero de pontos nesse jogo. Se o jogador consegue derrubar todos os pinos com a primeira bola (chama-se strike), o valor das duas bolas seguintes ´e computado ao valor da bola atual (que ´e 10). Note que, caso ocorra uma s´erie de dois strikes ou um strike e um spare, os pontos da bola seguinte s˜ao computados trˆes vezes. Veja o exemplo a seguir, onde mostramos o n´umero de pontos marcados nas 4 primeiras partidas de um dado jogo:

P. 1 P. 2 P. 3 P. 4 strike strike 5 5 2 7 10 + 10 + 5 10 + 5 + 5 10 + 2 9

Um jogo ´e formado por dez partidas, e a d´ecima partida ´e especial. Nela, caso o jogador consiga um strike na primeira bola, ter´a direito a duas novas bolas. Caso ele consiga um spare, ter´a direito a uma bola extra. Programa Fa¸ca um programa em C que dado o n´umero de duplas, os nomes do jogadores por dupla, e o n´umero de pinos derrubados por bola/partida de cada dupla alternadamente calcula e imprime os resultados parciais e totais da competi¸c˜ao como descrito acima. Para facilitar o teste dos programas, os dados sobre o n´umero de pinos derrubados por bola/partida de cada dupla ser˜ao lidos de um arquivo. Assim, V. poder´a testar o seu programa v´arias vezes para um mesmo conjunto de dados sem ter que digitar esses n´umeros a cada vez. Aqui seguem as fun¸c˜oes necess´arias para ler dados a partir de um arquivo, e um arquivo de dados exemplo (o exemplo mostrado na p´agina 1).

  1. O n´umero de duplas de cada jogo e os seus respectivos nomes devem ser lidos do teclado.
  2. O n´umero de pinos derrubados por bola/partida de cada dupla ser˜ao lidos de um arquivo. Formato do arquivo de entrada:

(a) Cada linha do arquivo deve conter os pontos de todas as duplas para uma dada par- tida, saltando de linha para a pr´oxima partida e deixando sempre um espa¸co entre os n´umeros. Assim, a primeira linha conter´a os pontos de todas as duplas para a primeira partida, a segunda linha conter´a os pontos de todas as duplas para a segunda partida, ... at´e a d´ecima partida. N˜ao deixar linhas em branco. (b) Se houver strike na partida, a representa¸c˜ao para uma dupla dever´a ser: 10 0 (c) Se n˜ao forem derrubados pinos em uma jogada, a representa¸c˜ao para uma dupla dever´a ser: 0 0 (d) Para o jogo mostrado na p´agina 1, com as trˆes duplas na ordem de jogada mostrada na tabela, o arquivo deve conter (suponha que V. grava o arquivo com esses dados com o nome dados1.txt):

3 3 10 0 2 4 10 0 10 0 5 5 10 0 10 0 2 1 5 5 10 0 0 0 10 0 10 0 10 0 2 7 10 0 0 10 8 0 10 0 1 0 2 1 10 0 2 4 6 3 10 0 6 3 10 10 10 10 10 10 2 8 5

Note que da linha 1 `a linha 9, as quais representam as partidas de 1 a 9, existem 6 jogadas: as duas primeiras da dupla D1, as duas seguintes da dupla D2, e as duas

bola = le_numero_arquivo(arquivo);

// c´odigo do seu programa ...

}

// c´odigo do seu programa ...

// important´ıssimo: fechar o arquivo antes de terminar o programa fecha_arquivo(arquivo);

system("PAUSE"); exit(0); }

E importante notar que os dados de cada bola/partida ser˜^ ´ ao fornecidos com o desenrolar do jogo, e todo o c´alculo da pontua¸c˜ao dever´a ser feito `a medida que tais dados s˜ao fornecidos (n˜ao tente ler todos os dados p/ depois come¸car a fazer o c´alculo, isto n˜ao ´e permitido). Neste programa vocˆe dever´a usar, pelo menos, uma fun¸c˜ao que realiza uma partida para todas as duplas, uma fun¸c˜ao que imprime o resultado parcial ap´os cada partida, e uma fun¸c˜ao que imprime o resultado final de cada dupla.

Informa¸c˜oes gerais

  • Consulte a p´agina http://www.ime.usp.br/~macmulti para no¸c˜oes de programa¸c˜ao, hist´orico da computa¸c˜ao e download do Dev-C++ (compilador C), juntamente com as instru¸c˜oes de instala¸c˜ao. Este compilador tamb´em est´a instalado na sala Pr´o-Aluno.
  • Entregue os exerc´ıcios pelo sistema Panda: http://panda.arca.ime.usp.br/panda/. V. deve entregar os arquivos do c´odigo fonte (arquivo.c) para cada um dos problemas. Note que o sistema s´o permitir´a entregar os exerc´ıcios dentro do prazo estipulado. Exerc´ıcios entregues fora do prazo ou sem o c´odigo fonte receber˜ao nota ZERO.
  • A listagem do seu programa deve come¸car com um cabe¸calho semelhante ao seguinte:

(************************************************************************) (*** Nome do aluno ) ( Data ) ( Exerc´ıcio-programa 2 de Introdu¸c~ao `a Computa¸c~ao - IF T21 - 2004 ) ( ) ( Tipo e vers~ao do compilador C: ***) (************************************************************************)

  • O exerc´ıcio-programa ´e rigorosamente individual. Exerc´ıcios “equivalentes” receber˜ao nota ZERO.
  • Exerc´ıcios-programa com erro de sintaxe receber˜ao nota ZERO.
  • Guarde com vocˆe, at´e o final do curso, uma c´opia do programa que vocˆe entregou (i.e., fa¸ca um backup do seu programa). Esse material pode vir a ser solicitado caso ocorra algum problema.