PSeInt profile UADY
These are the rules of the UADY profile, explained simply, with an example that follows them and opens in Codoritmo with one click.
Opens this page's example with the UADY profile already switched on.
How its author describes it
The profile's original text, in Spanish, as distributed with PSeInt.
Perfil del curso de Fundamentos de Programacion para la carrera Ingenieria de Software, Ciencias de la Computacion, Ingenieria en Computacion de la Facultad de Matemáticas de la Universidad Autónoma de Yucatán (enviado por IS. Arandi López).
In short
What changes compared with Codoritmo's default profile:
- Every variable must be declared with Definir
- Every variable needs a value before it is used
- The Para counter is protected
- No accents or ñ in variable names
- Every statement must end with a semicolon
- You can assign with = as well as <-
- Arrays start at 0
- No SubProceso or Funcion of your own
All of its rules
Marked rules differ from Codoritmo's default profile; everything else behaves the same.
Variables
How they are declared and when they can be used.
- Declare variables with DefinirDiffers from default
- Required. Before using a variable you must declare it with its type, for example
Definir edad Como Entero. That includes the counter of everyPara. - Give a value before useDiffers from default
- Required. Reading a variable, or an array slot, that has no value yet stops the program with an error. That's why accumulators start with something like
suma <- 0. - Protected Para counterDiffers from default
- Inside a
Parayou can't change the counter, and once the loop ends the counter has no value, so don't use it afterwards. - Accents and ñ in namesDiffers from default
- Not allowed in variable or subroutine names: write
anioorposicion. Accented keywords such asSegúnstill work.
Writing style
Punctuation, closing words and how values are assigned.
- Semicolon at the endDiffers from default
- Required. Every statement ends in
;, as inEscribir "Hola";. Lines that open or close a structure (Si,FinSi,FinPara) don't take one. - Relaxed syntax
- Accepts handy variants:
Fin Sias two words, optionalEntoncesandHacer,Mientras QueandDesdein loops, and values inEscribirseparated by spaces. - Assign with =Differs from default
- Allowed: besides
x <- 5you can writex = 5. Inside a condition,=is still a comparison.
Operators and conditions
How comparisons are written and text is put together.
- Word operators
- You can write
Y,O,NOandMOD(and, or, not, remainder) as well as their symbols&,|,~and%. - Plain-language conditions
- Accepts conditions such as
x Es Par(is even),x Es Mayor Que 5(is greater than 5) orx Es Divisible Por 3. - Join text with +
- Allowed:
"Hola, " + nombremakes a single piece of text.
Arrays
Where indexes start and how the size is set.
- First array indexDiffers from default
- Arrays start at 0: after
Dimension notas[3]the slots arenotas[0],notas[1]andnotas[2]. - Array size from a variable
- Allowed: you can read
nand then writeDimension datos[n]. - Resize arrays
- You can change the size of an existing array with
Redimensionar.
Loops and Segun
Which ways of repeating and choosing between cases it accepts.
- Para Cada loop
- Available:
Para Cada nota de notas Hacergoes through every slot of an array. - Repetir … Mientras Que
- A
Repetirloop can end withHasta Que condition(until) orMientras Que condition(while). - Para counting down
- If the start is greater than the end,
Paracounts down one by one even withoutCon Paso -1. - Segun with whole numbers
- The value a
Segunchecks can also be text, with options such as"a".
Subroutines and text functions
Which extra tools you get to organise the program.
- Your own subroutines and functionsDiffers from default
- Not allowed: the whole program goes inside
Algoritmo … FinAlgoritmo. - Text functions
- Available:
Longitud,Subcadena,Mayusculas,MinusculasandConcatenar(length, substring, upper case, lower case, join).
An example that follows these rules
It works out the average of three marks. It's written for this profile, and the comments point out what changes compared with the default. We checked it with Codoritmo's interpreter using these same rules.
// Example written with the rules of the UADY profile// Every statement ends with a semicolon// This profile has no SubProceso or Funcion: everything goes inside AlgoritmoAlgoritmo PerfilUADY // This profile requires every variable to be declared with Definir // Variable names have no accents or ñ Definir notas, suma, i Como Entero; Definir promedio Como Real; Definir nombre Como Caracter; Dimension notas[3]; // Arrays start at 0: the slots are 0, 1 and 2 notas[0] <- 8; notas[1] <- 9; notas[2] <- 7; // Every variable needs a value before it is used // This profile also lets you assign with = suma = 0; Para i <- 0 Hasta 2 Hacer // Inside the Para you can't change i suma <- suma + notas[i]; FinPara promedio <- suma / 3; nombre <- "Ana"; Escribir "Hi, ", nombre; Escribir "Average: ", promedio; Si promedio >= 7 Y promedio <= 10 Entonces Escribir "Passed"; SiNo Escribir "Failed"; FinSi Si suma Es Par Entonces Escribir "The sum is even: ", suma; SiNo Escribir "The sum is odd: ", suma; FinSiFinAlgoritmoWhat it prints
This is the example's real output, run with the UADY profile.
Hi, Ana Average: 8 Passed The sum is even: 24
Similar profiles
These profiles differ from this one in a single rule.
- CECEYTE23 Tocumbo
There: You can write SubProceso and Funcion
- ESCRio3
There: You can write SubProceso and Funcion
- Luzac
There: You can write SubProceso and Funcion
- NesMeyTutoriales
There: You can write SubProceso and Funcion
Examples that touch these rules
They open with the default profile; switch to yours from the editor's bottom bar.
Grade Average
Stores five grades in an array and finds the average and the highest.
BeginnerCountdown
A rocket launch countdown that ticks second by second.
BeginnerCount Vowels
Counts the vowels, spaces and other characters in a text.
Intermediate