home *** CD-ROM | disk | FTP | other *** search
- {***********************************************************************}
- {* *}
- {* TRANSFORM ** A DATA TRANFORMATION PROGRAM *}
- {* copyright (c) 1985 by Larry Marshall *}
- {* *}
- {* This program may be used for noncommercial purposes only. *}
- {* No commercial use of TRANSFORM may be made without the *}
- {* author's expressed written permission. *}
- {* *}
- {***********************************************************************}
-
-
- { This program will allow transformation of data for the purposes }
- { of normalization. The input file must contain only the variable }
- { to be transformed. The input & output files are not defined by the }
- { program and are supplied by the user when prompted }
-
-
- Program ArcSine (input,output);
-
- Var
- Sine,Cosine,Tangent,Val,Tval : real;
- Datain,Dataout : text;
- FileName1,FileName2 : String[14];
- Choice : integer;
-
- Begin
- Writeln(' ***********************************************');
- Writeln(' * *');
- Writeln(' * ** Transform Choices ** *');
- Writeln(' * *');
- Writeln(' * (1) Arc-sine transformation *');
- Writeln(' * *');
- Writeln(' * (2) Log-normal transformation *');
- Writeln(' * *');
- Writeln(' * (3) Square root tranformation *');
- Writeln(' * *');
- Writeln(' ***********************************************');
- Writeln(' Type the number of your choice & <return>');
- Readln(choice);
- Clrscr;
- Writeln;writeln;writeln;writeln;writeln;
- Write(' Name of input file: ');
- Readln(FileName1);
- Writeln;
- Write(' Name of output file: ');
- Readln(FileName2);
-
- Assign(Datain,FileName1);
- Assign(Dataout,FileName2);
- Reset (Datain);
- Rewrite(Dataout);
-
- Case Choice of
-
- 1 : While not EOF(datain) do
- Begin
- Readln(Datain,Val);
- Sine:=SQRT(Val);
- If Sine = 1 then
- Begin
- Sine:=0.99999999999;
- end
- Else
- Begin
- { Cosine:=SQRT((1-SQR(Sine))); }
- { Tangent:=Sine/Cosine; }
- { Tval:=Arctan(Tangent); }
- Tval:=arctan(val/sqrt(-val*val+1));
- End;
- Writeln(Dataout,Tval:4:4);
- End;
-
- 2 : While not EOF(datain) do
- Begin
- Readln(Datain,Val);
- Tval:=LN(Val+1);
- Writeln(Dataout,Tval:4:4);
- End;
-
- 3 : While not EOF(datain) do
- Begin
- Readln(Datain,Val);
- Tval:=SQRT(Val+0.5);
- Writeln(Dataout,Tval:4:4);
- End;
- End;
-
- Close(Datain);
- Close(Dataout);
- End.