i all the A langs
This commit is contained in:
parent
86c034bb8b
commit
9246b988c7
245 changed files with 3941 additions and 0 deletions
20
Task/Arrays/ALGOL-68/arrays-1.alg
Normal file
20
Task/Arrays/ALGOL-68/arrays-1.alg
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
PROC array_test = VOID:
|
||||
(
|
||||
[1:20]INT a;
|
||||
a := others; # assign whole array #
|
||||
a[1] := -1; # assign individual element #
|
||||
a[3:5] := (2, 4, -1); # assign a slice #
|
||||
[1:3]INT slice = a[3:5]; # copy a slice #
|
||||
|
||||
REF []INT rslice = a[3:5]; # create a reference to a slice #
|
||||
print((LWB rslice, UPB slice)); # query the bounds of the slice #
|
||||
rslice := (2, 4, -1); # assign to the slice, modifying original array #
|
||||
|
||||
[1:3, 1:3]INT matrix; # create a two dimensional array #
|
||||
REF []INT hvector = matrix[2,]; # create a reference to a row #
|
||||
REF []INT vvector = matrix[,2]; # create a reference to a column #
|
||||
REF [,]INT block = matrix[1:2, 1:2]; # create a reference to an area of the array #
|
||||
|
||||
FLEX []CHAR string := "Hello, world!"; # create an array with variable bounds #
|
||||
string := "shorter" # flexible arrays automatically resize themselves on assignment #
|
||||
)
|
||||
17
Task/Arrays/ALGOL-68/arrays-2.alg
Normal file
17
Task/Arrays/ALGOL-68/arrays-2.alg
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
DEF ai[100] : ARRAY OF CHAR, -> static
|
||||
da: PTR TO CHAR,
|
||||
la: PTR TO CHAR
|
||||
|
||||
PROC main()
|
||||
da := New(100)
|
||||
-> or
|
||||
NEW la[100]
|
||||
IF da <> NIL
|
||||
ai[0] := da[0] -> first is 0
|
||||
ai[99] := da[99] -> last is "size"-1
|
||||
Dispose(da)
|
||||
ENDIF
|
||||
-> using NEW, we must specify the size even when
|
||||
-> "deallocating" the array
|
||||
IF la <> NIL THEN END la[100]
|
||||
ENDPROC
|
||||
2
Task/Arrays/ALGOL-68/arrays-3.alg
Normal file
2
Task/Arrays/ALGOL-68/arrays-3.alg
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
set empty to {}
|
||||
set ints to {1, 2, 3}
|
||||
1
Task/Arrays/ALGOL-68/arrays-4.alg
Normal file
1
Task/Arrays/ALGOL-68/arrays-4.alg
Normal file
|
|
@ -0,0 +1 @@
|
|||
set any to {1, "foo", 2.57, missing value, ints}
|
||||
15
Task/Arrays/Aikido/arrays.aikido
Normal file
15
Task/Arrays/Aikido/arrays.aikido
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
var arr1 = [1,2,3,4] // initialize with array literal
|
||||
var arr2 = new [10] // empty array of 10 elements (each element has value none)
|
||||
var arr3 = new int [40] // array of 40 integers
|
||||
var arr4 = new Object (1,2) [10] // array of 10 instances of Object
|
||||
|
||||
arr1.append (5) // add to array
|
||||
var b = 4 in arr1 // check for inclusion
|
||||
arr1 <<= 2 // remove first 2 elements from array
|
||||
var arrx = arr1[1:3] // get slice of array
|
||||
var s = arr1.size() // or sizeof(arr1)
|
||||
delete arr4[2] // remove an element from an array
|
||||
|
||||
var arr5 = arr1 + arr2 // append arrays
|
||||
var arr6 = arr1 | arr2 // union
|
||||
var arr7 = arr1 & arr2 // intersection
|
||||
31
Task/Arrays/Argile/arrays-1.argile
Normal file
31
Task/Arrays/Argile/arrays-1.argile
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
use std, array
|
||||
|
||||
(:::::::::::::::::
|
||||
: Static arrays :
|
||||
:::::::::::::::::)
|
||||
let the array of 2 text aabbArray be Cdata{"aa";"bb"}
|
||||
let raw array of real :my array: = Cdata {1.0 ; 2.0 ; 3.0} (: auto sized :)
|
||||
let another_array be an array of 256 byte (: not initialised :)
|
||||
let (raw array of (array of 3 real)) foobar = Cdata {
|
||||
{1.0; 2.0; 0.0}
|
||||
{5.0; 1.0; 3.0}
|
||||
}
|
||||
|
||||
(: macro to get size of static arrays :)
|
||||
=: <array>.length := -> nat {size of array / (size of array[0])}
|
||||
printf "%lu, %lu\n" foobar.length (another_array.length) (: 2, 256 :)
|
||||
|
||||
(: access :)
|
||||
another_array[255] = '&'
|
||||
printf "`%c'\n" another_array[255]
|
||||
|
||||
|
||||
(::::::::::::::::::
|
||||
: Dynamic arrays :
|
||||
::::::::::::::::::)
|
||||
let DynArray = new array of 5 int
|
||||
DynArray[0] = -42
|
||||
DynArray = (realloc DynArray (6 * size of DynArray[0])) as (type of DynArray)
|
||||
DynArray[5] = 243
|
||||
prints DynArray[0] DynArray[5]
|
||||
del DynArray
|
||||
4
Task/Arrays/Argile/arrays-2.argile
Normal file
4
Task/Arrays/Argile/arrays-2.argile
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
use std, array
|
||||
let x = @["foo" "bar" "123"]
|
||||
print x[2]
|
||||
x[2] = "abc"
|
||||
7
Task/Arrays/AutoHotkey/arrays-1.ahk
Normal file
7
Task/Arrays/AutoHotkey/arrays-1.ahk
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
myArray := Object() ; could use JSON-syntax sugar like {key: value}
|
||||
myArray[1] := "foo"
|
||||
myArray[2] := "bar"
|
||||
MsgBox % myArray[2]
|
||||
|
||||
; Push a value onto the array
|
||||
myArray.Insert("baz")
|
||||
11
Task/Arrays/AutoHotkey/arrays-2.ahk
Normal file
11
Task/Arrays/AutoHotkey/arrays-2.ahk
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
arrayX0 = 4 ; length
|
||||
arrayX1 = first
|
||||
arrayX2 = second
|
||||
arrayX3 = foo
|
||||
arrayX4 = bar
|
||||
Loop, %arrayX0%
|
||||
Msgbox % arrayX%A_Index%
|
||||
source = apple bear cat dog egg fish
|
||||
StringSplit arrayX, source, %A_Space%
|
||||
Loop, %arrayX0%
|
||||
Msgbox % arrayX%A_Index%
|
||||
14
Task/Arrays/AutoIt/arrays.autoit
Normal file
14
Task/Arrays/AutoIt/arrays.autoit
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
#include <Array.au3> ;Include extended Array functions (_ArrayDisplay)
|
||||
|
||||
Local $aInputs[1] ;Create the Array with just 1 element
|
||||
|
||||
While True ;Endless loop
|
||||
$aInputs[UBound($aInputs) - 1] = InputBox("Array", "Add one value") ;Save user input to the last element of the Array
|
||||
If $aInputs[UBound($aInputs) - 1] = "" Then ;If an empty string is entered, then...
|
||||
ReDim $aInputs[UBound($aInputs) - 1] ;...remove them from the Array and...
|
||||
ExitLoop ;... exit the loop!
|
||||
EndIf
|
||||
ReDim $aInputs[UBound($aInputs) + 1] ;Add an empty element to the Array
|
||||
WEnd
|
||||
|
||||
_ArrayDisplay($aInputs) ;Display the Array
|
||||
Loading…
Add table
Add a link
Reference in a new issue