Prévia do material em texto
Trabalho - Bingo
Part1
programa
{
inclua biblioteca Util
inteiro cartela[5][5]
// função usada para verificar se um valor existe dentro de um vetor
funcao logico valorEmVetor(inteiro valor, inteiro vetor[]) {
para (inteiro i = 0; i < Util.numero_elementos(vetor); i++) {
se (vetor[i] == valor){
retorne verdadeiro
}
}
retorne falso
}
funcao inicio()
{
escreva("Iniciou o bingo \n")
// carrega o sorteio, impedindo que os numero se repitao
escreva("Carregando números da cartela... \n")
// Esse vetor serve para evitar repetições na cartela
inteiro sequencia[25], index = 0
para (inteiro j = 0; j < 5;j++) {
para (inteiro i = 0; i < 5;i++;) {
inteiro escolhido
// impede que valoes se repitam
faca {
escolhido = Util.sorteia(15 * i + 1, 15 * (i+1))
} enquanto ( valorEmVetor(escolhido, sequencia) )
sequencia[index] = escolhido
cartela[j][i] = escolhido
index++
}
}
// numeros zeros serao tratados como *
cartela[2][2] = 0
// exibi a cartela
escreva("Os números são: \n\n")
escreva("----------------\n")
para (inteiro j = 0; j < 5;j++) {
para (inteiro i = 0; i < 5;i++) {
se (cartela[j][i] != 0) {
escreva(cartela[j][i])
} senao {
escreva("*")
}
// deixa bonitinho
se (i < 4)
escreva(",")
}
escreva("\n")
}
escreva("----------------\n")
}
}
Part2
programa
{
inclua biblioteca Util → u
inteiro cartela[5][5], sorteados[75]
funcao logico verificarBingo() {
inteiro bingos = 0
// Verifca a Linha
para (inteiro j = 0; j < 5;j++) {
inteiro encontrados = 0
inteiro bingo[5]
para (inteiro i = 0; i < 5; i++) {
para (inteiro l = 0; l < 75; l++) {
se (sorteados[l] == 0) {
pare
}
se ( sorteados[l] == cartela[j][i]) {
bingo[encontrados] = sorteados[l]
encontrados++
}
se (encontrados == 5) {
escreva("\n\nBingo de Linha!\n")
escreva(bingo[0]+"-"+bingo[1]+"-"+bingo[2]+"-"+bingo[3]+"-"+bingo[4])
bingos++
pare
}
}
}
}
// Coluna
para (inteiro j = 0; j < 5;j++) {
inteiro encontrados = 0
inteiro bingo[5]
para (inteiro i = 0; i < 5; i++) {
para (inteiro l = 0; l < 75; l++) {
se (sorteados[l] == 0) {
pare
}
se ( sorteados[l] == cartela[i][j]) {
bingo[encontrados] = sorteados[l]
encontrados++
}
se (encontrados == 5) {
escreva("\n\nBingo de Coluna!\n")
escreva(bingo[0]+"-"+bingo[1]+"-"+bingo[2]+"-"+bingo[3]+"-"+bingo[4])
bingos++
pare
}
}
}
}
se (bingos > 0) {
retorne verdadeiro
} senao {
retorne falso
}
}
// função usada para verificar se um valor existe dentro de um vetor
funcao logico valorEmVetor(inteiro valor, inteiro vetor[]) {
para (inteiro i = 0; i < Util.numero_elementos(vetor); i++) {
se (vetor[i] == valor){
retorne verdadeiro
}
}
retorne falso
}
funcao inicio()
{
escreva("Iniciou o bingo \n")
// carrega o sorteio, impedindo que os numero se repitao
escreva("Carregando números da cartela... \n")
// Esse vetor serve para evitar repetições na cartela
inteiro sequencia[25], index = 0
para (inteiro j = 0; j < 5;j++) {
para (inteiro i = 0; i < 5;i++;) {
inteiro escolhido
// impede que valoes se repitam
faca {
escolhido = Util.sorteia(15 * i + 1, 15 * (i+1))
} enquanto ( valorEmVetor(escolhido, sequencia) )
sequencia[index] = escolhido
cartela[j][i] = escolhido
index++
}
}
// numeros zeros serao tratados como *
cartela[2][2] = 0
// exibi a cartela
escreva("Os números são: \n\n")
escreva("----------------\n")
para (inteiro j = 0; j < 5;j++) {
para (inteiro i = 0; i < 5;i++) {
se (cartela[j][i] != 0) {
escreva(cartela[j][i])
} senao {
escreva("*")
}
// deixa bonitinho
se (i < 4)
escreva(",")
}
escreva("\n")
}
escreva("----------------\n")
escreva("Números Sorteados: \n")
para (inteiro l = 0; l < 75; l++) {
inteiro escolhido
// impede que valoes se repitam
faca {
escolhido = Util.sorteia(1, 75)
} enquanto ( valorEmVetor(escolhido, sorteados) )
sorteados[l] = escolhido
escreva(sorteados[l]+",")
// Verifica se deu Bingo!
se (verificarBingo()) {
pare
}
}
escreva("\n----------------\n")
}
}