pseudocode.pro Open in urlscan Pro
103.235.74.23  Public Scan

Submitted URL: http://pseudocode.pro/
Effective URL: https://pseudocode.pro/
Submission: On January 24 via api from US — Scanned from DE

Form analysis 1 forms found in the DOM

<form class="form-container" enctype="multipart/form-data">
  <div class="upload-files-container">
    <div class="drag-file-area">
      <h3 class="dynamic-message">Drag &amp; drop code or data files here</h3>
      <input type="file" class="default-file-input">
    </div>
  </div>
</form>

Text Content

search challenges about contact

PSEUDOCODE

PRO

download buy
account
login/signup my favourites
AssemblyCode

Run & Options

Live Exited code editor Run on click
Run on click
 * Live
 * Exited code editor
 * Run on click


EXECUTION MODE

Live: will automatically execute upon every character typed (warning: could
result in issues if you have intensive or partially-completed code that results
in an infinite loop)

Exited code editor: will automatically execute code when the code editor loses
focus - i.e. when you click outside of the code editor

Run on click: code will only be executed when you click the triangular run/play
button

BasicWelcome GuidePrimitive Data TypesArithmetic OperatorsLogical
OperatorsCONSTANTsOUTPUTINPUTSelectionIF...ELSECASEIterationFOR LoopsWHILE
LoopsREPEAT...UNTIL LoopsModulesFUNCTIONsFUNCTION - RETURNS ARRAYPROCEDUREsBYVAL
vs BYREF - SimpleBYVAL vs BYREF - ArraysComposite Data
TypesARRAYsRecordsENUMsSETsFilesOPENFILE
modesWRITEFILEREADFILEEOFAPPENDFILERANDOM FilesString
FunctionsLEFTRIGHTMIDSUBSTRINGLENGTHLCASEUCASETO_UPPERTO_LOWERNUM_TO_STRSTR_TO_NUMIS_NUMASCCHRNumeric
FunctionsINTRANDROUNDDate
FunctionsDAYMONTHYEARDAYINDEXRecursionFactorialObject-Oriented
ProgrammingConstructorsPUBLIC & PRIVATEInheritence & PolymorphismOOP - School
ExampleOOP - Shape ExampleExtra ModulesWAITTIMECLEARException
HandlingTRY...CATCHDemo ProgramsLinear SearchBubble SortRock, Paper,
ScissorsQuizTraffic LightsDigital Clock
Welcome Guide
 * Basic
 * Welcome Guide🗑️
 * Primitive Data Types🗑️
 * Arithmetic Operators🗑️
 * Logical Operators🗑️
 * CONSTANTs🗑️
 * OUTPUT🗑️
 * INPUT🗑️
 * Selection
 * IF...ELSE🗑️
 * CASE🗑️
 * Iteration
 * FOR Loops🗑️
 * WHILE Loops🗑️
 * REPEAT...UNTIL Loops🗑️
 * Modules
 * FUNCTIONs🗑️
 * FUNCTION - RETURNS ARRAY🗑️
 * PROCEDUREs🗑️
 * BYVAL vs BYREF - Simple🗑️
 * BYVAL vs BYREF - Arrays🗑️
 * Composite Data Types
 * ARRAYs🗑️
 * Records🗑️
 * ENUMs🗑️
 * SETs🗑️
 * Files
 * OPENFILE modes🗑️
 * WRITEFILE🗑️
 * READFILE🗑️
 * EOF🗑️
 * APPENDFILE🗑️
 * RANDOM Files🗑️
 * String Functions
 * LEFT🗑️
 * RIGHT🗑️
 * MID🗑️
 * SUBSTRING🗑️
 * LENGTH🗑️
 * LCASE🗑️
 * UCASE🗑️
 * TO_UPPER🗑️
 * TO_LOWER🗑️
 * NUM_TO_STR🗑️
 * STR_TO_NUM🗑️
 * IS_NUM🗑️
 * ASC🗑️
 * CHR🗑️
 * Numeric Functions
 * INT🗑️
 * RAND🗑️
 * ROUND🗑️
 * Date Functions
 * DAY🗑️
 * MONTH🗑️
 * YEAR🗑️
 * DAYINDEX🗑️
 * Recursion
 * Factorial🗑️
 * Object-Oriented Programming
 * Constructors🗑️
 * PUBLIC & PRIVATE🗑️
 * Inheritence & Polymorphism🗑️
 * OOP - School Example🗑️
 * OOP - Shape Example🗑️
 * Extra Modules
 * WAIT🗑️
 * TIME🗑️
 * CLEAR🗑️
 * Exception Handling
 * TRY...CATCH🗑️
 * Demo Programs
 * Linear Search🗑️
 * Bubble Sort🗑️
 * Rock, Paper, Scissors🗑️
 * Quiz🗑️
 * Traffic Lights🗑️
 * Digital Clock🗑️




PROGRAMS

Choose from a number of pre-made programs or create your own

Modifying a pre-made program will automatically create a new program, ensuring
the original & modified version are available


AUTOFORMAT CODE

Toggle original/formatted code

Formatted code will insert new lines, indentation and apply consistent styling
rules

Note: you can even try writing your entire program on one line...and it should
still run and be formatted correctly :)


LOADING

Load a previously-saved pseudocode file (.pseudo default extension)


DOWNLOAD

Download a .pseudo file for future use

Note: programs will be saved periodically (every 10 seconds) to your browser's
storage if changes are made - this means you can access your programs across
multiple tabs


UPLOAD

Save your program for public-viewing by anyone


SHARING

Share a direct link containing your code - your code will be contained in the
URL and NOT stored on the server

Alternatively, you can select the upload option to upload your code publicly to
the server


FULLSCREEN

Toggle between regular and fullscreen mode

Note: pressing FN/F11/ESC keys isn't recommended, since they can't be detected
by us, hence we can't apply the desired styles. Hence why this toggle button
exists. Alternatively, CTRL + M (minimise <-> maximise) will also work

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36

37
38
39
40
41
42
43
44
45
46
47
48

DECLARE siteName : STRING
DECLARE birthday : DATE
birthday <-- "01/05/2023"

CONSTANT greetingEmoji = "🎉"

TYPE Syllabus
    DECLARE board, code, guide : STRING
ENDTYPE

DECLARE thisSyllabus : Syllabus
thisSyllabus.board <-- "Cambridge"
thisSyllabus.code <-- "0478/9618"
thisSyllabus.guide <-- "9618"

siteName <-- "PseudocodePro"

DECLARE codeFeatures : ARRAY[1:12] OF STRING
codeFeatures[1] <-- "📦 Variables & Constants"
codeFeatures[2] <-- "➕ Arithmetic & Logical Operators"
codeFeatures[3] <-- "📥📤 INPUT & OUTPUT"
codeFeatures[4] <-- "❓❌ IF/ELSE & CASE"
codeFeatures[5] <-- "🔁 FOR/WHILE/REPEAT...UNTIL Loops"
codeFeatures[6] <-- "🔧 FUNCTIONS & PROCEDURES"
codeFeatures[7] <-- "🔢 BYVAL & BYREF"
codeFeatures[8] <-- "🔢 ARRAYs"
codeFeatures[9] <-- "📒 TYPEs (Records & Enums)"
codeFeatures[10] <-- "📄 File Handling (Text & RANDOM)"
codeFeatures[11] <-- "🧩 Object-Oriented Programming"
codeFeatures[12] <-- "🪣 Sets"

DECLARE siteFeatures : ARRAY[1:9] OF STRING
siteFeatures <-- [
"🌟 Code-suggestions/auto-complete",
"🌈 Syntax Highlighting",
"🥇 Interesting practice activities of various difficulties (will 
eventually have 500+ total)",
"🚩 Error messages & positions",
"💾 Loading/saving/sharing programs",
"✨ Pretty-printing",
"⌨️ Keyboard shortcuts",
"🎨 Changing appearance - font size, theme, layout etc",
"📺 Fullscreen & 📱 mobile support"
]

TYPE ASCII_Art_Char
    DECLARE P, S, E, U, O, D, C, R : ARRAY[1:5] OF STRING
ENDTYPE














Welcome to PseudocodePro Write, run and test your pseudocode solutions using the
Cambridge IGCSE & A-Level syntax. Supported syllabus features: 📦 Variables &
Constants ➕ Arithmetic & Logical Operators 📥📤 INPUT & OUTPUT ❓❌ IF/ELSE & CASE
🔁 FOR/WHILE/REPEAT...UNTIL Loops 🔧 FUNCTIONS & PROCEDURES 🔢 BYVAL & BYREF 🔢
ARRAYs 📒 TYPEs (Records & Enums) 📄 File Handling (Text & RANDOM) 🧩
Object-Oriented Programming 🪣 Sets --- Website Features --- 🌟
Code-suggestions/auto-complete 🌈 Syntax Highlighting 🚩 Error messages &
positions 💾 Loading/saving/sharing/uploading programs 🥇 Interesting practice
activities of various difficulties (updated daily and will have 500+ total) ✨
Pretty-printing ⌨️ Keyboard shortcuts 🎨 Changing appearance - font size, theme,
layout etc 📺 Fullscreen & 📱 mobile support I hope you enjoy and find use for
this website. Note that for schools or individuals who wish too, an ad-free,
desktop version of the site with all challenges available can be purchased for
$2 to support hosting/domain costs. If you find this site useful, it would also
be appreciated if you shared it with your classmates/colleagues :) For any
additional comments/suggestions, please get in touch via the contact page

--- File Contents --- You can manually create a file using the "new file"
button, or create a file in your programs using a combination of the OPENFILE
and WRITEFILE operations You can also open files in new tabs, download or delete
them too
Delete All Load Files
New File


PSEUDOCODE

PRO

Theme Dark Glass
Glass
 * Dark
 * Glass

Checks


ERROR CHECKS

The site aims to enforce the statically-typed nature of pseudocode - i.e.
assigning a STRING to an INTEGER variable should be forbidden. Some combinations
are allowed, however - such as assigning a CHAR to a STRING or an INTEGER to a
REAL. Other additional checks to ensure valid pseudocode are also in place

The site has been well-tested and there aren't any bugs we are aware of,
however, if you believe the site is incorrectly giving you an error & preventing
your code from running, you can disable the error-checking

In such cases, please feel free to contact us

Note that it is not possible to disable fatal error messages such as syntax
errors, runtime errors etc

Hints


SUBROUTINE SIGNATURE HINTS

If enabled, the following information will be shown:

 * Keyword/Identifier/Module Name Suggestions
 * Subroutine parameters & types
 * Return types
 * Subroutine descriptions
 * Examples

Font Size:
Max Execution Time:


MAX EXECUTION TIME

To prevent infinite loops resulting in the page becoming unresponsive, code will
automatically terminate if this value (in seconds) is exceeded

If you have a legitimate long-running program, you can obviously set this to a
high value - alternatively, setting to -1 will disable this check

Syllabus Cambridge 9618/0478
Cambridge 9618/0478
 * Cambridge 9618/0478

Pseudocode Guide Report Bugs
YouTube Tutorials
{"0":"Algorithms","1":"Selection","2":"Iteration","3":"Arrays","4":"Records","5":"ENUMs","6":"Custom
Modules","7":"Files","8":"Object-Oriented Programming","9":"Abstract Data
Types","10":"Sets","11":"Pointers","12":"Recursion","13":"Exam
Questions","14":"Games","15":"Mathematics","16":"Art","17":"Utilities","18":"Other"}


WELCOME TO PSEUDOCODE PRO

This site was developed to solve the problems of students either being
completely stuck with pseudocode, or attempting a solution, but having no way of
actually validating if it would work (other than a manual trace table). This
site currently supports the entire Cambridge IGCSE (0478) and 9618 A-Level
pseudocode specifications from the guide/syllabus, with the exception of
pointers, which should be implemented in the future

Below are lists of both the currently support pseudocode and general website
features:

 * 📦 Variables & Constants
 * ➕ Arithmetic & Logical Operators
 * 📥📤 INPUT & OUTPUT
 * ❓❌ IF/ELSE & CASE
 * 🔁 FOR/WHILE/REPEAT...UNTIL Loops
 * 🔧 FUNCTIONS & PROCEDURES
 * 🔢 BYVAL & BYREF
 * 🔢 ARRAYs
 * 📒 TYPEs (Records & Enums)
 * 📄 File Handling (Text & RANDOM)
 * 🧩 Object-Oriented Programming
 * 🪣 Sets

 * 🌟 Code-suggestions/auto-complete
 * 🌈 Syntax Highlighting
 * 🚩 Error messages & positions
 * 💾 Loading/saving/sharing/uploading programs
 * 🥇 Interesting practice activities of various difficulties (updated daily and
   will have 500+ total)
 * ✨ Pretty-printing
 * ⌨️ Keyboard shortcuts
 * 🎨 Changing appearance - font size, theme, layout etc
 * 📺 Fullscreen & 📱 mobile support

64 demo programs from 14 categories are provided below for all of the pseudocode
features. You can click on them to load them into the editor, or simply use the
select box, arrow buttons or CTRL + LEFT/RIGHT arrow keyboard shortcut to change
program

Basic

Welcome Guide

Primitive Data Types

Arithmetic Operators

Logical Operators

CONSTANTs

OUTPUT

INPUT

Selection

IF...ELSE

CASE

Iteration

FOR Loops

WHILE Loops

REPEAT...UNTIL Loops

Modules

FUNCTIONs

FUNCTION - RETURNS ARRAY

PROCEDUREs

BYVAL vs BYREF - Simple

BYVAL vs BYREF - Arrays

Composite Data Types

ARRAYs

Records

ENUMs

SETs

Files

OPENFILE modes

WRITEFILE

READFILE

EOF

APPENDFILE

RANDOM Files

String Functions

LEFT

RIGHT

MID

SUBSTRING

LENGTH

LCASE

UCASE

TO_UPPER

TO_LOWER

NUM_TO_STR

STR_TO_NUM

IS_NUM

ASC

CHR

Numeric Functions

INT

RAND

ROUND

Date Functions

DAY

MONTH

YEAR

DAYINDEX

Recursion

Factorial

Object-Oriented Programming

Constructors

PUBLIC & PRIVATE

Inheritence & Polymorphism

OOP - School Example

OOP - Shape Example

Extra Modules

WAIT

TIME

CLEAR

Exception Handling

TRY...CATCH

Demo Programs

Linear Search

Bubble Sort

Rock, Paper, Scissors

Quiz

Traffic Lights

Digital Clock

Additional programs uploaded by the community can be found on the search page.

While you are here, why not try one of the many - and ever increasing list of -
pseudocode coding challenges.

To support hosting & domain costs, for $2, a premium account can be purchased -
this has the following benefits:

 * No ads
 * A desktop version of the site which will load instantly & work offline
 * Additional coding challenges (I will create 2 per day, will have 500 in total
   eventually)
 * License will be valid for Assembly Code Pro too

Those last 2 features are currently in progress, so an extra 3 months free will
be given to anyone who buys a license now to acknowledge this

For any issues, feature requests, comments etc, you can contact me


THANKS FOR USING THE SITE - I HOPE YOU ENJOY IT AND IF YOU DO, IT WOULD MEAN A
LOT IF YOU COULD SHARE IT WITH YOUR FRIENDS TOO :)


DRAG & DROP CODE OR DATA FILES HERE




🎉 WELCOME TO PSEUDOCODE.PRO

Important: removing ads & downloading the site as a desktop & mobile app now
available. Will make loading extremely fast and will work offline too. Directly
assigning arrays like a <-- [1,2,3], sets and try...catch exceptions are now
possible too. New features & improvements will be added weekly. Please let me
know if you have any questions, find any bugs or have any feature suggestions.
You may also be interested in a similar site to allow you to execute Cambridge
assembly asmcode.pro
×



📚 Getting Started

Hopefully the site is fairly intuitive with simple 🟢 DEMO PROGRAMS 🟢 for each
feature

After choosing an option, you will also be able to see some instructions in the
output window

...but first, would you like to see the site's name in colour (y/n)?

💡[if choosing 'y' you will have to drag the output window wider to see it
properly]


Ok Stop