Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) 4 Algoritmos Em Portugol!


daniel_perez

Pergunta

Prezados amigos , preciso da colaboração de vocês para a resolução de 4 algoritmos em portugol , preciso muito resolver esses exercicios pois só faltam esses para a entrega de um trabalho para entregar na segunda 04/06!

Obrigado pela colaboração de todos !

1) Faça um algoritmo que mostre todos os números divisiveis por N, em um intervalo de 1 até X . Onde N e X são inteiros informados pelo usuario .

2) Dada a formula : H = 1 + 1/2! + 1/3! + 1/4! + .... + 1/N! . Construa um algoritmo que calcule o número H . dado o numero inteiro N.

3) Ler 5 conjuntos de 2 valores , o primeiro valor representando o numero de um aluno e o segundo representando a sua altura em centimetros . Encontrar o aluno mais alto e o mais baixo e escrever seus numeros , suas alturas e uma mensagem dizendo se é mais alto ou o mais baixo .

4) Faça um programa que leia o código do jogador ( 1 ou 2 ) que ganhou ponto em uma partida de pingue pongue , e responda quem ganha a partida . A partida chega ao final se um dos jogadores chega a 21 pontos e a diferença é maior de 21 pontos , consiga colocar uma vantagem de dois pontos sobre o adversario .

Link para o comentário
Compartilhar em outros sites

8 respostass a esta questão

Posts Recomendados

  • 0

Respondendo a (2):

obs: não sei Portugol, vai Pascal mesmo...

Var H, N, FatorialParcela: Real;
      cont, cont1: Integer;

Begin

    N := x; (* onde "x" é o valor de entrada, pode ser substituído por algum readln da vida... *)

    H := 0;

    For cont := 1 To N Do
    Begin

        FatorialParcela := 1;

        For cont1 := 1 To cont Do
        Begin

            FatorialParcela := FatorialParcela * cont1;

        End;

        H := H + 1 / FatorialParcela;

    End;

End;

Confere aí...

Link para o comentário
Compartilhar em outros sites

  • 0

Respondendo a 1

var
  n, x, cont : inteiro
inicio
  leia (n)
  leia (x)
  cont <- 1
  enquanto cont < x faca
    Se cont mod n = 0 então
      escreval (cont)
    fimse
    cont <- cont + 1
  fimenquanto
fimalgoritmo

não sei se essa é linguagem portugol mais funciona assim se eu entendi bem o enunciado

Editado por Micheus
Adicionado o delimitador de código [code] [/code]
Link para o comentário
Compartilhar em outros sites

  • 0

ola, tambem estou precisando dessa resposta, tentei traduzir pra portugues o algoritmo mas nem assim conseguir ententer podem me explicar melhor como funciona esse algoritmo

principal mente na parte onde n := x

obrigado

var
h, n, FatParc: real
cont, cont1 : inteiro
inicio
h := 0
para cont de 1 ate n faca
   FatParc := 1
   para cont1 de 1 ate cont faca
      FatParc := FatParc * contl
   fimpara
   h := h + 1 / FatParc
fimpara
fimalgoritmo
Respondendo a (2): obs: não sei Portugol, vai Pascal mesmo...
Var H, N, FatorialParcela: Real;
      cont, cont1: Integer;
Begin
    N := x; (* onde "x" é o valor de entrada, pode ser substituído por algum readln da vida... *)
    H := 0;
    For cont := 1 To N Do
    Begin
        FatorialParcela := 1;
        For cont1 := 1 To cont Do
        Begin
            FatorialParcela := FatorialParcela * cont1;

        End;
        H := H + 1 / FatorialParcela;
    End;
End;

Confere aí...

Editado por nego drama
Link para o comentário
Compartilhar em outros sites

  • 0

Acho que é isso!

Se tiver erro de lógica/sintaxe, me avisa que eu tento corrigir.

obs: tentei fazer o mais claro possivel...

2) Dada a formula : H = 1 + 1/2! + 1/3! + 1/4! + .... + 1/N! .
Construa um algoritmo que calcule o número H . dado o numero inteiro N.

//Declara as variaveis,
//NumeroEscolhido = (N)
//ResultadoFat = Resultado da fatoração do divisor
//Contador = pra pegar todos os numeros até o  1/N!
//ContadorFat = pra fazer a fatoração
inteiro: NumeroEscolhido,ResultadoFat,Contador,ContadorFat;
//Var para o resultado (H)
real: Resultado;
//Faz o primeiro looping para pegar todos os numeros até o 1/N!
//passo +1 é o incremento do contador ( sintaxe nojenta ) ela é feita no final do PARA
para Contador de 1 até NumeroEscolhido passo +1 faça
     //Abre o bloco de comando
     inicio
           //Coloca 1 o resultado da fatoração
           ResultadoFat <- 1;
           //Looping pra fazer a fatoração
           //passo -1 é o decremento (4! = 3*2*1)
           para ContadorFat de Contador até 1 passo -1 faça
                //Multiplica
                ResultadoFat <- ResultadoFat*ContadorFat;
           fimpara;
           //Soma ao resultado
           Resultado <- Resultado + (1/ResultadoFat);
     //Fim do bloco < aqui é incrementado um ao contador
     fim;
fimpara;

Link para o comentário
Compartilhar em outros sites

  • 0

p4t0X eu consegui entender alguma coisa mas não o bastante pra completar o meu algoritmo, pode me ajudar ai

var
h, n, FatParc: real
cont, cont1 : inteiro
inicio
h := 0
para cont de 1 ate n faca
   FatParc := 1
   para cont1 de 1 ate cont faca
      FatParc := FatParc * contl
   fimpara
   h := h + 1 / FatParc
fimpara
fimalgoritmo

abraço

Link para o comentário
Compartilhar em outros sites

  • 0

Nossa, andou tumultuado este tópico, heim?! <_<

Eu desmembrei os posts com dúvidas diferentes em novos tópicos e para os "donos" dos post não se perderem vou por os links aqui:

wilene (lene) -> Ajuda com dois algoritmos em portugol

rivelino -> Ajuda em dois algoritmos portugol

rivelino e antonio -> Ajuda na conversão do algoritmo para o protugol

lene -> Ajuda para resolver algoritmo em portugol

Por uma questão de ordem e até mesmo facilidade em obter ajuda, solicito aos colegas visitantes e membros que criem novos tópicos para adicionar suas dúvidas - não é pelo título sugerir sua dúvida, que os questionamentos distintos possam ser amontoados.

Contamos com a colaboração de todos.;)

_____________________

nego drama, com relação ao tal n:= x que você citou não enteder, baseado no comentário existente, foi apenas um modo que o colega usou para mostrar onde deveria ser informado o número do qual se obteria o fatorial. Pela sugestão dele, seria o caso de solicitar uma entrada pelo teclado. Algo como:

var
  h, n, FatParc: real
  cont, cont1 : inteiro
inicio
  escreva('Informe o número a obter o seu fatorial: ')
  leia(n)
  h := 0
  para cont de 1 ate n faca
    FatParc := 1
    para cont1 de 1 ate cont faca
      FatParc := FatParc * contl
    fimpara
    h := h + 1 / FatParc
  fimpara
fimalgoritmo

O objetivo é suprir o que foi solicitado baseada na fórmula: H = 1 + 1/2! + 1/3! + 1/4! + .... + 1/N! - observe que este 1, equivale a 1/1!

Assim, pode ser implementado um laço onde é contado de 1 até N - o que viabiliza o somatório que resultará no valor de H;

Para cada interação deve ser calculado o fatorial do contador, o qual o colega chamou de fatorial parcial (FatParc). O cálculo do fatorial é obtido através de mais um laço com as multiplicações consecutivas;

Ao termino deste laço o valor do fatorial obtido (FatParc), será utilizado na divisão 1/N! e deverá ser acumulado - é o somatório que resulta no H;

Espero ter lhe ajudado.

Abraços

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...