Jump to content

Archived

This topic is now archived and is closed to further replies.

hgb7

[Resolvido] Faça um algoritmo que leia 10 pares de números inteir

Recommended Posts

Bom dia

 

Alguém pode me dar uma luz de como fazer?

 

Faça um algoritmo que leia 10 pares de números inteiros, M e P, chame uma função para fazer a validação para que os números sejam >=1. Implemente outra função p/ calcular o fatorial de um número qualquer. Finalmente, calcule e escreva o número de arranjos e combinações de M elementos P a P, dado pelas fórmulas:

 

A = M!/ (M – P)! C = M!/ P! ( M – P)!

 

Se M < P, por definição A = 0 e C = 0

 

OBS:

• A função de consistência deve ser do tipo lógico, receber N como parâmetro e retornar V ou F;

• A função que calcula o fatorial deve receber um número, como parâmetro, validado e retornar o valor do fatorial;

 

Obrigado

Share this post


Link to post
Share on other sites

Bom Dia,

 

Vamos lá meu caro, darei a lógica, não a como fazer.

 

  • Você vai precisar de Vetor que armazene 10 numeros
  • Fazer uma função que verificar se é >=1, se for OK ( verdadeiro), se não "Caratere Invalido apenas numeros Maiores ou iguais a 1" (falso)
  • O Resto e´apenas calculo matematico, Fatorial, serial legal você colocar a quantidade de vezes que vai fatorar e fazer um Loop (enquanto), ai no caso seu N(numero inteiro) vai ser fatorado Enquanto o numero do contador for < que digitado (num_conta) (se quiser grava isso aqui em vetor temporario da função para apresentar, caso contario assim que fatorar, apresente na tela.)
  • Pelo que entendi, após o Loop, faz o caculo com valor que você tinha fatoriado. e apresentar tudo na tela

Share this post


Link to post
Share on other sites

Opa!

 

Obrigado pela luz! :)

 

Olá

 

Fiz algo aqui e gostaria de alguma opinião:

 

algoritmo
/////////////////////////////////////////

funcao validarNum(num1 :inteiro; num2 :inteiro):logico
inicio
se (num1 >= 1) e (num2 >= 1) entao
   retorne verdadeiro
senao
   escreval ("Insira apenas números maiores ou iguais a 1")
   retorne falso
fimse
fimfuncao
/////////////////////////////////////////

funcao calcularFator(var m,p,f :inteiro):inteiro
var
a, c :inteiro

inicio
se (m < p) entao
   a <- 0
   c <- 0
   senao
        a <- m%(m-p)
        c <- m%p(m-p)
fimse
retorne (a,c)

fimfuncao
/////////////////////////////////////////

var
m, p, f :inteiro
opcao :caracter

inicio
opcao <- "s"
enquanto (opcao = "s") faca
repita
      escreval("Insira o 1º Número: ")
      leia (m)
      escreval("Insira o 2º Número: ")
      leia (p)
      ate validarNum(m,p)
      escreval ("Quer inserir mais? s/n ")
      leia (opcao)
fimenquanto
repita
      escreval ("Qual número deseja calcular o fatorial? ")
      leia (f)
      ate validarNum(f,1)
escreval ("Combinações: ", calcularFator(m,p,f))
fimalgoritmo

Share this post


Link to post
Share on other sites

até ai ta beleza ;D

uma coisa só q eu diria pra você acrescentar + q n muda muita coisa é isso:

enquanto (opcao = "s" ou opcao = "S") faca[/code]

 

oq jah tentou pro ultimo?

poste ai pra gente tentar fazer!

 

[]s

Share this post


Link to post
Share on other sites

Opa!

Estou postando a versão final... acredito hehe, vejam:

 

algoritmo
// Função : Manipular 2 números Inteiros
/////////////////////////////////////////

funcao validarNum(num1, num2 :inteiro):logico
inicio
se (num1 >= 1) e (num2 >= 1) entao
   retorne verdadeiro
senao
   escreval ("Insira apenas números maiores ou iguais a 1")
   retorne falso
fimse
fimfuncao
/////////////////////////////////////////

funcao calcularFator(n :inteiro):inteiro
var
fat, i :inteiro

inicio
fat <- 1
para i de 1 ate n faca
     fat <- fat * i
fimpara
retorne fat
fimfuncao
/////////////////////////////////////////

var
m, p :inteiro
a, c :real

inicio
repita
      escreval("Insira o 1º Número: ")
      leia (m)
      escreval("Insira o 2º Número: ")
      leia (p)
      ate validarNum(m,p)

se (m < p) entao
   c <- 0
   p <- 0
senao
   a <- (calcularFator(m)/calcularFator(m-p))
   c <- (calcularFator(m) / (calcularFator(p)*calcularFator(m-p)))
fimse

escreval ("Número de arranjos: ", a, ". Número de combinações: ", c,".")

fimalgoritmo

Share this post


Link to post
Share on other sites

×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.