Sunteți pe pagina 1din 11

Universidad los Ángeles de Chimbote

Facultad de Ingeniería
Escuela Profesional de Ingeniería de Sistemas Asignatura: Fundamentos de Programación

FUNDAMENTOS BÁSICOS DE ALGORITMOS

Una computadora no tiene capacidad para solucionar problemas más que cuando se le
proporcionan los pasos sucesivos a realizar, para ello elaboramos un algoritmo.

¿Qué es un algoritmo?
Es un método para resolver un problema mediante una secuencia de instrucciones, cada una de
las cuales especifica las operaciones que debe realizar la computadora.

Características de un algoritmo
Las características fundamentales que debe cumplir todo algoritmo son:

 Debe ser preciso e indicar el orden de realización de cada paso.


 Debe estar definido. Si se sigue un algoritmo dos o más veces, con los mismos valores
iniciales se debe obtener el mismo resultado.
 Debe ser finito. Si se sigue un algoritmo, se debe terminar en algún momento, es decir,
debe tener un número finito de pasos.

También hay que tener en cuenta en un algoritmo:

 El algoritmo sirve de base para generar un programa, pero no es el programa en sí.


 El algoritmo no es inteligible directamente por el ordenador.
 El mismo algoritmo puede ser implementado de forma distinta en diversos programas, es
decir, dos programadores pueden obtener distintos códigos fuente a partir del mismo
algoritmo.

El proceso de un algoritmo
La definición de un algoritmo debe describir tres partes: Entrada, proceso y salida.

Entrada Salida
Proceso

La información proporcionada al algoritmo constituye su entrada, el procedimiento para la


solución del problema constituye su proceso y la información producida por el algoritmo
constituye su salida.

A continuación ejemplos para un mejor entendimiento:

Ejemplo 01:
Leer la base y altura de un paralelogramo. Calcular su área.

Datos de Entrada ---> base y altura


Proceso ---> área = base x altura
Datos de Salida ---> El área del paralelogramo

1
Universidad los Ángeles de Chimbote
Facultad de Ingeniería
Escuela Profesional de Ingeniería de Sistemas Asignatura: Fundamentos de Programación

Ejemplo 02:
Leer el radio de una circunferencia. Calcular su área y longitud.

Datos de Entrada ---> Radio de una circunferencia.


Proceso ---> Área = ¶r2 y Longitud = 2¶r
Datos de Salida ---> El área y longitud de una circunferencia.

Verificación del algoritmo o prueba de escritorio


Una vez escrito el algoritmo es necesario asegurarse de que éste realiza las tareas para las que
ha sido diseñado, y que por lo tanto produce el resultado correcto y esperado.

El modo más normal de comprobar un algoritmo es mediante su ejecución manual usando datos
significativos que abarquen todo el posible rango de valores y anotando en una hoja de papel los
valores que van tomando en las diferentes fases, los datos de entrada o auxiliares y, por último los
valores de los resultados. Este proceso se conoce como prueba del algoritmo o prueba de
escritorio.

Haremos una prueba de escritorio de los dos problemas anteriores:

Elementos Ejercicio 01 Ejercicio 02


Datos de entrada ● r (radio) = 3 ● Base = 5
● ¶ (pi) = 3.14 (Solo tomaremos hasta ● Altura = 3
dos decimales)
Proceso ● A = ¶ r2 = 3.14 x (3)2 ● A = base x altura
● L = 2¶r = 2 x 3.14 x 3 A=5x3

Datos de salida ● A = 28.26 ● A = 15


● L = 18.84

Elementos básicos de un algoritmo

Los elementos básicos que forman parte esencial o fundamental de un algoritmo o programa son:

 Palabras reservadas.
 Identificadores.
 Variables.
 Constantes.
 Instrucciones.

Palabras reservadas
Palabras utilizadas por los algoritmos o lenguajes de programación para representar sentencias,
órdenes, etc.

Ejemplos:
● inicio. ● si–entonces-sino.
● Fin. ● mientras.
● hacer. ● desde.

2
Universidad los Ángeles de Chimbote
Facultad de Ingeniería
Escuela Profesional de Ingeniería de Sistemas Asignatura: Fundamentos de Programación

Identificadores
Son nombres usados para identificar a los objetos y demás elementos de un programa: variables,
constantes, operadores, funciones, procedimientos, etc. Existen reglas para construir
identificadores validos y son los siguientes:

● El primer carácter debe ser una letra o el carácter subrayado bajo.


● Los caracteres siguientes pueden ser letras, números o símbolos de subrayado bajo.
● Las letras mayúsculas y las letras minúsculas se tratan como distintas. Así suma, Suma y
SUMA son tres identificadores distintos.
● No pueden ser iguales a ninguna palabra reservada.

Variables
Una variable es un objeto a quien se le asigna un valor y cuyo valor puede cambiar durante el
desarrollo del algoritmo o ejecución del programa. Si una variable está compuesto por dos
palabras, éstas pueden ser juntas o unidos por el subrayado bajo, guión bajo o subguión ‘ _ ’ .

Nota:
No se deben utilizar como nombres de variables (identificadores) palabras reservadas del
algoritmo o del lenguaje de programación.

Ejemplos:
● Nota ● Apellido_paterno ● precios
● Nombre ● apellido_materno ● hora
● Apellidos ● Nota1 ● prom
● nota_oral ● Contador1 ● pi

Los nombres de las variables elegidas deben ser significativos y tener relación con el objeto que
representan, como pueden ser los casos siguientes:

nombre para representar nombres de personas.


precios para representar los precios de diferentes artículos.
notas para representar las notas de una clase.

A continuación se muestra como ejemplos los nombres de variables no adecuados porque


tienen otro significado a lo expresado:

azucar para representar la nota de una clase.


pan para representar la edad de una persona.

Constantes
Una constante toma o recibe un valor que no cambia durante el desarrollo del algoritmo o la
ejecución del programa.

Instrucciones
Las instrucciones especifican las operaciones o acciones que deben ser realizadas o ejecutadas.

3
Universidad los Ángeles de Chimbote
Facultad de Ingeniería
Escuela Profesional de Ingeniería de Sistemas Asignatura: Fundamentos de Programación

Expresiones
Son combinaciones de constantes, variables, símbolos de operación, paréntesis y nombres de
funciones especiales, que cumplen determinadas reglas.

Ejemplos:
 a+(b*3)/c
 5 * a * b / ( c + d)

1. EXPRESIONES ARITMÉTICAS
Son análogas a las formulas matemáticas. Las variables y constantes son numéricas (real o
entera) y las operaciones son las aritméticas.

Operadores Aritméticos
Significado Operador Algebraico Operador Algoritmico
Suma + +
Resta - -
Multiplicación x *
División real / /
División entera / div
Exponenciación -,**,^
Modulo (resto o mod
residuo)
Tabla 1: Operadores Aritméticos

A continuación se mostrarán las equivalencias que debe conocer entre expresiones algebraicas y
expresiones aritméticas.

Ejemplos:

Representación Algebraica Representación Algorítmica


12 + 19 12 + 19
a–b a-b
5x7 5*7
6 +c (6 / 4) + c
4
37 3^7

Reglas de prioridad
Las expresiones que tienen dos o más operandos en una expresión se evalúan, en general, según
el siguiente orden.

1. Las operaciones que están encerradas entre paréntesis se evalúan primero. Si existen
diferentes paréntesis anidados (internos unos a otros), las expresiones más internas se
evalúan primero.
2. Las operaciones aritméticas dentro de una expresión suelen seguir el siguiente orden de
prioridad.

a. Operador exponencial (^,↑ o bien **)


b. Operadores *, /, \
c. Operadores div y mod
d. Operadores + , -

4
Universidad los Ángeles de Chimbote
Facultad de Ingeniería
Escuela Profesional de Ingeniería de Sistemas Asignatura: Fundamentos de Programación

Nota:
En caso coincidir varios operadores de igual prioridad en una expresión o subexpresión encerrada
entre paréntesis, el orden de prioridad en este caso es de izquierda a derecha.

Ejemplo 1. ¿Cuál es el resultado de las siguientes expresiones?

a) 15 + 9 * 2 – 6 * 2 ^ 2
b) -8 / 4 * 6 + 3 ^ 2 * (10 / 5)

Nota: Hacer uso de un tiempo de 5 minutos para resolver el inciso a) y b) del ejemplo 1.
Terminado de hacerlo revizar sus respuestas con la solución que a continuación se
presenta.

Solución:

a) 15 + 9 * 2 – 6 * 2 ^ 2 b) -8 / 4 * 6 + 3 ^ 2 * (10 / 5)

15 + 9 * 2 – 6 * 4 -8 / 4 * 6 + 3 ^ 2 * 2

15 + 18 - 24 =9 -8 / 4 * 6 + 9 * 2

-2 * 6 + 18 = 6

Ejemplo 2. Convertir en expresiones aritméticas algorítmicas las siguientes expresiones:

a) 7(a+b)
b) 8x + 9y + 3z
c) a2 + 2a – 3
d) x2 – y2
e) p+q
r+s
t
f) a (cd)
b

Nota: Hacer uso de un tiempo de 5 minutos para resolver los incisos del a) al f) del ejemplo
2. Terminado de hacerlo revizar sus respuestas con la solución que a continuación se
presenta.

Solución:

a) 7(a+b) 7 * (a + b)
b) 8x + 9y + 3z 8*x+9*y+3*z
c) a2 + 2a – 3 a^2+2*a-3
d) x2 – y2 x^2–y^2
e) p+q (p + q) / (r + s / t)
r+s
t
f) a (cd) a/b*c*d
b

División entera (div)


Es la acción de dividir dos números enteros uno viene hacer el dividendo y el otro el divisor, el
resultado del operador div es el valor del cociente. En esta división no es de mucha importancia el
residuo. Recuerden que para utilizar el div solo se aplica a divisiones de números enteros, veamos

5
Universidad los Ángeles de Chimbote
Facultad de Ingeniería
Escuela Profesional de Ingeniería de Sistemas Asignatura: Fundamentos de Programación

el siguiente ejemplo:

Ejemplo: 9 div 2 = 4

Dividendo Divisor
9 2
8 4
1
Residuo Cociente
Ejemplos:
a. 15 div 6 = 2 b. 14 div 2 = 7 c. 0 div 3 = 0
d. 7 div 9 = 0 e. 3 div 3 = 1 f. 2 div 5 = 0

Reglas de la división real y entera:


Los operandos pueden ser enteros(E) o reales(R).

División real División entera


Entero E/E=R E div E = E
E/R=R E div R = No Válido
R/E=R resultados R div E = No Válido
Real R/R=R R div R = No Válido

operandos

Residuo (mod)
El operador mod se utiliza para obtener el residuo o resto de una división entera. Igual que para el
operador div, para poder hallar el residuo de una división utilizando el operador mod, los
operandos deben ser exclusivamente enteros.
Reglas del residuo:
Residuo
E mod E = E
E mod R = No Válido
R mod E = No Válido
R mod R = No Válido

Ejemplos:
a. 15 mod 6 = 3 b. 14 mod 2 = 0 c. 19 mod 3 = 1
d. 7 mod 9 = 7 e. 3 mod 3 = 0 f. 2 mod 5 = 2

2. EXPRESIONES LÓGICAS
Una expresión lógica es una expresión que solo puede tomar dos valores: verdad y falso. Las
expresiones lógicas se forman combinando constantes lógicas, variables lógicas y otras
expresiones lógicas, utilizando los operadores relacionales (de relación o comparación) y los
operadores lógicos not, and y or.

Operadores de relación
Permiten realizar comparaciones de valores de tipo numérico o carácter. Los operadores de
relación sirven para expresar las condiciones en los algoritmos. El resultado de las operaciones de
comparación será verdadero o falso.

6
Universidad los Ángeles de Chimbote
Facultad de Ingeniería
Escuela Profesional de Ingeniería de Sistemas Asignatura: Fundamentos de Programación

Operadores de Relación
Significado Operador Algebraico Operador Algoritmico
Menor que > <
Mayor que < >
Igual que = =
Menor o igual que ≤ <=
Mayor o igual que ≥ >=
Distinto de o ≠ <>
Diferente de
Tabla 2: Operadores de Relación

Ejemplos:
Si P = 7 * 2 y Q = 3 ^ 2

Expresión Lógica Resultado


P>Q Verdad
P<Q Falso
P <> Q Verdad
(P-3) = (Q+2) Verdad
15 < 14 Falso
4+6=9 Falso

Para realizar comparaciones de datos tipo carácter, se requiere una secuencia de ordenación de
los caracteres, similar al orden creciente o decreciente. Esta ordenación suele ser alfabética, tanto
mayúsculas como minúsculas, y numérica, considerándolas de modo independiente.

A continuación se mostrarán los caracteres situados en el código ASCII en orden creciente:

 Los caracteres que representan a los digitos.


’0’ <’1’ , ’1’ < ’2’ , ………………, ’8’ < ’9’

 Las letras mayúsculas A a Z siguen el orden alfabético.


’A’ < ’B’ , ’B’ < ’C’ , ………………..., ’Y’ < ’Z’

 Las letras minúsculas, siguen el mismo criterio alfabético.


’a’ < ’b’ , ’b’ < ’c’ , ………………….., ’y’ < ’z’

Nota
Para tener completa seguridad en la ordenación de los caracteres, será preciso consultar el
código de caracteres de su computadora, normalmente el ASCII (American Standar Code for
Information Interchange) o bien el EBCDIC (Extended Binary-Coded Decimal Interchange Code)
utilizado en computadras IBM diferentes a los modelos PC y PS/2.

Operadores lógicos
Los operadores lógicos o voléanos son not (no), and (y) y or(o). Las definiciones de las
operaciones no, y, o se resumen en unas tablas conocidas como las tablas de la verdad.

Operador Lógico Expresión Lógica Significado


no (not) no P negación de P
y (and) PyQ conjunción de P y Q
o (or) PoQ disyunción de P o Q
Tabla 3: Operadores Lógicos

7
Universidad los Ángeles de Chimbote
Facultad de Ingeniería
Escuela Profesional de Ingeniería de Sistemas Asignatura: Fundamentos de Programación

Las tablas de la verdad son las siguientes:

 Operador ‘No’  Operador ‘Y’  Operador ‘O’

P no P P Q PYQ P Q POQ
V F V V V V V V
F V V F F V F V
F V F F V V
F F F F F F

Nota:
Siendo P y Q expresiones booleanas, V valor verdadero, F valor falso.
Negación = not
Disyunción = and
Conjunción = or

Ejemplos:
● (7 < 12) y (9 < 21) verdad
● (9 > 15) y (3 < 4) falso
● (6 = 41) o (13 > 8) verdad
● (16 > 8) o (2 > 5) verdad
● no (18 > 6) falso

Funciones internas
Las operaciones que se requieren en los programas exigen en numerosas ocasiones, además de
las operaciones aritméticas básicas, ya tratadas, un número determinado de operadores
especiales que se denominan funciones internas, incorporadas o estándar.

Por ejemplo, la función raiz2 calcula la raíz cuadrada de un número positivo, la función abs
devuelve el valor absoluto de un número, la función cuadrado devuelve el valor de un número
elevado al cuadrado. Existen otras funciones que se utilizan para determinar las funciones
trigonométricas.

La siguiente tabla recoge las funciones internas más usuales en algoritmos, siendo ‘x’ el
argumento de la función.

8
Universidad los Ángeles de Chimbote
Facultad de Ingeniería
Escuela Profesional de Ingeniería de Sistemas Asignatura: Fundamentos de Programación

Las funciones aceptan argumentos reales o enteros y sus resultados dependen de la tarea que
realice la función:

Ejemplos:

Tabla 5: Ejemplos

9
Universidad los Ángeles de Chimbote
Facultad de Ingeniería
Escuela Profesional de Ingeniería de Sistemas Asignatura: Fundamentos de Programación

Tipos de Datos
El primer objetivo de toda computadora es el manejo de la información o datos. Estos datos
pueden ser las cifras de ventas de una bodega, ticket’s para un encuentro deportivo, ingreso diario
de una empresa o las calificaciones de un salón de clase. Los algoritmos y programas
correspondientes operan sobre datos.

Los tipos de datos definen un conjunto de valores que puede almacenar una variable, junto con un
conjunto de operaciones que se pueden realizar sobre esa variable.

Los tipos de datos simples son los siguientes:

 Numéricos (enteros, reales).


 Lógicos (booleanos).
 Carácter (char, string).

Datos numéricos
El tipo numérico es el conjunto de los valores numéricos. Estos pueden representarse en dos
formas distintas:

 Tipo numérico entero (int, integer)


 Tipo numérico real (float, double)

Tipo entero
Es el subconjunto finito de los números enteros, no tienen componentes fraccionarios o decimales,
y pueden ser negativos o positivos.

Ejemplos:
6 -9
-20 11
5 19
15 -1

Tipo reales
Subconjunto de los números reales, siempre tiene un punto decimal y pueden ser positivos o
negativos. Constan de un entero y una parte decimal.
Ejemplos:
9.9 12.24
-123.11 0.89
1470.274 -0.99
54.77 3.0

Nota:
Existe un tipo de representación denominado notación exponencial o científica y que se utiliza
para números muy grandes o muy pequeños.

Ejemplo:

Dado un número cualquiera:

367520100000000000000

10
Universidad los Ángeles de Chimbote
Facultad de Ingeniería
Escuela Profesional de Ingeniería de Sistemas Asignatura: Fundamentos de Programación

se representa en notación descomponiéndolo en grupo de tres digitos:

367 520 100 000 000 000 000

y posteriormente en forma de potencias de 10, es:

3.675201 x 1020

Ejemplos:

2079546000000 = 2.079546 x 1012


8927645125 = 8.927645 x 109
0.000000032458 = 3.2458 x 10-8
0.0000000009284 = 9.284 x 10-10

Datos lógicos
Es aquel dato que solo puede tomar uno de dos valores:

cierto o verdadero (true) y falso (false)

Ejemplo:
Cuando se le pide si un valor entero es par, la respuesta será verdadera o falsa, según sea impar
o par.

Datos tipo caracter y tipo cadena


Un dato tipo caracter contiene un solo caracter y se encuentra delimitado por comilla simple.

Los caracteres que reconocen las diferentes computadoras no son estándar, sin embargo la
mayoría reconoce los siguiente caracteres alfabéticos, numéricos y especiales:

 caracteres alfabéticos : (a, b, c, ... ,z) (A, B, C, ... ,Z)


 caracteres numéricos : (1, 2, 3, ... ,9 ,0)
 caracteres especiales : (+,-,*,/,{, }, ... ;,< ,> , ...)

Una cadena (string) de caracteres es una sucesión de caracteres que se encuentran delimitados
por una comilla simple (apostrofo) o dobles comillas.
Ejemplos:

Carácter : ‘a’ ‘b’ ‘m’


‘p’ ‘q’ ‘M’
‘Z’ ‘Y’ ‘N’

Cadena : ‘Hola Perú’


‘8 de Octubre de 1879’
‘Juan Pablo II’

11

S-ar putea să vă placă și