Determine qual das duas palavras do Scrabble vale mais.
$ ./scrabble
Player 1: COMPUTER
Player 2: science
Player 1 wins!
Abra o VS Code
1 - Entre no Terminal do VsCode: Ctrl+'
2 - Entrar nessa pasta: cd pset2
OBS: Caso a pasta possua espaço, por exemplo: Semana 2
Será necessário colocar aspas para entrar na pasta: cd 'Semana 2'
3 - No terminal digite o comando: wget https://cdn.cs50.net/2022/fall/labs/2/scrabble.zip
seguido de ENTER para baixar o zip scrabble.zip que contem a pasta scrabble com o arquivo em C.
OBS: Você também pode copiar o código nesse link: scrabble.c
4 - Execute o unzip: unzip scrabble.zip para extrair a pasta scrabble dentro da pasta pset2.
5 - Você não precisa mais do arquivo ZIP, então você pode executar o comando para excluir: rm scrabble.zip
6 - Agora entre na pasta: cd scrabble
7 - Se tudo foi bem sucedido, você deve executar o comando ls que listará os arquivos dentro dessa pasta, nesse caso deverá ter o arquivo scrabble.c
A execução code scrabble.c deve abrir o arquivo onde você digitará seu código para este conjunto de problemas. Se não, refaça seus passos e veja se consegue determinar onde errou!
8 - No arquivo scrabble.c faça o exercício proposto;
9 - Teste seu código: check50 cs50/labs/2023/x/scrabble;
10 - Avalie o estilo do seu código: style50 scrabble.c;
11 - Envie seu código: submit50 cs50/labs/2023/x/scrabble depois digite: yes
No jogo de Scrabble , os jogadores criam palavras para marcar pontos, e o número de pontos é a soma dos valores de pontos de cada letra da palavra.
A |
B |
C |
D |
E |
F |
G |
H |
I |
J |
K |
L |
M |
N |
O |
P |
Q |
R |
S |
T |
U |
V |
W |
X |
Y |
Z |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | 3 | 3 | 2 | 1 | 4 | 2 | 4 | 1 | 8 | 5 | 1 | 3 | 1 | 1 | 3 | 10 | 1 | 1 | 1 | 1 | 4 | 4 | 8 | 4 | 10 |
Por exemplo, se quiséssemos pontuar a palavra Code, observaríamos que, em geral, nas regras do Scrabble, o C vale 3 pontos, O vale 1 ponto, D vale 2 pontos e E vale 1 ponto. Somando estes, obtemos que Code vale 3 + 1 + 2 + 1 = 7 pontos.
Conclua a implementação de scrabble.c, de modo que ele determine o vencedor de um jogo curto do tipo scrabble, em que dois jogadores inserem sua palavra, e o jogador com maior pontuação vence.
POINTS.
A ou a vale 1 ponto (representado por POINTS[0]), B ou b vale 3 pontos (representado por POINTS[1]), etc.compute_score() que recebe uma string como entrada e retorna um arquivo int. Sempre que quisermos atribuir valores de pontos a uma palavra específica, podemos chamar essa função. Observe que esse protótipo é necessário para C saber que compute_score() existe posteriormente no programa.main(), o programa solicita aos dois jogadores suas palavras usando a função get_string(). Esses valores são armazenados dentro de variáveis chamadas word1 e word2.compute_score(), seu programa deve calcular, usando o array POINTS, e retornar a pontuação para o argumento string. Caracteres que não são letras devem receber zero pontos, e letras maiúsculas e minúsculas devem receber os mesmos valores de pontos.
! vale 0 pontos enquanto A e a ambos valem 1 ponto.main(), seu programa deve imprimir, dependendo da pontuação dos jogadores, Player 1 wins!, Player 2 wins! ou Tie!.Você pode encontrar as funções isupper() e islower() úteis para você. Essas funções recebem um caractere como argumento e retornam um booleano (um valor diferente de zero) se o caractere for maiúsculo (para isupper) ou minúsculo (para islower).
Para encontrar o valor no n índice de um array chamado arr, podemos escrever arr[n]. Também podemos aplicar isso a strings, pois strings são arrays de caracteres.
Lembre-se de que os computadores representam caracteres usando ASCII, um padrão que representa cada caractere como um número.
Seu programa deve se comportar de acordo com os exemplos abaixo.
$ ./scrabble
Player 1: Question?
Player 2: Question!
Tie!
$ ./scrabble
Player 1: Oh,
Player 2: hai!
Player 2 wins!
$ ./scrabble
Player 1: COMPUTER
Player 2: science
Player 1 wins!
$ ./scrabble
Player 1: Scrabble
Player 2: wiNNeR
Player 1 wins!
Este vídeo irá te ajudar a entender o problema ;)
Atenção: para adicionar legendas ao vídeo clique no botão CC localizado no Player e selecione a opção “Português (Brasil)”.
Uma excelente aula para você!