FabianSiza,
Cita:
Empezado por FabianSiza
...estoy tratando de hacer un programa que convierta Fahrenheit a Celsius...
|
Revisa este código:
Código Delphi
[-]
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, Math;
type
TForm1 = class(TForm)
Button1: TButton;
Edit1: TEdit;
Edit2: TEdit;
Label1: TLabel;
Label2: TLabel;
RadioGroup1: TRadioGroup;
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
public
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
RadioGroup1.ItemIndex := 0;
end;
function Fahrenheit2Celsius(F : Double) : Double;
begin
Result := 5/9 * (F - 32);
end;
function Celsius2Fahrenheit(C : Double) : Double;
begin
Result := C * 9/5 + 32;
end;
function Fahrenheit2Kelvin(F : Double) : Double;
begin
Result := (F + 459.67) * 5/9;
end;
function Kelvin2Fahrenheit(K : Double) : Double;
begin
Result := K * 9/5 - 459.67;
end;
function Kelvin2Celsius(K : Double) : Double;
begin
Result := K - 273.15;
end;
function Celsius2Kelvin(C : Double) : Double;
begin
Result := C + 273.15;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
Temperature1, Temperature2 : Double;
begin
Temperature1 := StrToFloatDef(Edit1.Text,0);
case RadioGroup1.ItemIndex of
0 : Temperature2 := Fahrenheit2Celsius(Temperature1);
1 : Temperature2 := Celsius2Fahrenheit(Temperature1);
2 : Temperature2 := Fahrenheit2Kelvin(Temperature1);
3 : Temperature2 := Kelvin2Fahrenheit(Temperature1);
4 : Temperature2 := Kelvin2Celsius(Temperature1);
5 : Temperature2 := Celsius2Kelvin(Temperature1);
end;
Edit2.Text := FloatToStr(RoundTo(Temperature2,-3));
end;
end.
El código anterior en Delphi 7 sobre Windows 7 Professional x32,
permite realizar conversiones de temperatura, como se muestra en la siguiente imagen:
Espero sea útil
Nelson.