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

(Resolvido) simplificar fração


vms

Pergunta

ola pessoal

stou tentando fazer uma calcula que converta milimetro para polegadas

o calculo e esse ai, o problema estar na simplificação

esse exemplo simplifica 48/128 pra o resultado sair 3/8" de polegadas

existe alguma forma ou função pra simplificar fração?

milimetro para polegada fracionaria (9,525mm em polegadas)

9,525 / 25,4 => 0,375 * 128 => 48 = 3"

....128......................128.............128 ..8

Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0
converta milimetro para polegadas

Converter polegada para milimetro e vice-versa

procedure TForm1.Button1Click(Sender: TObject);
Const nPolegada = 25.401;
var      nBarra, nInt, nAvos: Integer;
begin
   nBarra := pos('/',Edit1.Text);
  if nBarra > 0 then
   begin
      nInt    := StrToInt(Copy(Edit1.Text,1,nBarra-1));
    nAvos := StrToInt(Copy(Edit1.Text,nBarra+1,Length(Edit1.Text)-nBarra));
    ShowMessage(FloatToStr((nInt*nPolegada)/nAvos));
   end else
  begin
      nInt    := StrToInt(Edit1.Text);
    ShowMessage(FloatToStr(nInt*nPolegada));
  end;
end;


procedure TForm1.Button2Click(Sender: TObject);
Const nPolegada = 25.401;
begin
    ShowMessage(FloatToStr(((strtofloat(edit2.text)/nPolegada)*128*128)/128));

end;

abraço

Link para o comentário
Compartilhar em outros sites

  • 0

esse exemplo divide o numerador pelo denominador e dar um resultado decimal

preciso simplificar a franção e não dividir pra o resultado sair fracionario como

o exemplo que postei

48/16=3

128/16=8

resultado 3/8"

nesse caso numero 16 divide os dois numeros ao mesmo tempo(numerador e denominador)

o resultado de ambos sera a fração simplificada

Link para o comentário
Compartilhar em outros sites

  • 0
preciso simplificar a franção e não dividir pra o resultado sair fracionario como

o exemplo que postei

48/16=3

128/16=8

resultado 3/8"

Neste caso, veja as alterações no codigo:

procedure TForm1.Button1Click(Sender: TObject);
Const nPolegada = 25.40;
var      nBarra, nInt, nAvos: Integer;
begin
   nBarra := pos('/',Edit1.Text);
  if nBarra > 0 then
   begin
      nInt    := StrToInt(Copy(Edit1.Text,1,nBarra-1));
    nAvos := StrToInt(Copy(Edit1.Text,nBarra+1,Length(Edit1.Text)-nBarra));
    ShowMessage(FloatToStr((nInt*nPolegada)/nAvos)+ ' mm');
   end else
  begin
      nInt    := StrToInt(Edit1.Text);
    ShowMessage(FloatToStr(nInt*nPolegada)+' mm');
  end;
end;


procedure TForm1.Button2Click(Sender: TObject);
Const nPolegada = 25.40;
var num : real; num1, num2, num3, i : integer;
begin
    num3 := 128;
    num := (strtofloat(edit2.text)*128)/nPolegada;
    num1 := trunc(num);
    for i := 1 to 7 do
       begin
          num2 := (num1 div 2);
          if (num2 * 2) = num1 then
             begin
                num1 := num2;
                num3 := num3 div 2;
             end;

       end;

    if num3 = 1 then
       ShowMessage(trim(edit2.text) + ' = ' + inttostr(num1)+' "')
    else
       ShowMessage(trim(edit2.text) + ' = ' + inttostr(num1) + '/' + inttostr(num3)+' "')

end;

abraço

Link para o comentário
Compartilhar em outros sites

  • 0
ola pessoal

stou tentando fazer uma calcula que converta milimetro para polegadas

o calculo e esse ai, o problema estar na simplificação

esse exemplo simplifica 48/128 pra o resultado sair 3/8" de polegadas

existe alguma forma ou função pra simplificar fração?

milimetro para polegada fracionaria (9,525mm em polegadas)

9,525 / 25,4 => 0,375 * 128 => 48 = 3"

....128......................128.............128 ..8

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,3k
    • Posts
      652,2k
×
×
  • Criar Novo...