SlideShare una empresa de Scribd logo
GUIA DE ALGORITMOS

Identificadores
Los identificadores son utilizados para dar nombre a los programas, variables, subrutinas,
tipos de datos, constantes y otros elementos de un programa SL.

Existen algunas reglas a tener en cuenta en la creación de identificadores:
1. Deben comenzar con una letra o con el carácter ‘_’ (guión bajo).
2. Pueden tener hasta 32 caracteres.
3. No deben contener espacios.
4. La combinación de mayúsculas y minúsculas en los identificadores hace que los mismos
sean considerados diferentes. En otras palabras: CANTIDAD, cantidad y Cantidad
representan tres identificadores distintos.
5. Pueden incluir las letras ñ y Ñ (eñe minúscula y mayúscula respectivamente).
6. No pueden contener caracteres acentuados.
7. Pueden incluir combinaciones de letras y números y el carácter ‘_’ (guión bajo)

Así, los siguientes son identificadores válidos:
Peso, total_puntos, MAXCOLUMNAS, Resultado, mat2, var_12_meses, sgte_año

Los siguientes no son aceptables como identificadores (las explicaciones van entre
paréntesis):
2da_var (debe empezar con letra o guión bajo)
$prueba (debe empezar con letra o guión bajo)
cant alumnos (contiene un espacio)
tot-puntos (no puede contener guión)

Palabras reservadas
Las palabras utilizadas por SL para propósitos especiales son llamadas “palabras
reservadas”. Dado que las mismas tienen un significado específico para el compilador de
SL, no pueden ser utilizadas como identificadores.

Tabla 4. Palabras reservadas de SL
and                         hasta                   paso                   sino
archivo                      inicio                 subrutina               tipos
caso                         lib                    programa               var
const                       libext                  ref                    variables
constantes                  matriz                  registro               vector
desde                       mientras                repetir
eval                         not                    retorna
fin                         or                      si
Tipos de datos básicos y constantes literales

Tipo de dato básico
Cadena Cualquier secuencia de caracteres ASCII, excepto el carácter NUL (valor ASCII 0). La cadena
vacía se representa por “” y su longitud es 0.
Lógico Los valores TRUE y FALSE, o sus sinónimos SI y NO respectivamente. Estos cuatro
identificadores son constantes predefinidas.
Numérico Valores enteros y reales, con signo o sin signo.

Las cadenas de caracteres
Una cadena es una secuencia de caracteres encerrados entre comillas o apóstrofes.
Los siguientes son ejemplos de cadenas:
 “Aprendiendo a programar...”
 “Conteste con ‘si’ o ‘no’, por favor”
 ‘María dijo: “¡Buenos días!”‘

Como puede observarse, cualquier carácter puede ser incluido como parte de la cadena,
excepto el delimitador. Si por ejemplo se desea incluir una comilla en un mensaje, debe
iniciarse y finalizarse la cadena con apóstrofe, y viceversa, o utilizar ”. Las constantes de
cadena deben caber completamente en una línea. Es decir, lo siguiente no es válido
porque la comilla que cierra la cadena aparecerecién en la segunda línea:

texto = “Aprender a programar
es divertido”

Si es necesario distribuir una constante de cadena en más de una línea, puede usarse el
operador de concatenación:

texto = “Aprender a programar” +
“es divertido”

Las secuencias de escape
Las “secuencias de escape” permiten insertar en un programa fuente caracteres que, de
ser tipeados directamente, serían mal interpretados por el compilador. La siguiente tabla
resume estas secuencias y sus significados.

n Inicio de la siguiente línea
r Inicio de la línea actual
t Tabulador

Uso de variables y constantes
Un programa SL debe declarar todas sus variables antes de usarlas. Si bien la declaración
de las variables puede resultar tediosa al principio

Declaración de variables simples
Para declarar una variable, se escribe el nombre seguido de dos puntos (‘:’), seguido del
tipo de dato:
var
edad : numerico
nombre : cadena

Si varias variables corresponden al mismo tipo, se las puede declarar de la siguiente
forma:
var
tot_mensual, tot_general : numerico
nombre, apellido : cadena

Los valores por defecto
SL da automáticamente un valor inicial a las variables, dependiendo de qué tipo sean. La
siguiente tabla resume los valores iniciales:

Cadena: Cadena vacía. Es decir, SL implícitamente hace variable = “”
Lógico: Valor lógico falso. Es decir, SL implícitamente hace variable = FALSE
Numérico: Cero. Es decir, SL implícitamente hace variable = 0




Operadores y expresiones

Operadores aritméticos
+ Suma a = b + 10
- Resta a = b – 10
* Multiplicación a = b * 10
/ División. a = 1234 / 10 // producirá 123,4
            a = int (1234 / 10) // producirá 123
% Módulo. Calcula el resto de dividir el primer operando por el segundo
      a = 10 % 3 // producirá 1
      a = 10.4 % 3.01 // producirá también 1
^ Potenciación. a = 2 ^ 4 // producirá 16
      a = 2 ^ 0.5 // producirá 1.41421
- Cambio de signo a = 10; b = -a // b tendrá –10
+ Identidad de signo. El signo del operando al que se aplica queda inalterado.
      a = -10; b = +a // b tendrá –10

Operadores lógicos
and Conjunción // está a entre 1 y 100?
si ( a >= 1 and a <= 100 )
{
...
}
or Disyunción extraño = 100 > 2000 or 1 < 10
La variable “extraño”, que debió se declarada como de tipo lógico, tendrá el valor de verdad
verdadero, ya que 1 es menor que 10, a pesar de que 100 no es mayor que 2000.
not Negación extraño = not(1 < 10)
La variable “extraño”, que debió se declarada como de tipo lógico, tendrá el valor de verdad falso.
Los paréntesis no son necesarios aquí, aunque deseables por claridad.
Operadores relacionales
< Menor que a < 20
> Mayor que a > 1
<= Menor o igual que a <= 20
>= Mayor o igual que a >= 20
== Igual que a == b
<> Distinto de a <> b

Sentencia condicional (si)
si ( condicion )
{
sentencias...
sino
sentencias...
}

La cláusula sino y las sentencias correspondientes son opcionales: solo se usan cuando el
programa necesita tomar acciones si la condición es falsa.


Ciclo mientras
mientras ( condición )
{
sentencias...
}

El bucle mientras permite ejecutar un bloque de instrucciones mientras que una
expresión lógica dada se cumpla, es decir, mientras su evaluación dé como resultado
verdadero.

La expresión lógica se denomina condición y siempre se evalúa antes de ejecutar el
bloque de instrucciones. Si la condición NO se cumple, el bloque NO se ejecuta. Si la
condición SÍ se cumple, el bloque SÍ se ejecuta, después de lo cual la instrucción vuelve a
empezar, es decir, la condición se vuelve a evaluar.

En el caso en que la condición se evalúe la primera vez como falsa, el bloque de
instrucciones no será ejecutado, lo cual quiere decir que el número de repeticiones o
iteraciones de este bloque será cero. Si la condición siempre evalúa como verdadera, la
instrucción se ejecutará indefinidamente, es decir, un número infinito de veces
Ciclo repetir...hasta
repetir
sentencias...
hasta ( condicion_de_fin )

El bucle REPETIR… HASTA es similar al bucle mientras, la diferencia radica en el momento
de evaluación de la condición.
En el bucle REPETIR… HASTA la condición se evalúa después de ejecutar el bloque de
instrucciones, por lo tanto, el bloque se ejecuta por lo menos una vez. Este bloque se
ejecuta nuevamente si la condición evalúa como verdadero, y no se ejecuta más si se
evalúa como falso.

Ciclo desde
desde variable_de_control = valor_inicio hasta valor_fin [paso
incremento]
{
sentencias...
}

El bucle desde ejecuta un bloque de instrucciones un número determinado de veces. Este
número de veces está determinado por una variable controladora que toma valores desde
un valor inicial hasta un valor final.

En cada bucle después de ejecutar el bloque de instrucciones, la variable controladora es
incrementada en un valor llamado incremento automáticamente y en el momento en
que la variable sobrepasa el límite superior el bucle termina.

De la definición de bucle desde se puede inferir que el bloque de instrucciones no se
ejecuta si el límite inferior es mayor al límite superior.
Ejercicios resueltos

1. Diseñar el algoritmo correspondiente a un programa que pida por teclado dos números
enteros y muestre su suma, resta, multiplicación, división y el resto (módulo) de la
división. Si la operación no es conmutativa, también se mostrará el resultado invirtiendo
los operadores.
2. Diseñar el algoritmo correspondiente a un programa que calcule el área y el perímetro
de un triángulo rectángulo dada la base y la altura.


/* para calcular el area de un triangulo retangulo se usa la
formula (base x altura)/2, el perímetro es base + altura +
hipotenusa y la hipotenusa se calcula con raíz cuadrada de                        Hipotenusa
(base al cuadrado x altura al cuadrado)*/                        Altura

var
         base: Numérico
         altura: Numérico                                                  Base
         area: Numérico
         hipotenusa: Numérico
         perímetro: Numérico
inicio
         cls()
         imprimir (“Digite la base y la altura del triangulo”)
         Leer (base, altura)
         area = base * altura / 2
         hipotenusa = Raiz (base^2 + altura^2)
         perimetro = base + altura + hipotenusa
         imprimir (“Área = “, area)
         imprimir (“Perímetro = “, perímetro)
FIN


Ejercicios Propuestos



1. Imprimir un listado con los números del 1 al 100 cada uno con su respectivo cuadrado

2. Imprimir los números de 1 a N (siendo N un número que se lee).

3. Leer un dato y almacenarlo en la variable n. Calcular el valor de 2 elevado a la potencia
n

4. Leer un dato y almacenarlo en la variable n, leer otro dato y almacenarlo en la variable

x. Calcular el valor de x elevado a la potencia n

Más contenido relacionado

La actualidad más candente

Sesión 09 Fund Programación
Sesión 09 Fund ProgramaciónSesión 09 Fund Programación
Sesión 09 Fund Programación
Wilson Ricardo Marín Verástegui
 
Lenguajesdeprogramacion c nivel1-unidad3
Lenguajesdeprogramacion c nivel1-unidad3Lenguajesdeprogramacion c nivel1-unidad3
Lenguajesdeprogramacion c nivel1-unidad3camnav
 
183007957 estructuras repetitivas-estructurarepetitivadesdevi
183007957 estructuras repetitivas-estructurarepetitivadesdevi183007957 estructuras repetitivas-estructurarepetitivadesdevi
183007957 estructuras repetitivas-estructurarepetitivadesdevi
yaquelinpr
 
Estructuras de control de flujo
Estructuras de control de flujoEstructuras de control de flujo
Estructuras de control de flujo
AliandroMejias
 
Clase lenguaje c
Clase lenguaje c Clase lenguaje c
Clase lenguaje c
Mar15marian
 
Los 100 fuegos
Los 100 fuegosLos 100 fuegos
Los 100 fuegos
Brenda Jazmin
 
Estructura switch case
Estructura switch caseEstructura switch case
Programación de nivel básico 1 y 2. c2.
Programación de nivel básico 1 y 2. c2.Programación de nivel básico 1 y 2. c2.
Programación de nivel básico 1 y 2. c2.
DENIRAMIREZANDRADE
 
Apartes De Algoritmos
Apartes De AlgoritmosApartes De Algoritmos
Apartes De Algoritmos
j.martinez1974
 
Diagramas de flujo
Diagramas de flujoDiagramas de flujo
Diagramas de flujo
Salvador Fernández Fernández
 
Programación de nivel básico 3. c2. p2.
Programación de nivel básico 3. c2. p2.Programación de nivel básico 3. c2. p2.
Programación de nivel básico 3. c2. p2.
DENIRAMIREZANDRADE
 
Unidad 2
Unidad 2Unidad 2
Unidad 2
UTP, TA
 
ESTRUCTURA DE CONTROLYoselyn garcia trabajo
ESTRUCTURA DE CONTROLYoselyn garcia trabajoESTRUCTURA DE CONTROLYoselyn garcia trabajo
ESTRUCTURA DE CONTROLYoselyn garcia trabajo
DANNYOSE
 
4. estructuras selectivas
4. estructuras selectivas4. estructuras selectivas
4. estructuras selectivasmartell024
 
Tutorial algoritmo estructuras condicionales
Tutorial algoritmo   estructuras condicionalesTutorial algoritmo   estructuras condicionales
Tutorial algoritmo estructuras condicionalesMichele André
 

La actualidad más candente (18)

Sesión 09 Fund Programación
Sesión 09 Fund ProgramaciónSesión 09 Fund Programación
Sesión 09 Fund Programación
 
Lenguajesdeprogramacion c nivel1-unidad3
Lenguajesdeprogramacion c nivel1-unidad3Lenguajesdeprogramacion c nivel1-unidad3
Lenguajesdeprogramacion c nivel1-unidad3
 
183007957 estructuras repetitivas-estructurarepetitivadesdevi
183007957 estructuras repetitivas-estructurarepetitivadesdevi183007957 estructuras repetitivas-estructurarepetitivadesdevi
183007957 estructuras repetitivas-estructurarepetitivadesdevi
 
Estructuras de control de flujo
Estructuras de control de flujoEstructuras de control de flujo
Estructuras de control de flujo
 
Clase lenguaje c
Clase lenguaje c Clase lenguaje c
Clase lenguaje c
 
Los 100 fuegos
Los 100 fuegosLos 100 fuegos
Los 100 fuegos
 
Estructura switch case
Estructura switch caseEstructura switch case
Estructura switch case
 
Programación de nivel básico 1 y 2. c2.
Programación de nivel básico 1 y 2. c2.Programación de nivel básico 1 y 2. c2.
Programación de nivel básico 1 y 2. c2.
 
Apartes De Algoritmos
Apartes De AlgoritmosApartes De Algoritmos
Apartes De Algoritmos
 
Diagramas de flujo
Diagramas de flujoDiagramas de flujo
Diagramas de flujo
 
C facil de_v2
C facil de_v2C facil de_v2
C facil de_v2
 
Clase 6
Clase 6Clase 6
Clase 6
 
Programación de nivel básico 3. c2. p2.
Programación de nivel básico 3. c2. p2.Programación de nivel básico 3. c2. p2.
Programación de nivel básico 3. c2. p2.
 
Unidad 2
Unidad 2Unidad 2
Unidad 2
 
14 tiposdemetodos
14 tiposdemetodos14 tiposdemetodos
14 tiposdemetodos
 
ESTRUCTURA DE CONTROLYoselyn garcia trabajo
ESTRUCTURA DE CONTROLYoselyn garcia trabajoESTRUCTURA DE CONTROLYoselyn garcia trabajo
ESTRUCTURA DE CONTROLYoselyn garcia trabajo
 
4. estructuras selectivas
4. estructuras selectivas4. estructuras selectivas
4. estructuras selectivas
 
Tutorial algoritmo estructuras condicionales
Tutorial algoritmo   estructuras condicionalesTutorial algoritmo   estructuras condicionales
Tutorial algoritmo estructuras condicionales
 

Similar a Abc algoritmos

Fundamentos de programación en scilab
Fundamentos de programación en scilabFundamentos de programación en scilab
Fundamentos de programación en scilab
Gabriel Romero
 
Manual de PSeInt
Manual de PSeIntManual de PSeInt
Manual de PSeInt
Cristian C
 
Estructura sintactica de los lenguajes de programacion
Estructura sintactica de los lenguajes de programacionEstructura sintactica de los lenguajes de programacion
Estructura sintactica de los lenguajes de programacion
andreinagracielarojasadam
 
Herramientas eda capituloii
Herramientas eda capituloiiHerramientas eda capituloii
Herramientas eda capituloiiNatalia Layedra
 
Programacion matlab
Programacion matlabProgramacion matlab
Programacion matlab
Marc Llanos
 
Act. Individual.- Pseudocódigos y diagramas de flujo
 Act. Individual.- Pseudocódigos y diagramas de flujo Act. Individual.- Pseudocódigos y diagramas de flujo
Act. Individual.- Pseudocódigos y diagramas de flujoElizabeth Reyna
 
fp_p4.pdf
fp_p4.pdffp_p4.pdf
fp_p4.pdf
GarciaJag1
 
Estructuras básicas
Estructuras básicas Estructuras básicas
Estructuras básicas
valeriacaicedo7
 
Principales codigos visual basic
Principales codigos visual basicPrincipales codigos visual basic
Principales codigos visual basicMarlon Gomez Solis
 
Javacript: expresiones e instrucciones
Javacript: expresiones e instruccionesJavacript: expresiones e instrucciones
Javacript: expresiones e instrucciones
jcremiro
 
Presentación 2014 profe gabriel
Presentación 2014 profe gabrielPresentación 2014 profe gabriel
Presentación 2014 profe gabriel
Enrique Morales
 
Presentación de c #
Presentación de c #Presentación de c #
Presentación de c #
César Gimenez
 
Ambientedeprogramacinenpascal 111015091809-phpapp02
Ambientedeprogramacinenpascal 111015091809-phpapp02Ambientedeprogramacinenpascal 111015091809-phpapp02
Ambientedeprogramacinenpascal 111015091809-phpapp02kevinwm17
 

Similar a Abc algoritmos (20)

Tutorial pseudocodigo11
Tutorial pseudocodigo11Tutorial pseudocodigo11
Tutorial pseudocodigo11
 
Expocision pseudocodigo
Expocision pseudocodigoExpocision pseudocodigo
Expocision pseudocodigo
 
Fundamentos de programación en scilab
Fundamentos de programación en scilabFundamentos de programación en scilab
Fundamentos de programación en scilab
 
Manual de PSeInt
Manual de PSeIntManual de PSeInt
Manual de PSeInt
 
Estructura sintactica de los lenguajes de programacion
Estructura sintactica de los lenguajes de programacionEstructura sintactica de los lenguajes de programacion
Estructura sintactica de los lenguajes de programacion
 
Herramientas eda capituloii
Herramientas eda capituloiiHerramientas eda capituloii
Herramientas eda capituloii
 
Introduccion c
Introduccion cIntroduccion c
Introduccion c
 
Programacion matlab
Programacion matlabProgramacion matlab
Programacion matlab
 
Act. Individual.- Pseudocódigos y diagramas de flujo
 Act. Individual.- Pseudocódigos y diagramas de flujo Act. Individual.- Pseudocódigos y diagramas de flujo
Act. Individual.- Pseudocódigos y diagramas de flujo
 
fp_p4.pdf
fp_p4.pdffp_p4.pdf
fp_p4.pdf
 
Estructuras básicas
Estructuras básicas Estructuras básicas
Estructuras básicas
 
Principales codigos visual basic
Principales codigos visual basicPrincipales codigos visual basic
Principales codigos visual basic
 
Javacript: expresiones e instrucciones
Javacript: expresiones e instruccionesJavacript: expresiones e instrucciones
Javacript: expresiones e instrucciones
 
Presentación 2014 profe gabriel
Presentación 2014 profe gabrielPresentación 2014 profe gabriel
Presentación 2014 profe gabriel
 
Presentación de c #
Presentación de c #Presentación de c #
Presentación de c #
 
Ambiente de programación en pascal
Ambiente de programación en pascalAmbiente de programación en pascal
Ambiente de programación en pascal
 
Ambientedeprogramacinenpascal 111015091809-phpapp02
Ambientedeprogramacinenpascal 111015091809-phpapp02Ambientedeprogramacinenpascal 111015091809-phpapp02
Ambientedeprogramacinenpascal 111015091809-phpapp02
 
Ambiente
 Ambiente Ambiente
Ambiente
 
Ambiente de programación en pascal
Ambiente de programación en pascalAmbiente de programación en pascal
Ambiente de programación en pascal
 
Ambiente de programacin en pascal
Ambiente de programacin en pascalAmbiente de programacin en pascal
Ambiente de programacin en pascal
 

Último

c3.hu3.p3.p2.Superioridad e inferioridad en la sociedad.pptx
c3.hu3.p3.p2.Superioridad e inferioridad en la sociedad.pptxc3.hu3.p3.p2.Superioridad e inferioridad en la sociedad.pptx
c3.hu3.p3.p2.Superioridad e inferioridad en la sociedad.pptx
Martín Ramírez
 
CLASE N.1 ANÁLISIS ADMINISTRATIVO EMPRESARIAL presentación.pptx
CLASE N.1 ANÁLISIS ADMINISTRATIVO EMPRESARIAL presentación.pptxCLASE N.1 ANÁLISIS ADMINISTRATIVO EMPRESARIAL presentación.pptx
CLASE N.1 ANÁLISIS ADMINISTRATIVO EMPRESARIAL presentación.pptx
LilianaRivera778668
 
Friedrich Nietzsche. Presentación de 2 de Bachillerato.
Friedrich Nietzsche. Presentación de 2 de Bachillerato.Friedrich Nietzsche. Presentación de 2 de Bachillerato.
Friedrich Nietzsche. Presentación de 2 de Bachillerato.
pablomarin116
 
Texto_de_Aprendizaje-1ro_secundaria-2024.pdf
Texto_de_Aprendizaje-1ro_secundaria-2024.pdfTexto_de_Aprendizaje-1ro_secundaria-2024.pdf
Texto_de_Aprendizaje-1ro_secundaria-2024.pdf
ClaudiaAlcondeViadez
 
INFORME MINEDU DEL PRIMER SIMULACRO 2024.pdf
INFORME MINEDU DEL PRIMER SIMULACRO 2024.pdfINFORME MINEDU DEL PRIMER SIMULACRO 2024.pdf
INFORME MINEDU DEL PRIMER SIMULACRO 2024.pdf
Alejandrogarciapanta
 
FICHA DE EJERCICIOS GRECIA 1º DE LA ESO HISTORIA
FICHA DE EJERCICIOS GRECIA 1º DE LA ESO HISTORIAFICHA DE EJERCICIOS GRECIA 1º DE LA ESO HISTORIA
FICHA DE EJERCICIOS GRECIA 1º DE LA ESO HISTORIA
JavierMontero58
 
FORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdf
FORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdfFORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdf
FORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdf
El Fortí
 
1º GRADO CONCLUSIONES DESCRIPTIVAS PRIMARIA.docx
1º GRADO CONCLUSIONES DESCRIPTIVAS  PRIMARIA.docx1º GRADO CONCLUSIONES DESCRIPTIVAS  PRIMARIA.docx
1º GRADO CONCLUSIONES DESCRIPTIVAS PRIMARIA.docx
FelixCamachoGuzman
 
Examen Lengua y Literatura EVAU Andalucía.pdf
Examen Lengua y Literatura EVAU Andalucía.pdfExamen Lengua y Literatura EVAU Andalucía.pdf
Examen Lengua y Literatura EVAU Andalucía.pdf
20minutos
 
Junio 2024 Fotocopiables Ediba actividades
Junio 2024 Fotocopiables Ediba actividadesJunio 2024 Fotocopiables Ediba actividades
Junio 2024 Fotocopiables Ediba actividades
cintiat3400
 
3° UNIDAD 3 CUIDAMOS EL AMBIENTE RECICLANDO EN FAMILIA 933623393 PROF YESSENI...
3° UNIDAD 3 CUIDAMOS EL AMBIENTE RECICLANDO EN FAMILIA 933623393 PROF YESSENI...3° UNIDAD 3 CUIDAMOS EL AMBIENTE RECICLANDO EN FAMILIA 933623393 PROF YESSENI...
3° UNIDAD 3 CUIDAMOS EL AMBIENTE RECICLANDO EN FAMILIA 933623393 PROF YESSENI...
rosannatasaycoyactay
 
Asistencia Tecnica Cartilla Pedagogica DUA Ccesa007.pdf
Asistencia Tecnica Cartilla Pedagogica DUA Ccesa007.pdfAsistencia Tecnica Cartilla Pedagogica DUA Ccesa007.pdf
Asistencia Tecnica Cartilla Pedagogica DUA Ccesa007.pdf
Demetrio Ccesa Rayme
 
Varón de 30 años acude a consulta por presentar hipertensión arterial de reci...
Varón de 30 años acude a consulta por presentar hipertensión arterial de reci...Varón de 30 años acude a consulta por presentar hipertensión arterial de reci...
Varón de 30 años acude a consulta por presentar hipertensión arterial de reci...
HuallpaSamaniegoSeba
 
Proceso de admisiones en escuelas infantiles de Pamplona
Proceso de admisiones en escuelas infantiles de PamplonaProceso de admisiones en escuelas infantiles de Pamplona
Proceso de admisiones en escuelas infantiles de Pamplona
Edurne Navarro Bueno
 
Mauricio-Presentación-Vacacional- 2024-1
Mauricio-Presentación-Vacacional- 2024-1Mauricio-Presentación-Vacacional- 2024-1
Mauricio-Presentación-Vacacional- 2024-1
MauricioSnchez83
 
Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...
Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...
Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...
Monseespinoza6
 
Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.
Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.
Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.
20minutos
 
Semana #10-PM3 del 27 al 31 de mayo.pptx
Semana #10-PM3 del 27 al 31 de mayo.pptxSemana #10-PM3 del 27 al 31 de mayo.pptx
Semana #10-PM3 del 27 al 31 de mayo.pptx
LorenaCovarrubias12
 
Educar por Competencias GS2 Ccesa007.pdf
Educar por Competencias GS2 Ccesa007.pdfEducar por Competencias GS2 Ccesa007.pdf
Educar por Competencias GS2 Ccesa007.pdf
Demetrio Ccesa Rayme
 
Portafolio de servicios Centro de Educación Continua EPN
Portafolio de servicios Centro de Educación Continua EPNPortafolio de servicios Centro de Educación Continua EPN
Portafolio de servicios Centro de Educación Continua EPN
jmorales40
 

Último (20)

c3.hu3.p3.p2.Superioridad e inferioridad en la sociedad.pptx
c3.hu3.p3.p2.Superioridad e inferioridad en la sociedad.pptxc3.hu3.p3.p2.Superioridad e inferioridad en la sociedad.pptx
c3.hu3.p3.p2.Superioridad e inferioridad en la sociedad.pptx
 
CLASE N.1 ANÁLISIS ADMINISTRATIVO EMPRESARIAL presentación.pptx
CLASE N.1 ANÁLISIS ADMINISTRATIVO EMPRESARIAL presentación.pptxCLASE N.1 ANÁLISIS ADMINISTRATIVO EMPRESARIAL presentación.pptx
CLASE N.1 ANÁLISIS ADMINISTRATIVO EMPRESARIAL presentación.pptx
 
Friedrich Nietzsche. Presentación de 2 de Bachillerato.
Friedrich Nietzsche. Presentación de 2 de Bachillerato.Friedrich Nietzsche. Presentación de 2 de Bachillerato.
Friedrich Nietzsche. Presentación de 2 de Bachillerato.
 
Texto_de_Aprendizaje-1ro_secundaria-2024.pdf
Texto_de_Aprendizaje-1ro_secundaria-2024.pdfTexto_de_Aprendizaje-1ro_secundaria-2024.pdf
Texto_de_Aprendizaje-1ro_secundaria-2024.pdf
 
INFORME MINEDU DEL PRIMER SIMULACRO 2024.pdf
INFORME MINEDU DEL PRIMER SIMULACRO 2024.pdfINFORME MINEDU DEL PRIMER SIMULACRO 2024.pdf
INFORME MINEDU DEL PRIMER SIMULACRO 2024.pdf
 
FICHA DE EJERCICIOS GRECIA 1º DE LA ESO HISTORIA
FICHA DE EJERCICIOS GRECIA 1º DE LA ESO HISTORIAFICHA DE EJERCICIOS GRECIA 1º DE LA ESO HISTORIA
FICHA DE EJERCICIOS GRECIA 1º DE LA ESO HISTORIA
 
FORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdf
FORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdfFORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdf
FORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdf
 
1º GRADO CONCLUSIONES DESCRIPTIVAS PRIMARIA.docx
1º GRADO CONCLUSIONES DESCRIPTIVAS  PRIMARIA.docx1º GRADO CONCLUSIONES DESCRIPTIVAS  PRIMARIA.docx
1º GRADO CONCLUSIONES DESCRIPTIVAS PRIMARIA.docx
 
Examen Lengua y Literatura EVAU Andalucía.pdf
Examen Lengua y Literatura EVAU Andalucía.pdfExamen Lengua y Literatura EVAU Andalucía.pdf
Examen Lengua y Literatura EVAU Andalucía.pdf
 
Junio 2024 Fotocopiables Ediba actividades
Junio 2024 Fotocopiables Ediba actividadesJunio 2024 Fotocopiables Ediba actividades
Junio 2024 Fotocopiables Ediba actividades
 
3° UNIDAD 3 CUIDAMOS EL AMBIENTE RECICLANDO EN FAMILIA 933623393 PROF YESSENI...
3° UNIDAD 3 CUIDAMOS EL AMBIENTE RECICLANDO EN FAMILIA 933623393 PROF YESSENI...3° UNIDAD 3 CUIDAMOS EL AMBIENTE RECICLANDO EN FAMILIA 933623393 PROF YESSENI...
3° UNIDAD 3 CUIDAMOS EL AMBIENTE RECICLANDO EN FAMILIA 933623393 PROF YESSENI...
 
Asistencia Tecnica Cartilla Pedagogica DUA Ccesa007.pdf
Asistencia Tecnica Cartilla Pedagogica DUA Ccesa007.pdfAsistencia Tecnica Cartilla Pedagogica DUA Ccesa007.pdf
Asistencia Tecnica Cartilla Pedagogica DUA Ccesa007.pdf
 
Varón de 30 años acude a consulta por presentar hipertensión arterial de reci...
Varón de 30 años acude a consulta por presentar hipertensión arterial de reci...Varón de 30 años acude a consulta por presentar hipertensión arterial de reci...
Varón de 30 años acude a consulta por presentar hipertensión arterial de reci...
 
Proceso de admisiones en escuelas infantiles de Pamplona
Proceso de admisiones en escuelas infantiles de PamplonaProceso de admisiones en escuelas infantiles de Pamplona
Proceso de admisiones en escuelas infantiles de Pamplona
 
Mauricio-Presentación-Vacacional- 2024-1
Mauricio-Presentación-Vacacional- 2024-1Mauricio-Presentación-Vacacional- 2024-1
Mauricio-Presentación-Vacacional- 2024-1
 
Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...
Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...
Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...
 
Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.
Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.
Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.
 
Semana #10-PM3 del 27 al 31 de mayo.pptx
Semana #10-PM3 del 27 al 31 de mayo.pptxSemana #10-PM3 del 27 al 31 de mayo.pptx
Semana #10-PM3 del 27 al 31 de mayo.pptx
 
Educar por Competencias GS2 Ccesa007.pdf
Educar por Competencias GS2 Ccesa007.pdfEducar por Competencias GS2 Ccesa007.pdf
Educar por Competencias GS2 Ccesa007.pdf
 
Portafolio de servicios Centro de Educación Continua EPN
Portafolio de servicios Centro de Educación Continua EPNPortafolio de servicios Centro de Educación Continua EPN
Portafolio de servicios Centro de Educación Continua EPN
 

Abc algoritmos

  • 1. GUIA DE ALGORITMOS Identificadores Los identificadores son utilizados para dar nombre a los programas, variables, subrutinas, tipos de datos, constantes y otros elementos de un programa SL. Existen algunas reglas a tener en cuenta en la creación de identificadores: 1. Deben comenzar con una letra o con el carácter ‘_’ (guión bajo). 2. Pueden tener hasta 32 caracteres. 3. No deben contener espacios. 4. La combinación de mayúsculas y minúsculas en los identificadores hace que los mismos sean considerados diferentes. En otras palabras: CANTIDAD, cantidad y Cantidad representan tres identificadores distintos. 5. Pueden incluir las letras ñ y Ñ (eñe minúscula y mayúscula respectivamente). 6. No pueden contener caracteres acentuados. 7. Pueden incluir combinaciones de letras y números y el carácter ‘_’ (guión bajo) Así, los siguientes son identificadores válidos: Peso, total_puntos, MAXCOLUMNAS, Resultado, mat2, var_12_meses, sgte_año Los siguientes no son aceptables como identificadores (las explicaciones van entre paréntesis): 2da_var (debe empezar con letra o guión bajo) $prueba (debe empezar con letra o guión bajo) cant alumnos (contiene un espacio) tot-puntos (no puede contener guión) Palabras reservadas Las palabras utilizadas por SL para propósitos especiales son llamadas “palabras reservadas”. Dado que las mismas tienen un significado específico para el compilador de SL, no pueden ser utilizadas como identificadores. Tabla 4. Palabras reservadas de SL and hasta paso sino archivo inicio subrutina tipos caso lib programa var const libext ref variables constantes matriz registro vector desde mientras repetir eval not retorna fin or si
  • 2. Tipos de datos básicos y constantes literales Tipo de dato básico Cadena Cualquier secuencia de caracteres ASCII, excepto el carácter NUL (valor ASCII 0). La cadena vacía se representa por “” y su longitud es 0. Lógico Los valores TRUE y FALSE, o sus sinónimos SI y NO respectivamente. Estos cuatro identificadores son constantes predefinidas. Numérico Valores enteros y reales, con signo o sin signo. Las cadenas de caracteres Una cadena es una secuencia de caracteres encerrados entre comillas o apóstrofes. Los siguientes son ejemplos de cadenas:  “Aprendiendo a programar...”  “Conteste con ‘si’ o ‘no’, por favor”  ‘María dijo: “¡Buenos días!”‘ Como puede observarse, cualquier carácter puede ser incluido como parte de la cadena, excepto el delimitador. Si por ejemplo se desea incluir una comilla en un mensaje, debe iniciarse y finalizarse la cadena con apóstrofe, y viceversa, o utilizar ”. Las constantes de cadena deben caber completamente en una línea. Es decir, lo siguiente no es válido porque la comilla que cierra la cadena aparecerecién en la segunda línea: texto = “Aprender a programar es divertido” Si es necesario distribuir una constante de cadena en más de una línea, puede usarse el operador de concatenación: texto = “Aprender a programar” + “es divertido” Las secuencias de escape Las “secuencias de escape” permiten insertar en un programa fuente caracteres que, de ser tipeados directamente, serían mal interpretados por el compilador. La siguiente tabla resume estas secuencias y sus significados. n Inicio de la siguiente línea r Inicio de la línea actual t Tabulador Uso de variables y constantes Un programa SL debe declarar todas sus variables antes de usarlas. Si bien la declaración de las variables puede resultar tediosa al principio Declaración de variables simples Para declarar una variable, se escribe el nombre seguido de dos puntos (‘:’), seguido del tipo de dato:
  • 3. var edad : numerico nombre : cadena Si varias variables corresponden al mismo tipo, se las puede declarar de la siguiente forma: var tot_mensual, tot_general : numerico nombre, apellido : cadena Los valores por defecto SL da automáticamente un valor inicial a las variables, dependiendo de qué tipo sean. La siguiente tabla resume los valores iniciales: Cadena: Cadena vacía. Es decir, SL implícitamente hace variable = “” Lógico: Valor lógico falso. Es decir, SL implícitamente hace variable = FALSE Numérico: Cero. Es decir, SL implícitamente hace variable = 0 Operadores y expresiones Operadores aritméticos + Suma a = b + 10 - Resta a = b – 10 * Multiplicación a = b * 10 / División. a = 1234 / 10 // producirá 123,4 a = int (1234 / 10) // producirá 123 % Módulo. Calcula el resto de dividir el primer operando por el segundo a = 10 % 3 // producirá 1 a = 10.4 % 3.01 // producirá también 1 ^ Potenciación. a = 2 ^ 4 // producirá 16 a = 2 ^ 0.5 // producirá 1.41421 - Cambio de signo a = 10; b = -a // b tendrá –10 + Identidad de signo. El signo del operando al que se aplica queda inalterado. a = -10; b = +a // b tendrá –10 Operadores lógicos and Conjunción // está a entre 1 y 100? si ( a >= 1 and a <= 100 ) { ... } or Disyunción extraño = 100 > 2000 or 1 < 10 La variable “extraño”, que debió se declarada como de tipo lógico, tendrá el valor de verdad verdadero, ya que 1 es menor que 10, a pesar de que 100 no es mayor que 2000. not Negación extraño = not(1 < 10) La variable “extraño”, que debió se declarada como de tipo lógico, tendrá el valor de verdad falso. Los paréntesis no son necesarios aquí, aunque deseables por claridad.
  • 4. Operadores relacionales < Menor que a < 20 > Mayor que a > 1 <= Menor o igual que a <= 20 >= Mayor o igual que a >= 20 == Igual que a == b <> Distinto de a <> b Sentencia condicional (si) si ( condicion ) { sentencias... sino sentencias... } La cláusula sino y las sentencias correspondientes son opcionales: solo se usan cuando el programa necesita tomar acciones si la condición es falsa. Ciclo mientras mientras ( condición ) { sentencias... } El bucle mientras permite ejecutar un bloque de instrucciones mientras que una expresión lógica dada se cumpla, es decir, mientras su evaluación dé como resultado verdadero. La expresión lógica se denomina condición y siempre se evalúa antes de ejecutar el bloque de instrucciones. Si la condición NO se cumple, el bloque NO se ejecuta. Si la condición SÍ se cumple, el bloque SÍ se ejecuta, después de lo cual la instrucción vuelve a empezar, es decir, la condición se vuelve a evaluar. En el caso en que la condición se evalúe la primera vez como falsa, el bloque de instrucciones no será ejecutado, lo cual quiere decir que el número de repeticiones o iteraciones de este bloque será cero. Si la condición siempre evalúa como verdadera, la instrucción se ejecutará indefinidamente, es decir, un número infinito de veces
  • 5. Ciclo repetir...hasta repetir sentencias... hasta ( condicion_de_fin ) El bucle REPETIR… HASTA es similar al bucle mientras, la diferencia radica en el momento de evaluación de la condición. En el bucle REPETIR… HASTA la condición se evalúa después de ejecutar el bloque de instrucciones, por lo tanto, el bloque se ejecuta por lo menos una vez. Este bloque se ejecuta nuevamente si la condición evalúa como verdadero, y no se ejecuta más si se evalúa como falso. Ciclo desde desde variable_de_control = valor_inicio hasta valor_fin [paso incremento] { sentencias... } El bucle desde ejecuta un bloque de instrucciones un número determinado de veces. Este número de veces está determinado por una variable controladora que toma valores desde un valor inicial hasta un valor final. En cada bucle después de ejecutar el bloque de instrucciones, la variable controladora es incrementada en un valor llamado incremento automáticamente y en el momento en que la variable sobrepasa el límite superior el bucle termina. De la definición de bucle desde se puede inferir que el bloque de instrucciones no se ejecuta si el límite inferior es mayor al límite superior.
  • 6. Ejercicios resueltos 1. Diseñar el algoritmo correspondiente a un programa que pida por teclado dos números enteros y muestre su suma, resta, multiplicación, división y el resto (módulo) de la división. Si la operación no es conmutativa, también se mostrará el resultado invirtiendo los operadores.
  • 7. 2. Diseñar el algoritmo correspondiente a un programa que calcule el área y el perímetro de un triángulo rectángulo dada la base y la altura. /* para calcular el area de un triangulo retangulo se usa la formula (base x altura)/2, el perímetro es base + altura + hipotenusa y la hipotenusa se calcula con raíz cuadrada de Hipotenusa (base al cuadrado x altura al cuadrado)*/ Altura var base: Numérico altura: Numérico Base area: Numérico hipotenusa: Numérico perímetro: Numérico inicio cls() imprimir (“Digite la base y la altura del triangulo”) Leer (base, altura) area = base * altura / 2 hipotenusa = Raiz (base^2 + altura^2) perimetro = base + altura + hipotenusa imprimir (“Área = “, area) imprimir (“Perímetro = “, perímetro) FIN Ejercicios Propuestos 1. Imprimir un listado con los números del 1 al 100 cada uno con su respectivo cuadrado 2. Imprimir los números de 1 a N (siendo N un número que se lee). 3. Leer un dato y almacenarlo en la variable n. Calcular el valor de 2 elevado a la potencia n 4. Leer un dato y almacenarlo en la variable n, leer otro dato y almacenarlo en la variable x. Calcular el valor de x elevado a la potencia n