How to resolve the algorithm Variable declaration reset step by step in the Red programming language

Published on 12 May 2024 09:40 PM

How to resolve the algorithm Variable declaration reset step by step in the Red programming language

Table of Contents

Problem Statement

A decidely non-challenging task to highlight a potential difference between programming languages. Using a straightforward longhand loop as in the JavaScript and Phix examples below, show the locations of elements which are identical to the immediately preceding element in {1,2,2,3,4,4,5}. The (non-blank) results may be 2,5 for zero-based or 3,6 if one-based. The purpose is to determine whether variable declaration (in block scope) resets the contents on every iteration. There is no particular judgement of right or wrong here, just a plain-speaking statement of subtle differences. Should your first attempt bomb with "unassigned variable" exceptions, feel free to code it as (say) If your programming language does not support block scope (eg assembly) it should be omitted from this task.

Let's start with the solution:

Step by Step solution about How to resolve the algorithm Variable declaration reset step by step in the Red programming language

Source code in the red programming language

Red[]
s: [1 2 2 3 4 4 5]
repeat i length? s [
    curr: s/:i
    if all [i > 1 curr = prev][
        print i
    ]
    prev: curr
]


  

You may also check:How to resolve the algorithm Associative array/Creation step by step in the Sidef programming language
You may also check:How to resolve the algorithm Loops/N plus one half step by step in the Salmon programming language
You may also check:How to resolve the algorithm Prime decomposition step by step in the PowerShell programming language
You may also check:How to resolve the algorithm Pointers and references step by step in the Perl programming language
You may also check:How to resolve the algorithm Guess the number/With feedback step by step in the Lambdatalk programming language