Algoritmo: Boliche

Algoritmo de Maratona de Programação simples:

#include <stdio.h>
#include <string.h>

int main(void){
	int n,i,j,k,pontos,jogo=1,nJogadas;
	char jogador[15];
	int jogada[20];
	int segunda;
	while(scanf("%d",&n) && n){
		printf("JOGO #%d\n",jogo++);
		for(i=0;i<n;i++){
			pontos=nJogadas=segunda=0;
			memset(jogada,0,20*sizeof(int));
			scanf("%s",jogador);
			printf("%s ",jogador);
			for(k=0;nJogadas<10;k++){
				scanf("%d",&jogada[k]);
				if(jogada[k]==10 && !segunda){
					nJogadas++;
					segunda=1;
				}else if(segunda) nJogadas++;
				segunda=!segunda;
			}
			if(jogada[k-1]==10) scanf("%d %d",&jogada[k],&jogada[k+1]);
			else if(jogada[k-2]+jogada[k-1] >=10) scanf ("%d",&jogada[k]);
			pontos=0;
			segunda=0;
			for(j=0;j<k;j++){
				pontos+=jogada[j];
				if(jogada[j]==10 && !segunda){
					pontos+=jogada[j+1]+jogada[j+2];
					segunda=1;
				}else if(segunda)
					if(jogada[j]+jogada[j-1]>=10) pontos +=jogada[j+1];
				segunda=!segunda;
			}
			printf("fez %d pontos\n",pontos);
		}
		printf("\n");
	}
	return 0;
}
Compartilhe:
  • Print this article!
  • Digg
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • E-mail this story to a friend!
  • FriendFeed
  • LinkedIn
  • Live
  • MySpace
  • Turn this article into a PDF!
  • Rec6
  • Reddit
  • RSS
  • Slashdot
  • StumbleUpon
  • Technorati
  • TwitThis
  • Yahoo! Bookmarks
  • Identi.ca
  • Netvibes
  • Tumblr
  • Twitthis

Posts relacionados:

  1. Testes regressivos

Tagged :

Deixe uma resposta




Spam Protection by WP-SpamFree