Which Statement Best Describes This Event Handler for a File Upload Control Named Uplcustlist

Control flow statement

In calculator science, a for-loop (or simply for loop) is a control flow statement for specifying iteration, which allows code to be executed repeatedly. Various keywords are used to specify this argument: descendants of ALGOL use "for", while descendants of Fortran use "do". There are other possibilities, for example COBOL which uses "PERFORM VARYING".

A for-loop has two parts: a header specifying the iteration, and a body which is executed one time per iteration. The header oft declares an explicit loop counter or loop variable, which allows the body to know which iteration is being executed. For-loops are typically used when the number of iterations is known before entering the loop. For-loops tin exist thought of as shorthands for while-loops which increase and test a loop variable.

The name for-loop comes from the word for, which is used as the keyword in many programming languages to introduce a for-loop. The term in English language dates to ALGOL 58 and was popularized in the influential later ALGOL sixty; it is the straight translation of the earlier German language für, used in Superplan (1949–1951) by Heinz Rutishauser, who also was involved in defining ALGOL 58 and ALGOL 60.[ commendation needed ] The loop body is executed "for" the given values of the loop variable, though this is more explicit in the ALGOL version of the statement, in which a list of possible values and/or increments can be specified.

In FORTRAN and PL/I, the keyword Do is used for the same thing and it is called a do-loop; this is different from a do-while loop.

FOR [edit]

For loop illustration, from i=0 to i=2, resulting in data1=200

A for-loop statement is available in most imperative programming languages. Even ignoring minor differences in syntax there are many differences in how these statements work and the level of expressiveness they support. By and large, for-loops fall into 1 of the following categories:

Traditional for-loops [edit]

The for-loop of languages like ALGOL, Simula, BASIC, Pascal, Modula, Oberon, Ada, Matlab, Ocaml, F#, and and then on, requires a control variable with start- and end-values and looks something like this:

                        for            i            =            first            to            last            do            argument            (* or only *)            for            i            =            first            ..            final            exercise            statement          

Depending on the language, an explicit assignment sign may exist used in place of the equal sign (and some languages require the word int even in the numerical example). An optional step-value (an increment or decrement ≠ one) may also exist included, although the verbal syntaxes used for this differs a bit more between the languages. Some languages require a carve up announcement of the command variable, some do not.

Some other course was popularized past the C programming language. It requires 3 parts: the initialization (loop variant), the condition, and the advocacy to the next iteration. All these three parts are optional.[1] This type of "semicolon loops" came from B programming linguistic communication and it was originally invented by Stephen Johnson.[two]

In the initialization function, any variables needed are declared (and normally assigned values). If multiple variables are declared, they should all be of the same type. The condition part checks a certain status and exits the loop if false, even if the loop is never executed. If the condition is true, then the lines of code inside the loop are executed. The advancement to the next iteration part is performed exactly once every time the loop ends. The loop is then repeated if the condition evaluates to true.

Here is an example of the C-manner traditional for-loop in Java.

                        // Prints the numbers from 0 to 99 (and not 100), each followed by a space.                        for            (            int            i            =            0            ;            i            <            100            ;            i            ++            )            {            System            .            out            .            print            (            i            );            System            .            out            .            impress            (            ' '            );            }            System            .            out            .            println            ();          

These loops are as well sometimes called numeric for-loops when contrasted with foreach loops(see beneath).

Iterator-based for-loops [edit]

This blazon of for-loop is a generalisation of the numeric range type of for-loop, as information technology allows for the enumeration of sets of items other than number sequences. It is usually characterized by the use of an implicit or explicit iterator, in which the loop variable takes on each of the values in a sequence or other data collection. A representative example in Python is:

                        for            item            in            some_iterable_object            :            do_something            ()            do_something_else            ()          

Where some_iterable_object is either a information drove that supports implicit iteration (like a listing of employee's names), or may in fact be an iterator itself. Some languages take this in addition to another for-loop syntax; notably, PHP has this type of loop under the name for each, besides equally a three-expression for-loop (see below) nether the name for.

Vectorised for-loops [edit]

Some languages offering a for-loop that acts as if processing all iterations in parallel, such as the for all keyword in FORTRAN 95 which has the interpretation that all right-hand-side expressions are evaluated before whatsoever assignments are made, as distinct from the explicit iteration grade. For example, in the for statement in the post-obit pseudocode fragment, when calculating the new value for A(i), except for the start (with i = 2) the reference to A(i - one) will obtain the new value that had been placed there in the previous step. In the for all version, all the same, each calculation refers just to the original, unaltered A.

          for          i := 2 : N - 1          practise          A(i) := [A(i - 1) + A(i) + A(i + 1)] / iii;          next          i;          for all          i := 2 : N - 1          practice          A(i) := [A(i - 1) + A(i) + A(i + one)] / iii;        

The difference may be significant.

Some languages (such as FORTRAN 95, PL/I) as well offer array consignment statements, that enable many for-loops to be omitted. Thus pseudocode such as A := 0; would set all elements of array A to zip, no matter its size or dimensionality. The example loop could be rendered equally

                        A            (            2            :            North            -            1            )            :            =            [            A            (            1            :            N            -            two            )            +            A            (            2            :            N            -            1            )            +            A            (            iii            :            N            )]            /            3            ;          

Only whether that would exist rendered in the style of the for-loop or the for all-loop or something else may non be clearly described in the compiler transmission.

Compound for-loops [edit]

Introduced with ALGOL 68 and followed by PL/I, this allows the iteration of a loop to be compounded with a test, as in

for i := ane : N while A(i) > 0 do          etc.        

That is, a value is assigned to the loop variable i and only if the while expression is truthful will the loop trunk be executed. If the effect were false the for-loop's execution stops short. Granted that the loop variable'south value is divers afterward the termination of the loop, then the above statement will find the first non-positive chemical element in assortment A (and if no such, its value will be North + 1), or, with suitable variations, the starting time non-blank character in a string, and so on.

Loop counters [edit]

In computer programming a loop counter is the variable that controls the iterations of a loop (a computer programming language construct). It is and so named because most uses of this construct result in the variable taking on a range of integer values in some orderly sequences (example., starting at 0 and end at 10 in increments of ane)

Loop counters change with each iteration of a loop, providing a unique value for each individual iteration. The loop counter is used to make up one's mind when the loop should terminate and for the program period to continue to the next didactics after the loop.

A common identifier naming convention is for the loop counter to employ the variable names i, j, and g (then on if needed), where i would exist the most outer loop, j the side by side inner loop, etc. The reverse club is also used by some programmers. This style is more often than not agreed to have originated from the early programming of FORTRAN[ citation needed ], where these variable names beginning with these letters were implicitly declared as having an integer type, and and then were obvious choices for loop counters that were simply temporarily required. The exercise dates back further to mathematical notation where indices for sums and multiplications are often i, j, etc. A variant convention is the employ of reduplicated letters for the index, 2, jj, and kk, equally this allows easier searching and search-replacing than using a unmarried letter.[3]

Example [edit]

An case of C code involving nested for loops, where the loop counter variables are i and j:

                        for                                    (            i                                    =                                    0            ;                                    i                                    <                                    100            ;                                    i            ++            )                                    {                                                for                                    (            j                                    =                                    i            ;                                    j                                    <                                    x            ;                                    j            ++            )                                    {                                                some_function            (            i            ,                                    j            );                                                }                        }                      

For loops in C can also be used to print the reverse of a word. As:

                        for                                    (            i                                    =                                    0            ;                                    i                                    <                                    six            ;                                    i            ++            )                                    {                                                scanf            (            "%c"            ,                                    &            a            [            i            ]);                        }                        for                                    (            i                                    =                                    iv            ;                                    i                                    >=                                    0            ;                                    i            --            )                                    {                                                printf            (            "%c"            ,                                    a            [            i            ]);                        }                      

Here, if the input is apple, the output will exist elppa.

Additional semantics and constructs [edit]

Use as infinite loops [edit]

This C-style for-loop is usually the source of an infinite loop since the fundamental steps of iteration are completely in the control of the programmer. In fact, when space loops are intended, this type of for-loop tin exist used (with empty expressions), such every bit:

This style is used instead of infinite while (1) loops to avoid a blazon conversion warning in some C/C++ compilers.[4] Some programmers prefer the more succinct for (;;) form over the semantically equivalent but more than verbose while (true) grade.

Early leave and continuation [edit]

Some languages may likewise provide other supporting statements, which when present tin alter how the for-loop iteration proceeds. Common among these are the break and continue statements institute in C and its derivatives. The break statement causes the inner-most loop to exist terminated immediately when executed. The continue statement volition move at in one case to the next iteration without further progress through the loop body for the current iteration. A for argument too terminates when a interruption, goto, or return statement inside the statement body is executed. [Wells] Other languages may have similar statements or otherwise provide ways to change the for-loop progress; for example in FORTRAN 95:

                        DO                        I            =            1            ,            N            statements            !Executed for all values of "I", up to a disaster if whatever.            IF            (            no            adept            )            Wheel            !Skip this value of "I", continue with the next.            statements            !Executed only where goodness prevails.            IF            (            disaster            )            Leave            !Carelessness the loop.            statements            !While good and, no disaster.            Finish Practise            !Should align with the "DO".          

Some languages offer further facilities such every bit naming the various loop statements so that with multiple nested loops there is no doubt as to which loop is involved. Fortran 95, for example:

                        X1            :            Practise                        I            =            1            ,            N            statements            X2            :            Practise                        J            =            1            ,            K            statements            IF            (            trouble            )            Bicycle                        X1            statements            END DO                        X2            statements            Finish Exercise                        X1          

Thus, when "trouble" is detected in the inner loop, the Cycle X1 (not X2) means that the skip will be to the side by side iteration for I, not J. The compiler will as well be checking that each END Practise has the appropriate label for its position: this is not just a documentation aid. The programmer must still code the problem correctly, but some possible blunders will exist blocked.

Loop variable scope and semantics [edit]

Different languages specify unlike rules for what value the loop variable volition hold on termination of its loop, and indeed some agree that it "becomes undefined". This permits a compiler to generate code that leaves any value in the loop variable, or perhaps even leaves it unchanged because the loop value was held in a annals and never stored to retentivity. Actual behaviour may even vary co-ordinate to the compiler'southward optimization settings, equally with the Honywell Fortran66 compiler.

In some languages (not C or C++) the loop variable is immutable within the scope of the loop body, with any attempt to modify its value being regarded equally a semantic error. Such modifications are sometimes a consequence of a programmer error, which tin can be very difficult to identify once made. Withal, simply overt changes are likely to be detected by the compiler. Situations where the address of the loop variable is passed every bit an argument to a subroutine get in very hard to check, because the routine's behavior is in general unknowable to the compiler. Some examples in the style of Fortran:

                        Exercise                        I            =            i            ,            N            I            =            vii            !Overt adjustment of the loop variable. Compiler complaint likely.            Z            =            Adapt            (            I            )            !Function "ADJUST" might alter "I", to uncertain effect.            normal            statements            !Memory might fade that "I" is the loop variable.            PRINT            (            A            (            I            ),            B            (            I            ),            I            =            1            ,            N            ,            2            )            !Implicit for-loop to print odd elements of arrays A and B, reusing "I"...            PRINT                        I            !What value volition be presented?            Terminate DO            !How many times volition the loop be executed?          

A common approach is to summate the iteration count at the commencement of a loop (with conscientious attending to overflow as in for i := 0 : 65535 do ... ; in sixteen-flake integer arithmetic) and with each iteration decrement this count while also adjusting the value of I: double counting results. However, adjustments to the value of I within the loop will not change the number of iterations executed.

Still some other possibility is that the code generated may employ an auxiliary variable as the loop variable, possibly held in a motorcar register, whose value may or may not be copied to I on each iteration. Again, modifications of I would not touch on the control of the loop, simply now a disjunction is possible: within the loop, references to the value of I might exist to the (possibly altered) electric current value of I or to the auxiliary variable (held safe from improper modification) and confusing results are guaranteed. For instance, within the loop a reference to element I of an assortment would probable employ the auxiliary variable (peculiarly if it were held in a machine register), but if I is a parameter to some routine (for instance, a print-statement to reveal its value), information technology would likely be a reference to the proper variable I instead. Information technology is all-time to avoid such possibilities.

Aligning of bounds [edit]

Just as the alphabetize variable might exist modified within a for-loop, so besides may its bounds and direction. But to uncertain outcome. A compiler may prevent such attempts, they may have no effect, or they might fifty-fifty work properly - though many would declare that to do so would be wrong. Consider a argument such as

          for          i := kickoff : terminal : stride          do          A(i) := A(i) / A(last);        

If the approach to compiling such a loop was to exist the evaluation of first, concluding and step and the calculation of an iteration count via something like (concluding - first)/footstep once only at the kickoff, then if those items were elementary variables and their values were somehow adapted during the iterations, this would take no outcome on the iteration count even if the chemical element selected for division by A(last) inverse.

List of value ranges [edit]

PL/I and Algol 68, allows loops in which the loop variable is iterated over a list of ranges of values instead of a single range. The following PL/I example volition execute the loop with vi values of i: 1, 7, 12, 13, 14, fifteen:

                        do                        i                        =                                    1            ,                                    7            ,                                    12                                    to                                    15            ;                                                /*statements*/                        end            ;                      

Equivalence with while-loops [edit]

A for-loop is generally equivalent to a while-loop:

factorial := 1  for counter from 2 to five      factorial := factorial * counter counter := counter - i impress counter + "! equals " + factorial        

is equivalent to:

factorial := 1 counter := 1  while counter < v     counter := counter + 1     factorial := factorial * counter print counter + "! equals " + factorial        

as demonstrated by the output of the variables.

Timeline of the for-loop syntax in diverse programming languages [edit]

Given an activeness that must exist repeated, for example, v times, different languages' for-loops volition be written differently. The syntax for a three-expression for-loop is near identical in all languages that have it, after accounting for different styles of cake termination and so on.

1957: FORTRAN [edit]

Fortran'due south equivalent of the for loop is the Exercise loop, using the keyword do instead of for, The syntax of Fortran'due south DO loop is:

                                                DO                        label            counter            =            first            ,            terminal            ,            stride                                    statements            label            statement          

The post-obit two examples behave equivalently to the 3 argument for-loop in other languages, initializing the counter variable to 1, incrementing by 1 each iteration of the loop and stopping at five (inclusive).

                                                DO                        9            ,            COUNTER            =            1            ,            5            ,            i                                    WRITE            (            half dozen            ,            8            )            COUNTER                          8            FORMAT            (            I2            )                          9            CONTINUE          

In Fortran 77 (or later), this may too be written as:

                        do                        counter            =            i            ,            5            write            (            *            ,            '(i2)'            )            counter            end do          

The step part may be omitted if the pace is one. Example:

                        * DO loop example.                                    Program                        MAIN                                    SUM                        SQ            =            0                                    Practice                        199            I            =            1            ,            9999999                                    IF            (            SUM                        SQ            .            GT            .            one thousand            )            GO            TO            200            199                        SUM                        SQ            =            SUM                        SQ            +            I            **            2            200                        Print                        206            ,            SUMSQ            206                        FORMAT            (            I2            )                                    End          

Spaces are irrelevant in fixed-form Fortran statements, thus SUM SQ is the aforementioned as SUMSQ. In the mod free-grade Fortran style, blanks are significant.

In Fortran xc, the Go TO may be avoided by using an EXIT statement.

                        * DO loop example.                                    programme                        main                                    implicit none                                    integer            ::            sumsq                                    integer            ::            i                                    sumsq            =            0                                    practice                        i            =            one            ,            9999999                                    if            (            sumsq            >            100            0.0            )            exit                                    sumsq            =            sumsq            +            i            **            ii                                    end exercise                                    print            *            ,            sumsq                                    cease program          

1958: ALGOL [edit]

ALGOL 58 introduced the for statement, using the grade every bit Superplan:

          FOR          Identifier          =          Base          (Difference)          Limit        

For case to print 0 to 10 incremented by ane:

FOR x = 0 (1) ten Begin Print (FL) = x Finish        

1960: COBOL [edit]

COBOL was formalized in late 1959 and has had many elaborations. It uses the PERFORM verb which has many options. Originally all loops had to be out-of-line with the iterated code occupying a separate paragraph. Ignoring the need for declaring and initialising variables, the COBOL equivalent of a for-loop would be.

                                                PERFORM            SQ-ROUTINE            VARYING            I            FROM            i                        BY            1                        UNTIL            I            >            thou                                    SQ-ROUTINE                                    Add            I            **            2                        TO            SUM-SQ            .          

In the 1980s the addition of in-line loops and "structured" statements such every bit Cease-PERFORM resulted in a for-loop with a more familiar structure.

                                                PERFORM            VARYING            I            FROM            one                        BY            1                        UNTIL            I            >            1000                                    Add together            I            **            2                        TO            SUM-SQ            .                                    END-PERFORM          

If the PERFORM verb has the optional clause Examination Afterwards, the resulting loop is slightly different: the loop trunk is executed at least in one case, earlier any exam.

1964: BASIC [edit]

Loops in Bones are sometimes called for-next loops.

                        ten                                    REM THIS FOR LOOP PRINTS ODD NUMBERS FROM 1 TO 15            20                                    FOR                                    I                                    =                                    ane                                    TO                                    xv                                    STEP                                    2            xxx                                    PRINT                                    I            forty                                    Adjacent                                    I          

Notice that the end-loop marking specifies the name of the index variable, which must correspond to the name of the index variable in the start of the for-loop. Some languages (PL/I, FORTRAN 95 and later on) allow a statement label on the first of a for-loop that can be matched by the compiler against the same text on the respective end-loop statement. Fortran also allows the Go out and Bike statements to proper name this text; in a nest of loops this makes clear which loop is intended. However, in these languages the labels must be unique, then successive loops involving the aforementioned alphabetize variable cannot use the same text nor tin a label exist the same as the name of a variable, such every bit the index variable for the loop.

1964: PL/I [edit]

                        exercise                        counter                        =                                    1                                    to                                    5                                    by                                    1            ;                                    /* "by 1" is the default if non specified */                                                /*statements*/            ;                                                end            ;                      

The Leave statement may be used to exit the loop. Loops tin can be labeled, and leave may exit a specific labeled loop in a grouping of nested loops. Some PL/I dialects include the ITERATE statement to terminate the current loop iteration and begin the next.

1968: Algol 68 [edit]

ALGOL 68 has what was considered the universal loop, the full syntax is:

FOR i FROM 1 By two TO 3 WHILE i≠4 DO ~ OD        

Further, the single iteration range could be replaced past a list of such ranges. In that location are several unusual aspects of the construct

  • only the do ~ od portion was compulsory, in which case the loop will iterate indefinitely.
  • thus the clause to 100 do ~ od, will iterate exactly 100 times.
  • the while syntactic element allowed a programmer to break from a for loop early, as in:
INT sum sq := 0; FOR i  WHILE   print(("And so far:", i, new line)); # Interposed for tracing purposes. #   sum sq ≠ 70↑two                    # This is the test for the WHILE   # DO   sum sq +:= i↑2 OD        

Subsequent extensions to the standard Algol68 allowed the to syntactic element to be replaced with upto and downto to achieve a small optimization. The same compilers besides incorporated:

until
for late loop termination.
foreach
for working on arrays in parallel.

1970: Pascal [edit]

                        for            Counter            :=            1            to            v            do            (*statement*)            ;          

Decrementing (counting backwards) is using downto keyword instead of to, every bit in:

                        for            Counter            :=            5            downto            1            do            (*statement*)            ;          

The numeric-range for-loop varies somewhat more.

1972: C/C++ [edit]

                        for                                    (            initialization            ;                                    condition            ;                                    increment            /            decrement            )                                                statement                      

The statement is frequently a cake statement; an example of this would be:

                        //Using for-loops to add numbers 1 - 5            int                                    sum                                    =                                    0            ;                        for                                    (            int                                    i                                    =                                    1            ;                                    i                                    <                                    6            ;                                    ++            i            )                                    {                                                sum                                    +=                                    i            ;                        }                      

The ISO/IEC 9899:1999 publication (commonly known as C99) also allows initial declarations in for loops. All the three sections in the for loop are optional.

1972: Smalltalk [edit]

                        1            to:            five            practise:            [            :            counter            |            "statements"            ]          

Contrary to other languages, in Smalltalk a for-loop is not a language construct but divers in the class Number as a method with two parameters, the terminate value and a closure, using cocky as commencement value.

1980: Ada [edit]

                        for            Counter            in            1            ..            5            loop            -- statements            end            loop            ;          

The exit argument may exist used to exit the loop. Loops tin be labeled, and go out may get out a specifically labeled loop in a group of nested loops:

                        Counting            :            for            Counter            in            one            ..            5            loop            Triangle            :            for            Secondary_Index            in            ii            ..            Counter            loop            -- statements            exit            Counting            ;            -- statements            finish            loop            Triangle            ;            cease            loop            Counting            ;          

1980: Maple [edit]

Maple has two forms of for-loop, one for iterating of a range of values, and the other for iterating over the contents of a container. The value range form is as follows:

          for          i          from          f          past          b          to          t          while          w          practise          # loop body          od;        

All parts except exercise and od are optional. The for i part, if present, must come first. The remaining parts ( from f , by b , to t , while w ) tin can appear in any club.

Iterating over a container is done using this form of loop:

          for          e          in          c          while          west          do          # loop torso          od;        

The in c clause specifies the container, which may be a list, prepare, sum, production, unevaluated part, array, or an object implementing an iterator.

A for-loop may be terminated by od , terminate , or finish practise .

1982: Maxima CAS [edit]

In Maxima CAS one tin use also not integer values :

            for x:0.5 step 0.1 thru 0.9 practice     /* "Do something with x" */          

1982: PostScript [edit]

The for-loop, written every bit [initial] [increase] [limit] { ... } for initialises an internal variable, executes the body equally long as the internal variable is not more limit (or not less, if increment is negative) and, at the end of each iteration, increments the internal variable. Before each iteration, the value of the internal variable is pushed onto the stack.[5]

There is also a simple repeat-loop. The repeat-loop, written as X { ... } echo, repeats the body exactly Ten times.[6]

1983: Ada 83 and above [edit]

                        procedure            Chief            is            Sum_Sq            :            Integer            :=            0            ;            begin            for            I            in            1            ..            9999999            loop            if            Sum_Sq            <=            1000            then            Sum_Sq            :=            Sum_Sq            +            I            **            ii            stop            if            ;            terminate            loop            ;            finish            ;          

1984: MATLAB [edit]

                        for                                    north                                    =                                    ane            :            5                                                            --                                    statements                        stop                      

After the loop, n would be 5 in this case.

As i is used for the Imaginary unit of measurement, its use as a loop variable is discouraged.

1987: Perl [edit]

                        for            (            $counter            =            one            ;            $counter            <=            5            ;            $counter            ++            )            {            # implicitly or predefined variable            # statements;            }            for            (            my            $counter            =            1            ;            $counter            <=            5            ;            $counter            ++            )            {            # variable private to the loop            # statements;            }            for            (            1            ..            5            )            {            # variable implicitly called $_; ane..five creates a listing of these 5 elements            # statements;            }            argument            for            1            ..            5            ;            # nearly same (only 1 statement) with natural language club            for            my            $counter            (            1            ..            v            )            {            # variable individual to the loop            # statements;            }          

(Note that "there'south more than ane manner to do it" is a Perl programming motto.)

1988: Mathematica [edit]

The construct corresponding to most other languages' for-loop is called Do in Mathematica

Mathematica as well has a For construct that mimics the for-loop of C-like languages

                        For            [            x            =            0            ,            x            <=            1            ,            x            +=            0            .            1            ,            f            [            ten            ]            ]          

1989: Fustigate [edit]

                        # commencement course            for            i            in            one            2            3            4            5            do            # must have at least one command in loop            echo            $i            # only print value of i            done          
                        # 2d grade            for            ((            i            =            1            ;            i <=            5            ;            i++            ))            practise            # must have at least i command in loop            echo            $i            # but print value of i            done          

Annotation that an empty loop (i.e., one with no commands between do and washed) is a syntax error. If the above loops independent only comments, execution would upshot in the message "syntax error near unexpected token 'done'".

1990: Haskell [edit]

The built-in imperative forM_ maps a monadic expression into a list, as

                        forM_            [            i            ..            v            ]            $            \            indx            ->            do            statements          

or get each iteration event as a list in

                        statements_result_list            <-            forM            [            ane            ..            5            ]            $            \            indx            ->            do            statements          

Simply, if you want to save the space of the [1..five] list, a more authentic monadic forLoop_ construction can be defined as

                        import            Control.Monad            as            Thou            forLoopM_            ::            Monad            thousand            =>            a            ->            (            a            ->            Bool            )            ->            (            a            ->            a            )            ->            (            a            ->            m            ()            )            ->            grand            ()            forLoopM_            indx            prop            incr            f            =            practice            f            indx            M            .            when            (            prop            adjacent            )            $            forLoopM_            adjacent            prop            incr            f            where            next            =            incr            indx          

and used as:

                        forLoopM_            (            0            ::            Int            )            (            <            len            )            (            +            one            )            $            \            indx            ->            do            -- whatsoever with the index          

1991: Oberon-ii, Oberon-07, or Component Pascal [edit]

                        FOR            Counter            :=            1            TO            5            DO            (* statement sequence *)            END          

Note that in the original Oberon linguistic communication the for-loop was omitted in favor of the more general Oberon loop construct. The for-loop was reintroduced in Oberon-2.

1991: Python [edit]

Python does non comprise the classical for loop, rather a foreach loop is used to iterate over the output of the builtin range() function which returns an iterable list of integers.

                        for            i            in            range            (            ane            ,            6            ):            # gives i values from 1 to 5 inclusive (but not 6)            # statements            impress            (            i            )            # if we want 6 we must do the post-obit            for            i            in            range            (            i            ,            6            +            1            ):            # gives i values from 1 to 6            # statements            print            (            i            )          

Using range(vi) would run the loop from 0 to 5.

1993: AppleScript [edit]

                        repeat            with            i            from            1            to            5            -- statements            log            i            end            repeat          

Yous can likewise iterate through a listing of items, similar to what you lot tin can practise with arrays in other languages:

                        prepare            x            to            {            one            ,            "waffles"            ,            "bacon"            ,            v.1            ,            false            }            echo            with            i            in            10            log            i            end            repeat          

You may likewise use exit repeat to exit a loop at any time. Unlike other languages, AppleScript does non currently have any command to continue to the side by side iteration of a loop.

1993: Lua [edit]

                        for            i            =            starting time            ,            stop            ,            interval            exercise            -- statements            stop          

And so, this code

                        for            i            =            1            ,            five            ,            ii            do            impress            (            i            )            end          

volition print:

For-loops can as well loop through a table using

to iterate numerically through arrays and

to iterate randomly through dictionaries.

Generic for-loop making use of closures:

                        for            name            ,            phone            ,            address            in            contacts            ()            do            -- contacts() must be an iterator office            end          

1995: CFML [edit]

Script syntax [edit]

Uncomplicated index loop:

                        for            (            i            =            one            ;            i            <=            v            ;            i            ++            )            {            // statements            }          

Using an array:

                        for            (            i            in            [            1            ,            2            ,            3            ,            4            ,            5            ])            {            // statements            }          

Using a list of string values:

                        loop            index            =            "i"            listing            =            "1;2,iii;4,five"            delimiters            =            ",;"            {            // statements            }          

The above list instance is only bachelor in the dialect of CFML used past Lucee and Railo.

Tag syntax [edit]

Simple index loop:

                        <cfloop            index            =            "i"            from            =            "1"            to            =            "5"            >            <!--- statements --->            </cfloop>          

Using an array:

                        <cfloop            index            =            "i"            array            =            "            #[ane,2,3,4,5]#            "            >            <!--- statements --->            </cfloop>          

Using a "list" of string values:

                        <cfloop            alphabetize            =            "i"            listing            =            "i;2,3;4,5"            delimiters            =            ",;"            >            <!--- statements --->            </cfloop>          

1995: Java [edit]

                        for            (            int            i            =            0            ;            i            <            5            ;            i            ++            )            {            //perform functions within the loop;            //tin can employ the argument 'pause;' to exit early on;            //can utilize the statement 'continue;' to skip the current iteration            }          

For the extended for-loop, run into Foreach loop § Java.

1995: JavaScript [edit]

JavaScript supports C-mode "three-expression" loops. The break and continue statements are supported within loops.

                        for            (            var            i            =            0            ;            i            <            5            ;            i            ++            )            {            // ...            }          

Alternatively, it is possible to iterate over all keys of an array.

                        for            (            var            key            in            array            )            {            // also works for assoc. arrays            // use assortment[fundamental]            ...            }          

1995: PHP [edit]

This prints out a triangle of *

                        for            (            $i            =            0            ;            $i            <=            5            ;            $i            ++            )            {            for            (            $j            =            0            ;            $j            <=            $i            ;            $j            ++            )            {            echo            "*"            ;            }            echo            "<br />            \n            "            ;            }          

1995: Ruby [edit]

                        for            counter            in            1            ..            five            # statements            terminate            five            .            times            do            |            counter            |            # counter iterates from 0 to four            # statements            terminate            ane            .            upto            (            5            )            practice            |            counter            |            # statements            end          

Red has several possible syntaxes, including the above samples.

1996: OCaml [edit]

Meet expression syntax.[7]

                        (* for_statement := "for" ident '='  expr  ( "to" ∣  "downto" ) expr "do" expr "done" *)            for            i            =            1            to            five            practice            (* statements *)            done            ;;            for            j            =            5            downto            0            do            (* statements *)            done            ;;          

1998: ActionScript 3 [edit]

                        for            (            var            counter            :            uint            =            i            ;            counter            <=            5            ;            counter            ++){            //argument;            }          

2008: Pocket-sized Basic [edit]

                        For            i            =            1            To            ten            ' Statements            EndFor          

2008: Nim [edit]

Nim has a foreach-type loop and various operations for creating iterators.[8]

                        for            i            in            5            ..            10            :            # statements          

2009: Get [edit]

                        for            i            :=            0            ;            i            <=            10            ;            i            ++            {            // statements            }          

2010: Rust [edit]

                        for                                    i                                    in                                    0            ..            10                                    {                                                // statements            }                      

2012: Julia [edit]

                        for            j            =            1            :            10            # statements            end          

See also [edit]

  • Do while loop
  • Foreach
  • While loop

References [edit]

  1. ^ "For loops in C++".
  2. ^ Ken Thompson. "VCF E 2019 -- Brian Kernighan interviews Ken Thompson". Archived from the original on 2021-12-12. Retrieved 2020-11-16 . I saw Johnson'south semicolon version of the for loop and I put that in [B], I stole it.
  3. ^ http://www.knosof.co.u.k./vulnerabilities/loopcntrl.pdf Analysis of loop control variables in C
  4. ^ "Compiler Warning (level 4) C4127". Microsoft. Retrieved 29 June 2011.
  5. ^ PostScript Language Reference. Addison-Wesley Publishing Company. p. 596. ISBN0-201-37922-8.
  6. ^ "PostScript Tutorial - Loops".
  7. ^ "OCaml expression syntax". Archived from the original on 2013-04-12. Retrieved 2013-03-19 .
  8. ^ https://nim-lang.org/docs/arrangement.html#...i%2CT%2CT ".. iterator"

parkerinsing.blogspot.com

Source: https://en.wikipedia.org/wiki/For_loop

0 Response to "Which Statement Best Describes This Event Handler for a File Upload Control Named Uplcustlist"

Post a Comment

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel