Data update

This commit is contained in:
Ingy döt Net 2025-08-11 18:05:26 -07:00
parent 4d5544505c
commit 4924dd0264
3073 changed files with 55820 additions and 4408 deletions

View file

@ -0,0 +1,9 @@
# x is the value to be mapped.
# The ranges, a and b, should each be an array defining the
# left-most and right-most points of the range.
create or replace function maprange(a, b, x) as
b[1] + (((x - a[1]) * (b[2] - b[1]::DOUBLE)) / (a[2] - a[1]::DOUBLE)) ;
# Example 1: a single value
# (Conversion to floating point will be automatic)
select maprange([0,10], [-1, 0], 6) as mapped;

View file

@ -0,0 +1,14 @@
program map(output);
(* Map range *)
var
i: integer;
function maprange(a1, a2, b1, b2: real; s: real): real;
begin
maprange := (s - a1) * (b2 - b1) / (a2 - a1) + b1;
end;
begin
for i := 0 to 10 do
writeln(i: 2, ' maps to: ', maprange(0.0, 10.0, -1.0, 0.0, i): 10);
end.