Informática, perguntado por marcusv1n1, 1 ano atrás

Escreva uma função em PETEQS que receba como parâmetro um Array contendo os votos atribuídos pelos
eleitores em uma eleição e determine se há um vencedor, isto é, um candidato com mais da metade dos
votos. Se não houver um vencedor, sua função deve retornar uma string vazia ('').
Em sua solução, considere a existência da função tamanho() cuja documentação é mostrada a seguir:
função tamanho(entradas: vetor[])
Retorna o número de elementos no vetor passado como parâmetro. Retorna zero se o vetor está
vazio.
Exemplos:
V ← ['Fundação', 'Cecierj', 'Consórcio', 'CEDERJ']
imprima tamanho(V) # imprimiria 4
Exemplo. Uma vez que você tiver escrito o código da função vencedorEleicao(), o algoritmo a seguir
deveria imprimir a string 'Collor'. Entenda que esse é apenas um exemplo e que sua função deveria
funcionar para qualquer array de votos recebido como parâmetro.
função vencedorEleicao(entrada: votos)
início
// seu código aqui
fim
início
votos ← ['Collor', 'Renan', 'Sarney', 'Collor',
'Collor', 'Collor', 'Sarney', 'Renan',
'Collor']
imprima vencedorEleicao(votos)
fim


marcusv1n1: mais ou menos assim...
marcusv1n1: função vencedorEleicao(entrada: votos)
início
vot1[‘Collor’, ‘Renan’, ‘Sarney’, Collor’, ‘Collor’, ‘Collor’, ‘Sarney’, ‘Renan’, ‘Collor’]
qtdeleitores ← 9
para i ← 1 até 9 faça

fim
início
votos ←['Collor', 'Renan', 'Sarney', 'Collor',
'Collor', 'Collor', 'Sarney', 'Renan',
'Collor']
imprima vencedorEleicao(votos)
fim
marcusv1n1: só não sei desenrolar o resto...
GGJJMM9944: eu fiz assim. ñ sei se está totalmente certo

Soluções para a tarefa

Respondido por GGJJMM9944
1
Var
vencedorEleicao, Resultado: vetor [1 .. 11] de String
Votos: Real
Nome: String 
i : Inteiro
Inicio
Para i← 1 até 11 faça
vencedorEleicao[i] := ‘ ‘
Resultado[i] := ‘ ‘
FimParaPara
i← 1 até 11 faça
Ler (Nome)
Ler ( Votos)
Se Votos >  50/100 então
imprima vencedorEleicao(Votos)
Senão Resultado[i] := ' '
FimPara
Votos[i] = ['Collor', 'Renan', 'Sarney', 'Collor', 'Collor', 'Collor', 'Sarney', 'Renan', 'Collor', 'Collor', 'Renan']
SemVencedor[i]= ' '
fimPara
Para i← 1 até 80 faça
Ler Votos
Se Votos>= 60/100 então
imprima vencedorEleicao(votos)
Senão Reprovados[i] := Nome
FimPara
função vencedorEleicao(entrada: votos)

início
Votos['Collor', 'Renan', 'Sarney', 'Collor', 'Collor', 'Collor', 'Sarney', 'Renan', 'Collor', 'Collor', 'Renan']
QTDEleitores ← 11
para i ← 1 até 11 faça
fim
início
votos ← ['Collor', 'Renan', 'Sarney', 'Collor','Collor', 'Collor', 'Sarney', 'Renan','Collor']
imprima vencedorEleicao(votos)
fim
Respondido por J01n3r
0
Assim fica fácil fazer a AD2 de Projeto de Desenvolvimento de Algorítimo - PDA do CEDERJ/UFF, quero ver quando chegar em fundamentos de programação kkkkk

Perguntas interessantes