All pastes #234421 Raw Edit

kyles gay and fatjkz

public text v1 · immutable
·published 2006-11-02 15:28 UTC
rendered paste body
function occ (nums : array 1 .. * of int, num : int) : int
    var count := 0
    for i : 1 .. upper (nums)
        if nums (i) = num then
            count += 1
        end if
    end for
    result count
end occ

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

function median (nums : array 1 .. * of int) : int
    result nums (upper (nums) div 2)

end median
var n : array 1 .. 10 of int := init (1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
put median (n)

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

function highest (nums : array 1 .. * of int) : int
    var g : int := 0
    for i : 1 .. upper (nums)
        if nums (i) > g then
            g := nums (i)
        end if
    end for
    result
        g
end highest

var num : array 1 .. 10 of int

put highest(num)

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

proc topHalf (nums : array 1 .. * of real)
    var total : real := 0
    var mean : real := 0

    for i : 1 .. upper (nums)
        total := total + nums (i)
    end for

    mean := total / upper (nums)

    for i : 1 .. upper (nums)
        if nums (i) > mean then
            put nums (i)
        end if
    end for
end topHalf

var nums : array 1 .. 10 of real

topHalf (nums)

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

View.Set ("graphics")
proc fillGrid 
    var x : array 1 .. 20 of int
    var y : array 1 .. 20 of int
    var col : int

    for i : 1 .. upper (x)
        randint (x (i), 1, maxx - 30)
        randint (y (i), 1, maxy - 30)
        randint (col, 1, 25)
        drawfillbox (x (i), y (i), x (i) + 30, y (i) + 30, col)
        delay (100)
    end for
    for i : 1 .. upper (x)
        drawfillbox (x (i), y (i), x (i) + 30, y (i) + 30, white)
        delay (100)
    end for
end fillGrid

fillGrid 

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

View.Set ("graphics:max,max")
var x : array 1 .. 7 of int := init (0, 0, 0, 0, 0, 0, 0)
var y : array 1 .. 7 of int := init (0, 0, 0, 0, 0, 0, 0)
var mx, my, mb : int
var clickCount : int := 0
proc up
    loop
        mousewhere (mx, my, mb)
        exit when mb = 0
    end loop
end up
loop
    mousewhere (mx, my, mb)
    loop
        mousewhere (mx, my, mb)
        if mb = 1 and clickCount = 0 then
            drawfilloval (mx, my, 5, 5, blue)
            clickCount += 1
            up
            exit
        elsif mb = 1 and clickCount >= 4 then
            drawfilloval (mx, my, 5, 5, blue)
            drawline (mx, my, x (1), y (1), red)
            drawfilloval (x (5), y (5), 10, 10, white)
            drawline (x (4), y (4), x (3), y (3), white)
            up
            exit
        elsif mb = 1 and clickCount >= 1 then
            drawfilloval (mx, my, 5, 5, blue)
            drawline (mx, my, x (1), y (1), red)
            clickCount += 1
            up
            exit
        end if
    end loop
    x (1) := mx
    y (1) := my
    for decreasing i : 4 .. 2
        x (i) := x (i - 1)
        y (i) := y (i - 1)
    end for
end loop