SlideShare una empresa de Scribd logo
1 de 71
Descargar para leer sin conexión
CONCEPTOS BÁSICOS
DE PROGRAMACIÓN
2
1.1.- Algoritmo
Concepto de algoritmo:
Sucesión explícita de reglas para resolver correctamente un problema
genérico bien definido en un número finito de pasos.
Aspectos básicos a tener presentes a la hora de redactar un algoritmo:
• Explícito: Formal y sin ambigüedades.
• Genérico: Problema cuyos datos son generales.
• Bien definido: Problema perfectamente caracterizado.
• Correcto: Que funcione en todos los casos.
• Número finito de pasos: Debe terminar.
3
Estructura de un algoritmo:
algoritmo nombre
constantes (→ valores fijos)
datos tipos (→ nuevos dominios de datos)
variables (→ datos)
cuerpo (→ instrucciones)
falgoritmo
acciones y funciones auxiliares
4
• Es una notación gráfica para implementar algoritmos.
• Se basa en la utilización de unos símbolos gráficos
denominados bloques, en los que escribimos las acciones
que tiene que realizar el algoritmo.
• Estos bloques están conectados entre sí por líneas y eso
nos indica el orden en el que tenemos que ejecutar las
acciones.
• En todo algoritmo siempre habrá un bloque de inicio y
otro de fin, para el principio y final del algoritmo.
Introducción.
DIAGRAMAS DE FLUJO
5
Líneas de flujo: Es una línea con una flecha (y solo una flecha) que permite conectar los
bloques del diagrama. La flecha indica la secuencia en la que se van a ejecutar las
acciones.
Símbolos Utilizados.
Principio y Fin: Todo algoritmo y por lo tanto, todo diagrama de flujo tiene un principio
y un fin (y son únicos). Dentro de este bloque se coloca la palabra “INICIO” o “FIN”
según corresponda.
"INICIO” o
“FIN”
Proceso: Aquí dentro se escribe la acción que debe realizar el programa. Si son varias,
se escriben una debajo de la otra, sin olvidarse que se ejecutan una a una en forma
secuencial según en qué orden fueron escritas.
Acciones
6
Condición: Dentro de este bloque se escribe una condición. Si ésta es verdadera,
entonces el algoritmo tomará una de sus salidas, de lo contrario, tomará la siguiente.
Permite representar estructuras del tipo selectivas y repetitivas.
Símbolos Utilizados.
Entrada y Salida: Representa acciones de entrada salida desde un teclado o hacia una
pantalla respectivamente. Es decir, si debemos ejecutar una acción que consiste en leer
un dato que se ingresa mediante el teclado de una PC y almacenarlo en la variable de
nombre “a”, entonces dicha acción se describe dentro de este bloque como “leer a”.
Condició
n
Verdader
a?
Leer o Escribir
Si No
7
Conectores: Permiten “unir” diagramas de flujo cuando éstos no caben en una misma
columna de la hoja por completo. Es decir, cuando debemos, por cuestiones de espacio
en la hoja, fragmentar el programa entonces utilizamos estos bloques para indicar los
puntos de unión. Cada par de puntos que se deben unir llevarán dentro de este bloque
el mismo número.
En la misma hoja: En otra hoja:
Símbolos Utilizados.
Comentarios: Es una aclaración para comprender mejor el código del programa, pero
no forma parte del código, es decir, no se ejecuta.
8
RECORDAR: CONCEPTO DE
ALGORITMO: Un algoritmo
es un conjunto de pasos o
secuencia de instrucciones
que, ejecutadas en un
determinado orden,
permiten resolver un
problema determinado.
Diagrama de Flujo Elemental.
INICIO
Declaración e
Inicialización de
Variables
Entrada de
Datos
Presentación
de Resultados
en Pantalla
Procesamiento de
Datos
FIN
Esto es un comentario.
Diagrama de Flujo Elemental.
Juan Ignacio Talpone 10
PSEUDOCÓDIGO
11
• El pseudocódigo es una manera de escribir algoritmos de forma poco
estricta (con una sintaxis relajada) o estructuras de datos poco
detalladas, pero intentando acercar las ideas del algoritmos a estructuras
y sintaxis parecidas a las de los lenguajes de alto nivel en los que vamos
a programar el algoritmo.
• Es para ser leído por personas, por tanto no se preocupa en detalles
sintácticos.
• Es un lenguaje de especificación de algoritmos, pero muy parecido a
cualquier lenguaje de programación, por lo que luego su traducción al
lenguaje de programación es muy sencillo, pero con la ventaja de que no
se rige por las normas de un lenguaje en particular. Nos centramos más
en la lógica del problema.
• El pseudocódigo también va a utilizar una serie de palabras claves o
palabras especiales que va indicando lo que significa el algoritmo.
Pseudocódigo.
12
1. INICIO y FIN: Por donde empieza y acaba el algoritmo.
2. DATOS: Aquí se declaran e inicializan las variables que utilizará el algoritmo.
3. ALGORITMO: En esta sección se escribe el algoritmo.
Pseudocódigo - Sintaxis Utilizada.
Pseudocódigo de un algoritmo genérico:
INICIO.
DATOS: ** esto es un comentario **
entero a ; ** declaración de una variable entera **
real b = 0 ; ** declaración e inicialización de una
variable **
ALGORITMO:
leer a ;
b = a + 5 ;
escribir b ;
FIN.
13
INSTRUCCIONES
El proceso de diseño del algoritmo o posteriormente de
codificación del programa consiste en definir las acciones o
instrucciones que resolverán el problema.
Las acciones o instrucciones se deben escribir y posteriormente
almacenar en memoria en el mismo orden en que han de ejecutarse,
es decir, en secuencia.
Programa lineal Programa no lineal
14
Tipos de
instrucciones
Instrucciones de
bifurcación
Instrucciones de asignación
[Modificar el contenido de los datos]
• adelante
• atrás
Instrucciones de lectura
[entrada de datos]
Instrucciones de inicio/fin
Instrucciones de escritura
[salida de datos]
15
ELEMENTOS BASICOS DE UN PROGRAMA
Los lenguajes de programación —como los restantes lenguajes— tienen
elementos básicos que se utilizan como bloques constructivos, así como reglas
para las que esos elementos se combinan. Estas reglas se denominan sintaxis del
lenguaje
16
Datos Tienen un nombre (identificador)
Los datos se deben declarar con todos estos atributos (excepto los literales).
Un dato contiene siempre un valor de su tipo.
Son de un tipo
• Simple:
entero, real, booleano, carácter
[dominio + operaciones]
• Compuesto:
tabla
[constructores + funciones de
acceso]
Pueden ser
• Constantes: valor fijo
[Literales: constantes predefinidas]
• Variables
17
Lectura de datos
Algoritmo leervariable
definir x como entero
definir n como real
leer x, n
FinAlgoritmo
CARACTERES:
Algoritmo mi_nombre
Definir nombre como Cadena;
Escribir "Ingresar el nombre ..:"
leer nombre
Imprimir "Mi nombre es:" nombre
FinAlgoritmo
18
1.2.- Variables
Definición: una variable es un dato cuyo valor puede cambiar durante la
ejecución
de un algoritmo.
Para asignar un valor a una variable se utiliza el operador de asignación “:=”.
Ejemplos: x := 3.0; y := x + 2.1; y := 3*x + 2; ... [x, y son variables]
Tipos básicos de datos son:
real 3.0, -2.1, ...
entero -3, +10, …
carácter ’a’, ’b’, ’F’, ’4’, ’.’, ...
booleano VERDADERO, FALSO
19
Definición de una variable en un algoritmo:
Algoritmo nombre_algoritmo
definir n como entero;
definir x como real;
definir c como carácter;
definir b como logico;
n=3;
x=2.3;
c='w';
b=VERDADERO;
imprimir n
imprimir x
imprimir c
imprimir b
FinAlgoritmo
20
1.3.- Constantes
Definición: una constante es un dato que representa un valor fijo de un tipo deter-
minado que no se puede modificar.
Ejemplo:
Proceso constante
definir r como real
Escribir "ingrese el valor del radio"
leer r
L=2*PI*r
Imprimir "la longitud de circunferencia es :" L
FinProceso
21
1.4.- Tipos y operaciones
Definición: conjunto de valores (dominio) y operaciones aplicables.
Tipos básicos: booleano, entero, real y carácter.
• Tipo de datos booleano: Valores: {V, F}. Operadores: y, o, no, =, 
• Tipo de datos entero:
Valores: los enteros, {-MaxEnt, ..., -3, -2, -1, 0, 1, 2, 3, ..., MaxEnt }
Operadores (binarios): +: entero + entero → entero
-: entero - entero → entero
*: entero * entero → entero
(división entera) div: entero div entero → entero
(resto) mod: entero mod entero → entero
=: entero = entero → booleano
 entero  entero → booleano
<: entero < entero → booleano
>: entero > entero → booleano
 entero  entero → booleano
 entero  entero → booleano
x div y = q y * q + r = x
x mod y = r 0  r < |y|
x y
r q
22
• Tipo de datos real.
Valores: los reales, {-MaxReal, ... , -MinReal, 0, MinReal ,…, MaxReal}
Operadores (binarios): +: real + real → real
-: real - real → real
*: real * real → real
/: real / real → real
=: real = real → booleano
 real  real → booleano
<: real < real → booleano
>: real > real → booleano
 real  real → booleano
 real  real → booleano
• Tipo de datos carácter. Valores: los caracteres,
{’?’, ’^’, ’#’, ’&’, ..., ’A’, ’B’, …, ’Z’, …,
’a’, ’b’, …, ’z’, …, ’0’, ’1’, ’2’, …, ’9’, …, ’+’, ’-’, ... }
Operadores (binarios): =,      : carácter = carácter → booleano
. . .
• Más adelante veremos algunos tipos compuestos: tablas y tuplas.
23
24
1.5.- Expresiones
Definición:
Una variable es una expresión.
Una constante es una expresión.
Si E es una expresión, (E) es una expresión.
Si E1, E2, ..., En son expresiones y f una función, f(E1, E2, ..., En) es una expresión
Los tipos de las expresiones tienen que ser coherentes.
Las prioridades de los operadores se utilizan para evaluar correctamente las
expresiones: se aplica la regla asociativa de izquierda a derecha y, en caso de duda, se
ponen paréntesis.
Operadores utilizados más frecuentemente ordenados de mayor a menor prioridad:
., [ ] (acceso a tuplas y tablas)
-, no (cambio de signo y negación lógica) [unarios]
*, /, div, mod (operadores multiplicativos)
+, - (operadores aditivos)
<, >,   =  (operadores relacionales)
y, o (y, o lógicos)
25
1.6.- Instrucciones
Lectura y Escritura
• Lectura: establece el valor de una variable a través de un dispositivo de entrada.
• Escritura: permite comunicar el valor de una expresión a través de un dispositivo
de salida.
Proceso leervariables
definir x como entero; definir n como real;
leer x, n
FinProceso
La notación anterior se puede simplificar utilizando las instrucciones leer(variable),
escribir(variable), así como instrucciones de lectura y escritura múltiple. También
se pueden escribir mensajes de texto, siempre que éstos se escriban entre comillas.
Proceso leervariables
definir x como entero; definir n como real;
escribir “Introduzca un entero, un real y un carácter:”;
leer x, n;
FinProceso
26
Asignación
variable := expresión [la variable toma el valor de la expresión]
Ejemplos. n := 1 (entero); x := 9.8 (real);
c := ’e’ (carácter); b := VERDADERO (booleano);
Notas: El tipo de la variable y el de la expresión deben de ser iguales.
El valor que tenía la variable antes de la asignación se pierde.
Las variables cuando se declaran no tienen ningún valor concreto.
Siempre que trabajemos con una variable debemos darle un valor
inicial. Este proceso se denomina “inicialización de las variables”.
Secuenciación
Cuando tengamos más de una instrucción, utilizaremos la instrucción de
secuenciación. Las distintas instrucciones se separan con el signo “ ; “.
instrucción_1; instrucción_2; ... ; instrucción_k; ... ; instrucción_n
En este caso la instrucción_k no se ejecuta hasta que termina la ejecución
de las k-1 instrucciones anteriores.
ejemplos
• Un vendedor recibe un sueldo base mas un 10% extra
por comisión de sus ventas, el vendedor desea saber
cuánto dinero obtendrá por concepto de comisiones
por las tres ventas que realiza en el mes y el total que
recibirá en el mes tomando en cuenta su sueldo base
y comisiones.
• Una tienda ofrece un descuento del 15% sobre el
total de la compra y un cliente desea saber cuánto
deberá pagar finalmente por su compra.
• Determinar el área de un triangulo cuyas
dimensiones de base y altura se ingresan por teclado
27
28
Proceso BONO
definir sueldo, venta1, venta2, venta3, total;
escribir "introduce tu sueldo"; leer sueldo;
escribir "venta N° 01";leer venta1;
escribir "venta N° 02";leer venta2;
escribir "venta N° 03";leer venta3;
total = sueldo + (venta1+venta2+venta3)*0.1;
escribir "el sueldo total es ", total;
FinProceso
EJEMPLO:
29
30
Instrucción condicional o alternativa (si … entonces … si no … fsi)
si expresión_booleana entonces
instrucciones_V [instrucciones que se ejecutan si la
expresión booleana es verdadera]
si no
instrucciones_F [instrucciones que se ejecutan si la
expresión booleana es falsa (opcional)]
fin si
Cuando hay varias condiciones se puede utilizar el siguiente esquema:
si
expresión_booleana_1 → instrucciones_1
expresión_booleana_2 → instrucciones_2
...
expresión_booleana_n → instrucciones_n
fin si
ESTRUCTURAS SELECTIVAS
31
Ejemplo. Calcular el máximo de dos números dados.
Algoritmo máximo
definir a, b como real;
leer a;
leer b;
Si a>=b Entonces
escribir "Numero Real máximo es:" a
Sino
escribir "Numero Real máximo es:" b
Fin Si
FinAlgoritmo
32
Ejemplo. Calcular el máximo de dos números teniendo en cuenta si son iguales.
Proceso maximo
Definir a,b Como Real
Leer a
Leer b
Si a>b entonces
escribir "maximo es:" a
sino
si a<b entonces
escribir "maximo es:" b
sino
escribir "son iguales"
FinSi
FinSi
FinProceso
33
Ejercicio 3. Determinar las raíces de una ecuación de segundo grado
• Las raíces de la ecuación de segundo grado ax2+bx+c=0 se obtienen mediante la fórmula x=(-b  (b2-
4ac)1/2)  2ª SOLUCION
Algoritmo cuadratica
definir a,b,c,x,x1,x2 Como Real;
escribir "Sea la ecuacion cuadratica ax2 + bx + c = 0";
escribir "ingrese valor de a"; leer a;
escribir "ingrese valor de b"; leer b;
escribir "ingrese valor de c"; leer c;
d=b^2-4*a*c;
si d<0 Entonces
escribir "error";
Sino
si d=0 Entonces
x=-b/2*a;
escribir "la raices son: x1=" x," y x2=" x;
Sino
x1=(-b+d^(0.5))/2*a;
x2=(-b-d^(0.5))/2*a;
escribir "Las raices son: x1=" x1, " y x2=" x2;
FinSi
FinSi
FinAlgoritmo
34
EJERCICIOS
1. Un hombre desea saber cuánto dinero se genera por concepto de interés sobre la
cantidad que tiene en inversión en el banco si el banco paga el 5% al mes. El decidirá
reinvertir LOS INTERÉS siempre y cuando estos excedan a S/, 600 y desea saber la
cantidad de dinero que tendrá finalmente en su cuenta.
2. Encontrar el mayor de 3 números diferentes proporcionados como datos de
entrada.
3. Intercambiar el valor de dos números enteros.
4. Realizar un programa que calcule el total a pagar según la cantidad comprada. Si la
cantidad comprada es menor a 5 se realiza un descuento del 10%, si la cantidad es
menor a 10 se realiza un descuento del 15% caso contrario no se realizara ningún
descuento.
5. Determinar un numero si es par impar entre 1 y 10 ingresado por teclado.
6. Realizar un programa que calcule el área del triángulo, cuadrado, rectángulo y
circulo
7. Realizar un programa que calcule la conversión de temperaturas de para grados
Celsius, Fahrenheit, ranking y kelvin
8. Calcular las raíces de una ecuación de segundo grado para cualquier numero Real.
9. Convertir una nota vigesimal (0-20) a una evaluación cualitativa (A,B,C,D)
35
36
CONTADORES, ACUMULADORES E INTERRUPTORES
CONTADORES
Un contador es una variable cuyo valor se incrementa o decrementa en una
cantidad constante cada vez que se produce un determinado suceso o acción. Los
contadores se utilizan en las estructuras repetitivas con la finalidad de contar
sucesos o acciones internas del bucle
37
EJEMPLO
Proceso producto
definir m, n, contador, p como enteros
leer m
leer n
p=0; contador=n
Mientras contador>0 Hacer
p=p+m
contador=contador-1
Fin Mientras
escribir "el producto es:" p
FinProceso
CONTADORES, ACUMULADORES E INTERRUPTORES
38
ACUMULADORES
Son variables cuyo valor se incrementa o decrementa en una cantidad variable.
Necesitan operaciones de:
CONTADORES, ACUMULADORES E INTERRUPTORES
INTERRUPTORES
Es una variable que puede tomar los valores VERDAD o FALSO a lo largo de la
ejecución de un programa comunicando así la información de una parte a otra
39
EJEMPLO
Proceso total
leer n
suma=0
Mientras n>0 Hacer
suma=suma+n
n=n-1
Fin Mientras
escribir "La suma es:" suma
FinProceso
CONTADORES, ACUMULADORES E INTERRUPTORES
40
Instrucción iterativa (mientras … hacer … fmientras)
mientras expresión_booleana hacer
instrucciones
fmientras
Notas:
• Mientras la expresión_booleana sea cierta, las instrucciones se ejecutan.
• Cuando la expresión_booleana deja de ser cierta entonces la instrucción
iterativa se acaba.
• Si la expresión_booleana es inicialmente falsa la instrucción iterativa no
hace nada.
• Hay que asegurarse de que las instrucciones modifiquen los valores de las
variables que forman parte de la expresión_booleana de manera que la
instrucción iterativa termine en un número finito de pasos.
ESTRUCTURAS REPETITIVAS
41
Algoritmo promedio
definir n,suma,promd Como real;
n=1;
suma=0;
mientras n<=50 hacer
suma=suma+n;
n=n+1;
FinMientras
promd=suma/50;
imprimir "El promedio de los 50 primeros nuemros es: " promd;
FinAlgoritmo
Ejemplo:
Calcular la media de 50 números e imprima su resultado
43
44
Instrucción iterativa (REPETIR … HASTA QUE)
Algoritmo sin_titulo
definir num,suma Como Entero
num=1
suma=0
Repetir
suma=suma+num
num=num+1
Hasta Que num>50
imprimir "la suma es" suma
FinAlgoritmo
45
Proceso sin_titulo
escribir "numero de notas para promedio :";
leer n;
c=0;
s=0
Repetir
escribir "ingresar nota :";
leer nota;
c=c+1;
s=s+nota;
Hasta Que c=n
promedio<-s/c;
escribir "el promedio es :", promedio;
FinProceso
46
Algoritmo contador
definir num Como Entero
c=1
Repetir
escribir “ingrese diez numeros cualesquiera”
leer num
c=c+1
Hasta Que c>10
FinAlgoritmo
47
Instrucción iterativa (para … hasta … hacer ... fpara)
para variable := valor_inicial hasta valor_final hacer
instrucciones
fpara
En la definición anterior el valor asignado inicialmente a la variable se incrementa
en una unidad en cada iteración. También se puede incluir un valor con la opción
paso que permite especificar la cantidad en la que se quiere incrementar el valor
de la variable en cada interacción.
para variable := valor_inicial hasta valor_final paso incremento hacer
instrucciones
fpara
Ejemplo. Escribir los números pares del 1 al 100.
Proceso sin_titulo
definir n Como Entero
Para n=2 hasta 100 con paso 2 Hacer
imprimir n
FinPara
FinProceso
48
Algoritmo reprobados
definir cant, nota, i, porcentaje, repro Como Real
escribir "Ingrese la cantidad de estudiantes del grado"
leer cant
Para i=1 Hasta cant Hacer
escribir " ingrese la nota del estudiantes"
leer nota
si nota<14 Entonces
repro=repro+1
FinSi
Fin Para
porcentaje= (repro/cant)*100
imprimir "El porcentaje de reprobados es: " porcentaje,"%"
FinAlgoritmo
EJEMPLO 2
Proceso producto_lista
leer n
producto=1
Para i=1 hasta n Hacer
escribir "introduzca un numero"
leer numero
producto=producto*numero
FinPara
imprimir "El producto de nuemros introducidos es " producto
FinProceso
EJEMPLO 3
Proceso factorial
Definir fact, n, i Como Entero;
Escribir "hallar el factorial de: ";
leer n;
fact<-1
Para i<-1 Hasta n Hacer
fact<-fact*i;
Fin Para
imprimir "el factorial es: ",fact
FinProceso
EJEMPLO 4
Proceso sin_titulo
cont=0
escribir "ingrese"
leer num
Para i=1 Hasta num Con Paso 1 Hacer
Si num mod i=0 Entonces
cont=cont+1
finsi
Fin Para
si cont=2 Entonces
escribir num, " si es primo"
Sino
escribir num, " no es primo"
FinSi
FinProceso
EJEMPLO 5
52
FUNCIONES (SUBPROCESOS)
53
EJEMPLO 1
SubProceso mensaje( text )
escribir text;
Fin SubProceso
Proceso texto
mensaje("¡HOLA MUNDO!")
FinProceso
SubProceso res=suma(num1,num2)
res=num1+num2;
Fin SubProceso
Proceso sumandos
escribir "el resultado es: " suma(5,3)
FinProceso
EJEMPLO 2
54
SubProceso fact = factorial( n )
leer n;
fact=1
Para i=1 Hasta n Hacer
fact=fact*i;
Fin Para
Fin SubProceso
Proceso factor
imprimir "El factorial de: " factorial(n)
FinProceso
EJEMPLO 3
55
ARRAYS Y ESTRUCTURAS
ESTRUCTURA DE DATOS I
56
57
ARRAYS(ARREGLOS) UNIDIMENSIONALES
58
59
60
61
62
Proceso asignacion
dimension A[5]
A[1]=5
A[2]=7
A[3]=8
A[4]=12
A[5]=14
imprimir A[4]
FinProceso
Algoritmo sin_titulo
dimension A[5]
para i = 1 hasta 5 hacer
A[i]=8
imprimir A[i]
FinPara
FinAlgoritmo
63
Algoritmo sin_titulo
dimension A[20]
Para i=1 hasta 20 hacer
leer A[i]
FinPara
FinAlgoritmo
Ejercicio 5. Escribir los n primeros números de la sucesión de Fibonacci.
La sucesión de Fibonacci viene definida por las siguientes reglas:
• fib[0]=0
• fib[1]=1
• fib[i]=fib[i-1]+fib[i-2], para i>1.
65
66
67
68
69
70
71
EJEMPLOS
conceptos basicos lenguajes de programacion.pdf

Más contenido relacionado

Similar a conceptos basicos lenguajes de programacion.pdf

Curso lenguaje c_segundo_modulo_
Curso lenguaje c_segundo_modulo_Curso lenguaje c_segundo_modulo_
Curso lenguaje c_segundo_modulo_Jennybeatriz1
 
Algoritmo y mas teoria logica
Algoritmo y mas teoria logicaAlgoritmo y mas teoria logica
Algoritmo y mas teoria logicasrblack13
 
Conceptos básicos sobre algortimia
Conceptos básicos sobre algortimiaConceptos básicos sobre algortimia
Conceptos básicos sobre algortimiaIEO Santo Tomás
 
1.2.3.- Pseudocódigo
1.2.3.- Pseudocódigo1.2.3.- Pseudocódigo
1.2.3.- PseudocódigoYenny Salazar
 
TUTORIAL LENGUAJE C
TUTORIAL LENGUAJE CTUTORIAL LENGUAJE C
TUTORIAL LENGUAJE CJesus Agreda
 
TUTORIAL DE LENGUAJE C
TUTORIAL DE LENGUAJE CTUTORIAL DE LENGUAJE C
TUTORIAL DE LENGUAJE CJesus Agreda
 
Entidades Primitivas Para Algoritmos
Entidades Primitivas Para AlgoritmosEntidades Primitivas Para Algoritmos
Entidades Primitivas Para AlgoritmosMary Sanchez
 
Algoritmos TECNICO EN DESARROLLO DE SOFTWARE
Algoritmos TECNICO EN DESARROLLO DE SOFTWAREAlgoritmos TECNICO EN DESARROLLO DE SOFTWARE
Algoritmos TECNICO EN DESARROLLO DE SOFTWAREPedro Alvarez
 
Fundamentos de programación en diseño web
Fundamentos de programación en diseño webFundamentos de programación en diseño web
Fundamentos de programación en diseño webDayraNieto9807
 
Fundamentos de programación en diseño web
Fundamentos de programación en diseño webFundamentos de programación en diseño web
Fundamentos de programación en diseño webkarenJulieth04
 
Conceptos basicos de programacion
Conceptos basicos de programacion Conceptos basicos de programacion
Conceptos basicos de programacion Rika Furude
 
Algoritmos y programas super manual de algoritmia
Algoritmos y programas   super manual de algoritmiaAlgoritmos y programas   super manual de algoritmia
Algoritmos y programas super manual de algoritmiaEsteban Bedoya
 
Conceptos fundmentales
Conceptos fundmentalesConceptos fundmentales
Conceptos fundmentalesalondrashare
 

Similar a conceptos basicos lenguajes de programacion.pdf (20)

Algoritmos 02
Algoritmos 02Algoritmos 02
Algoritmos 02
 
Curso lenguaje c_segundo_modulo_
Curso lenguaje c_segundo_modulo_Curso lenguaje c_segundo_modulo_
Curso lenguaje c_segundo_modulo_
 
Algoritmo y mas teoria logica
Algoritmo y mas teoria logicaAlgoritmo y mas teoria logica
Algoritmo y mas teoria logica
 
Conceptos básicos sobre algortimia
Conceptos básicos sobre algortimiaConceptos básicos sobre algortimia
Conceptos básicos sobre algortimia
 
1.2.3.- Pseudocódigo
1.2.3.- Pseudocódigo1.2.3.- Pseudocódigo
1.2.3.- Pseudocódigo
 
TUTORIAL LENGUAJE C
TUTORIAL LENGUAJE CTUTORIAL LENGUAJE C
TUTORIAL LENGUAJE C
 
TUTORIAL DE LENGUAJE C
TUTORIAL DE LENGUAJE CTUTORIAL DE LENGUAJE C
TUTORIAL DE LENGUAJE C
 
Unidad II
Unidad IIUnidad II
Unidad II
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
algoritmo
algoritmoalgoritmo
algoritmo
 
Entidades Primitivas Para Algoritmos
Entidades Primitivas Para AlgoritmosEntidades Primitivas Para Algoritmos
Entidades Primitivas Para Algoritmos
 
Algoritmos TECNICO EN DESARROLLO DE SOFTWARE
Algoritmos TECNICO EN DESARROLLO DE SOFTWAREAlgoritmos TECNICO EN DESARROLLO DE SOFTWARE
Algoritmos TECNICO EN DESARROLLO DE SOFTWARE
 
Fundamentos de programación en diseño web
Fundamentos de programación en diseño webFundamentos de programación en diseño web
Fundamentos de programación en diseño web
 
Fundamentos de programación en diseño web
Fundamentos de programación en diseño webFundamentos de programación en diseño web
Fundamentos de programación en diseño web
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Conceptos basicos de programacion
Conceptos basicos de programacion Conceptos basicos de programacion
Conceptos basicos de programacion
 
Algoritmos y programas super manual de algoritmia
Algoritmos y programas   super manual de algoritmiaAlgoritmos y programas   super manual de algoritmia
Algoritmos y programas super manual de algoritmia
 
Unidad 1.1 PROGRAMACION I
Unidad 1.1  PROGRAMACION IUnidad 1.1  PROGRAMACION I
Unidad 1.1 PROGRAMACION I
 
Algoritmos y programas ing civil
Algoritmos y programas ing civil Algoritmos y programas ing civil
Algoritmos y programas ing civil
 
Conceptos fundmentales
Conceptos fundmentalesConceptos fundmentales
Conceptos fundmentales
 

Último

Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.José Luis Palma
 
la unidad de s sesion edussssssssssssssscacio fisca
la unidad de s sesion edussssssssssssssscacio fiscala unidad de s sesion edussssssssssssssscacio fisca
la unidad de s sesion edussssssssssssssscacio fiscaeliseo91
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxlclcarmen
 
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxTIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxlclcarmen
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADOJosé Luis Palma
 
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...JAVIER SOLIS NOYOLA
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfAngélica Soledad Vega Ramírez
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMarjorie Burga
 
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dstEphaniiie
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadAlejandrino Halire Ccahuana
 
Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptxFelicitasAsuncionDia
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIACarlos Campaña Montenegro
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxAna Fernandez
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PCCesarFernandez937857
 

Último (20)

Medición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptxMedición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptx
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.
 
la unidad de s sesion edussssssssssssssscacio fisca
la unidad de s sesion edussssssssssssssscacio fiscala unidad de s sesion edussssssssssssssscacio fisca
la unidad de s sesion edussssssssssssssscacio fisca
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
 
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxTIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
 
Repaso Pruebas CRECE PR 2024. Ciencia General
Repaso Pruebas CRECE PR 2024. Ciencia GeneralRepaso Pruebas CRECE PR 2024. Ciencia General
Repaso Pruebas CRECE PR 2024. Ciencia General
 
Unidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la InvestigaciónUnidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la Investigación
 
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grande
 
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes d
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdad
 
Sesión de clase: Defendamos la verdad.pdf
Sesión de clase: Defendamos la verdad.pdfSesión de clase: Defendamos la verdad.pdf
Sesión de clase: Defendamos la verdad.pdf
 
Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptx
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docx
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PC
 

conceptos basicos lenguajes de programacion.pdf

  • 2. 2 1.1.- Algoritmo Concepto de algoritmo: Sucesión explícita de reglas para resolver correctamente un problema genérico bien definido en un número finito de pasos. Aspectos básicos a tener presentes a la hora de redactar un algoritmo: • Explícito: Formal y sin ambigüedades. • Genérico: Problema cuyos datos son generales. • Bien definido: Problema perfectamente caracterizado. • Correcto: Que funcione en todos los casos. • Número finito de pasos: Debe terminar.
  • 3. 3 Estructura de un algoritmo: algoritmo nombre constantes (→ valores fijos) datos tipos (→ nuevos dominios de datos) variables (→ datos) cuerpo (→ instrucciones) falgoritmo acciones y funciones auxiliares
  • 4. 4 • Es una notación gráfica para implementar algoritmos. • Se basa en la utilización de unos símbolos gráficos denominados bloques, en los que escribimos las acciones que tiene que realizar el algoritmo. • Estos bloques están conectados entre sí por líneas y eso nos indica el orden en el que tenemos que ejecutar las acciones. • En todo algoritmo siempre habrá un bloque de inicio y otro de fin, para el principio y final del algoritmo. Introducción. DIAGRAMAS DE FLUJO
  • 5. 5 Líneas de flujo: Es una línea con una flecha (y solo una flecha) que permite conectar los bloques del diagrama. La flecha indica la secuencia en la que se van a ejecutar las acciones. Símbolos Utilizados. Principio y Fin: Todo algoritmo y por lo tanto, todo diagrama de flujo tiene un principio y un fin (y son únicos). Dentro de este bloque se coloca la palabra “INICIO” o “FIN” según corresponda. "INICIO” o “FIN” Proceso: Aquí dentro se escribe la acción que debe realizar el programa. Si son varias, se escriben una debajo de la otra, sin olvidarse que se ejecutan una a una en forma secuencial según en qué orden fueron escritas. Acciones
  • 6. 6 Condición: Dentro de este bloque se escribe una condición. Si ésta es verdadera, entonces el algoritmo tomará una de sus salidas, de lo contrario, tomará la siguiente. Permite representar estructuras del tipo selectivas y repetitivas. Símbolos Utilizados. Entrada y Salida: Representa acciones de entrada salida desde un teclado o hacia una pantalla respectivamente. Es decir, si debemos ejecutar una acción que consiste en leer un dato que se ingresa mediante el teclado de una PC y almacenarlo en la variable de nombre “a”, entonces dicha acción se describe dentro de este bloque como “leer a”. Condició n Verdader a? Leer o Escribir Si No
  • 7. 7 Conectores: Permiten “unir” diagramas de flujo cuando éstos no caben en una misma columna de la hoja por completo. Es decir, cuando debemos, por cuestiones de espacio en la hoja, fragmentar el programa entonces utilizamos estos bloques para indicar los puntos de unión. Cada par de puntos que se deben unir llevarán dentro de este bloque el mismo número. En la misma hoja: En otra hoja: Símbolos Utilizados. Comentarios: Es una aclaración para comprender mejor el código del programa, pero no forma parte del código, es decir, no se ejecuta.
  • 8. 8 RECORDAR: CONCEPTO DE ALGORITMO: Un algoritmo es un conjunto de pasos o secuencia de instrucciones que, ejecutadas en un determinado orden, permiten resolver un problema determinado. Diagrama de Flujo Elemental. INICIO Declaración e Inicialización de Variables Entrada de Datos Presentación de Resultados en Pantalla Procesamiento de Datos FIN Esto es un comentario.
  • 9. Diagrama de Flujo Elemental.
  • 10. Juan Ignacio Talpone 10 PSEUDOCÓDIGO
  • 11. 11 • El pseudocódigo es una manera de escribir algoritmos de forma poco estricta (con una sintaxis relajada) o estructuras de datos poco detalladas, pero intentando acercar las ideas del algoritmos a estructuras y sintaxis parecidas a las de los lenguajes de alto nivel en los que vamos a programar el algoritmo. • Es para ser leído por personas, por tanto no se preocupa en detalles sintácticos. • Es un lenguaje de especificación de algoritmos, pero muy parecido a cualquier lenguaje de programación, por lo que luego su traducción al lenguaje de programación es muy sencillo, pero con la ventaja de que no se rige por las normas de un lenguaje en particular. Nos centramos más en la lógica del problema. • El pseudocódigo también va a utilizar una serie de palabras claves o palabras especiales que va indicando lo que significa el algoritmo. Pseudocódigo.
  • 12. 12 1. INICIO y FIN: Por donde empieza y acaba el algoritmo. 2. DATOS: Aquí se declaran e inicializan las variables que utilizará el algoritmo. 3. ALGORITMO: En esta sección se escribe el algoritmo. Pseudocódigo - Sintaxis Utilizada. Pseudocódigo de un algoritmo genérico: INICIO. DATOS: ** esto es un comentario ** entero a ; ** declaración de una variable entera ** real b = 0 ; ** declaración e inicialización de una variable ** ALGORITMO: leer a ; b = a + 5 ; escribir b ; FIN.
  • 13. 13 INSTRUCCIONES El proceso de diseño del algoritmo o posteriormente de codificación del programa consiste en definir las acciones o instrucciones que resolverán el problema. Las acciones o instrucciones se deben escribir y posteriormente almacenar en memoria en el mismo orden en que han de ejecutarse, es decir, en secuencia. Programa lineal Programa no lineal
  • 14. 14 Tipos de instrucciones Instrucciones de bifurcación Instrucciones de asignación [Modificar el contenido de los datos] • adelante • atrás Instrucciones de lectura [entrada de datos] Instrucciones de inicio/fin Instrucciones de escritura [salida de datos]
  • 15. 15 ELEMENTOS BASICOS DE UN PROGRAMA Los lenguajes de programación —como los restantes lenguajes— tienen elementos básicos que se utilizan como bloques constructivos, así como reglas para las que esos elementos se combinan. Estas reglas se denominan sintaxis del lenguaje
  • 16. 16 Datos Tienen un nombre (identificador) Los datos se deben declarar con todos estos atributos (excepto los literales). Un dato contiene siempre un valor de su tipo. Son de un tipo • Simple: entero, real, booleano, carácter [dominio + operaciones] • Compuesto: tabla [constructores + funciones de acceso] Pueden ser • Constantes: valor fijo [Literales: constantes predefinidas] • Variables
  • 17. 17 Lectura de datos Algoritmo leervariable definir x como entero definir n como real leer x, n FinAlgoritmo CARACTERES: Algoritmo mi_nombre Definir nombre como Cadena; Escribir "Ingresar el nombre ..:" leer nombre Imprimir "Mi nombre es:" nombre FinAlgoritmo
  • 18. 18 1.2.- Variables Definición: una variable es un dato cuyo valor puede cambiar durante la ejecución de un algoritmo. Para asignar un valor a una variable se utiliza el operador de asignación “:=”. Ejemplos: x := 3.0; y := x + 2.1; y := 3*x + 2; ... [x, y son variables] Tipos básicos de datos son: real 3.0, -2.1, ... entero -3, +10, … carácter ’a’, ’b’, ’F’, ’4’, ’.’, ... booleano VERDADERO, FALSO
  • 19. 19 Definición de una variable en un algoritmo: Algoritmo nombre_algoritmo definir n como entero; definir x como real; definir c como carácter; definir b como logico; n=3; x=2.3; c='w'; b=VERDADERO; imprimir n imprimir x imprimir c imprimir b FinAlgoritmo
  • 20. 20 1.3.- Constantes Definición: una constante es un dato que representa un valor fijo de un tipo deter- minado que no se puede modificar. Ejemplo: Proceso constante definir r como real Escribir "ingrese el valor del radio" leer r L=2*PI*r Imprimir "la longitud de circunferencia es :" L FinProceso
  • 21. 21 1.4.- Tipos y operaciones Definición: conjunto de valores (dominio) y operaciones aplicables. Tipos básicos: booleano, entero, real y carácter. • Tipo de datos booleano: Valores: {V, F}. Operadores: y, o, no, =,  • Tipo de datos entero: Valores: los enteros, {-MaxEnt, ..., -3, -2, -1, 0, 1, 2, 3, ..., MaxEnt } Operadores (binarios): +: entero + entero → entero -: entero - entero → entero *: entero * entero → entero (división entera) div: entero div entero → entero (resto) mod: entero mod entero → entero =: entero = entero → booleano  entero  entero → booleano <: entero < entero → booleano >: entero > entero → booleano  entero  entero → booleano  entero  entero → booleano x div y = q y * q + r = x x mod y = r 0  r < |y| x y r q
  • 22. 22 • Tipo de datos real. Valores: los reales, {-MaxReal, ... , -MinReal, 0, MinReal ,…, MaxReal} Operadores (binarios): +: real + real → real -: real - real → real *: real * real → real /: real / real → real =: real = real → booleano  real  real → booleano <: real < real → booleano >: real > real → booleano  real  real → booleano  real  real → booleano • Tipo de datos carácter. Valores: los caracteres, {’?’, ’^’, ’#’, ’&’, ..., ’A’, ’B’, …, ’Z’, …, ’a’, ’b’, …, ’z’, …, ’0’, ’1’, ’2’, …, ’9’, …, ’+’, ’-’, ... } Operadores (binarios): =,      : carácter = carácter → booleano . . . • Más adelante veremos algunos tipos compuestos: tablas y tuplas.
  • 23. 23
  • 24. 24 1.5.- Expresiones Definición: Una variable es una expresión. Una constante es una expresión. Si E es una expresión, (E) es una expresión. Si E1, E2, ..., En son expresiones y f una función, f(E1, E2, ..., En) es una expresión Los tipos de las expresiones tienen que ser coherentes. Las prioridades de los operadores se utilizan para evaluar correctamente las expresiones: se aplica la regla asociativa de izquierda a derecha y, en caso de duda, se ponen paréntesis. Operadores utilizados más frecuentemente ordenados de mayor a menor prioridad: ., [ ] (acceso a tuplas y tablas) -, no (cambio de signo y negación lógica) [unarios] *, /, div, mod (operadores multiplicativos) +, - (operadores aditivos) <, >,   =  (operadores relacionales) y, o (y, o lógicos)
  • 25. 25 1.6.- Instrucciones Lectura y Escritura • Lectura: establece el valor de una variable a través de un dispositivo de entrada. • Escritura: permite comunicar el valor de una expresión a través de un dispositivo de salida. Proceso leervariables definir x como entero; definir n como real; leer x, n FinProceso La notación anterior se puede simplificar utilizando las instrucciones leer(variable), escribir(variable), así como instrucciones de lectura y escritura múltiple. También se pueden escribir mensajes de texto, siempre que éstos se escriban entre comillas. Proceso leervariables definir x como entero; definir n como real; escribir “Introduzca un entero, un real y un carácter:”; leer x, n; FinProceso
  • 26. 26 Asignación variable := expresión [la variable toma el valor de la expresión] Ejemplos. n := 1 (entero); x := 9.8 (real); c := ’e’ (carácter); b := VERDADERO (booleano); Notas: El tipo de la variable y el de la expresión deben de ser iguales. El valor que tenía la variable antes de la asignación se pierde. Las variables cuando se declaran no tienen ningún valor concreto. Siempre que trabajemos con una variable debemos darle un valor inicial. Este proceso se denomina “inicialización de las variables”. Secuenciación Cuando tengamos más de una instrucción, utilizaremos la instrucción de secuenciación. Las distintas instrucciones se separan con el signo “ ; “. instrucción_1; instrucción_2; ... ; instrucción_k; ... ; instrucción_n En este caso la instrucción_k no se ejecuta hasta que termina la ejecución de las k-1 instrucciones anteriores.
  • 27. ejemplos • Un vendedor recibe un sueldo base mas un 10% extra por comisión de sus ventas, el vendedor desea saber cuánto dinero obtendrá por concepto de comisiones por las tres ventas que realiza en el mes y el total que recibirá en el mes tomando en cuenta su sueldo base y comisiones. • Una tienda ofrece un descuento del 15% sobre el total de la compra y un cliente desea saber cuánto deberá pagar finalmente por su compra. • Determinar el área de un triangulo cuyas dimensiones de base y altura se ingresan por teclado 27
  • 28. 28 Proceso BONO definir sueldo, venta1, venta2, venta3, total; escribir "introduce tu sueldo"; leer sueldo; escribir "venta N° 01";leer venta1; escribir "venta N° 02";leer venta2; escribir "venta N° 03";leer venta3; total = sueldo + (venta1+venta2+venta3)*0.1; escribir "el sueldo total es ", total; FinProceso EJEMPLO:
  • 29. 29
  • 30. 30 Instrucción condicional o alternativa (si … entonces … si no … fsi) si expresión_booleana entonces instrucciones_V [instrucciones que se ejecutan si la expresión booleana es verdadera] si no instrucciones_F [instrucciones que se ejecutan si la expresión booleana es falsa (opcional)] fin si Cuando hay varias condiciones se puede utilizar el siguiente esquema: si expresión_booleana_1 → instrucciones_1 expresión_booleana_2 → instrucciones_2 ... expresión_booleana_n → instrucciones_n fin si ESTRUCTURAS SELECTIVAS
  • 31. 31 Ejemplo. Calcular el máximo de dos números dados. Algoritmo máximo definir a, b como real; leer a; leer b; Si a>=b Entonces escribir "Numero Real máximo es:" a Sino escribir "Numero Real máximo es:" b Fin Si FinAlgoritmo
  • 32. 32 Ejemplo. Calcular el máximo de dos números teniendo en cuenta si son iguales. Proceso maximo Definir a,b Como Real Leer a Leer b Si a>b entonces escribir "maximo es:" a sino si a<b entonces escribir "maximo es:" b sino escribir "son iguales" FinSi FinSi FinProceso
  • 33. 33 Ejercicio 3. Determinar las raíces de una ecuación de segundo grado • Las raíces de la ecuación de segundo grado ax2+bx+c=0 se obtienen mediante la fórmula x=(-b  (b2- 4ac)1/2)  2ª SOLUCION Algoritmo cuadratica definir a,b,c,x,x1,x2 Como Real; escribir "Sea la ecuacion cuadratica ax2 + bx + c = 0"; escribir "ingrese valor de a"; leer a; escribir "ingrese valor de b"; leer b; escribir "ingrese valor de c"; leer c; d=b^2-4*a*c; si d<0 Entonces escribir "error"; Sino si d=0 Entonces x=-b/2*a; escribir "la raices son: x1=" x," y x2=" x; Sino x1=(-b+d^(0.5))/2*a; x2=(-b-d^(0.5))/2*a; escribir "Las raices son: x1=" x1, " y x2=" x2; FinSi FinSi FinAlgoritmo
  • 34. 34 EJERCICIOS 1. Un hombre desea saber cuánto dinero se genera por concepto de interés sobre la cantidad que tiene en inversión en el banco si el banco paga el 5% al mes. El decidirá reinvertir LOS INTERÉS siempre y cuando estos excedan a S/, 600 y desea saber la cantidad de dinero que tendrá finalmente en su cuenta. 2. Encontrar el mayor de 3 números diferentes proporcionados como datos de entrada. 3. Intercambiar el valor de dos números enteros. 4. Realizar un programa que calcule el total a pagar según la cantidad comprada. Si la cantidad comprada es menor a 5 se realiza un descuento del 10%, si la cantidad es menor a 10 se realiza un descuento del 15% caso contrario no se realizara ningún descuento. 5. Determinar un numero si es par impar entre 1 y 10 ingresado por teclado. 6. Realizar un programa que calcule el área del triángulo, cuadrado, rectángulo y circulo 7. Realizar un programa que calcule la conversión de temperaturas de para grados Celsius, Fahrenheit, ranking y kelvin 8. Calcular las raíces de una ecuación de segundo grado para cualquier numero Real. 9. Convertir una nota vigesimal (0-20) a una evaluación cualitativa (A,B,C,D)
  • 35. 35
  • 36. 36 CONTADORES, ACUMULADORES E INTERRUPTORES CONTADORES Un contador es una variable cuyo valor se incrementa o decrementa en una cantidad constante cada vez que se produce un determinado suceso o acción. Los contadores se utilizan en las estructuras repetitivas con la finalidad de contar sucesos o acciones internas del bucle
  • 37. 37 EJEMPLO Proceso producto definir m, n, contador, p como enteros leer m leer n p=0; contador=n Mientras contador>0 Hacer p=p+m contador=contador-1 Fin Mientras escribir "el producto es:" p FinProceso CONTADORES, ACUMULADORES E INTERRUPTORES
  • 38. 38 ACUMULADORES Son variables cuyo valor se incrementa o decrementa en una cantidad variable. Necesitan operaciones de: CONTADORES, ACUMULADORES E INTERRUPTORES INTERRUPTORES Es una variable que puede tomar los valores VERDAD o FALSO a lo largo de la ejecución de un programa comunicando así la información de una parte a otra
  • 39. 39 EJEMPLO Proceso total leer n suma=0 Mientras n>0 Hacer suma=suma+n n=n-1 Fin Mientras escribir "La suma es:" suma FinProceso CONTADORES, ACUMULADORES E INTERRUPTORES
  • 40. 40 Instrucción iterativa (mientras … hacer … fmientras) mientras expresión_booleana hacer instrucciones fmientras Notas: • Mientras la expresión_booleana sea cierta, las instrucciones se ejecutan. • Cuando la expresión_booleana deja de ser cierta entonces la instrucción iterativa se acaba. • Si la expresión_booleana es inicialmente falsa la instrucción iterativa no hace nada. • Hay que asegurarse de que las instrucciones modifiquen los valores de las variables que forman parte de la expresión_booleana de manera que la instrucción iterativa termine en un número finito de pasos. ESTRUCTURAS REPETITIVAS
  • 41. 41 Algoritmo promedio definir n,suma,promd Como real; n=1; suma=0; mientras n<=50 hacer suma=suma+n; n=n+1; FinMientras promd=suma/50; imprimir "El promedio de los 50 primeros nuemros es: " promd; FinAlgoritmo Ejemplo: Calcular la media de 50 números e imprima su resultado
  • 42. 43
  • 43. 44 Instrucción iterativa (REPETIR … HASTA QUE) Algoritmo sin_titulo definir num,suma Como Entero num=1 suma=0 Repetir suma=suma+num num=num+1 Hasta Que num>50 imprimir "la suma es" suma FinAlgoritmo
  • 44. 45 Proceso sin_titulo escribir "numero de notas para promedio :"; leer n; c=0; s=0 Repetir escribir "ingresar nota :"; leer nota; c=c+1; s=s+nota; Hasta Que c=n promedio<-s/c; escribir "el promedio es :", promedio; FinProceso
  • 45. 46 Algoritmo contador definir num Como Entero c=1 Repetir escribir “ingrese diez numeros cualesquiera” leer num c=c+1 Hasta Que c>10 FinAlgoritmo
  • 46. 47 Instrucción iterativa (para … hasta … hacer ... fpara) para variable := valor_inicial hasta valor_final hacer instrucciones fpara En la definición anterior el valor asignado inicialmente a la variable se incrementa en una unidad en cada iteración. También se puede incluir un valor con la opción paso que permite especificar la cantidad en la que se quiere incrementar el valor de la variable en cada interacción. para variable := valor_inicial hasta valor_final paso incremento hacer instrucciones fpara Ejemplo. Escribir los números pares del 1 al 100. Proceso sin_titulo definir n Como Entero Para n=2 hasta 100 con paso 2 Hacer imprimir n FinPara FinProceso
  • 47. 48 Algoritmo reprobados definir cant, nota, i, porcentaje, repro Como Real escribir "Ingrese la cantidad de estudiantes del grado" leer cant Para i=1 Hasta cant Hacer escribir " ingrese la nota del estudiantes" leer nota si nota<14 Entonces repro=repro+1 FinSi Fin Para porcentaje= (repro/cant)*100 imprimir "El porcentaje de reprobados es: " porcentaje,"%" FinAlgoritmo EJEMPLO 2
  • 48. Proceso producto_lista leer n producto=1 Para i=1 hasta n Hacer escribir "introduzca un numero" leer numero producto=producto*numero FinPara imprimir "El producto de nuemros introducidos es " producto FinProceso EJEMPLO 3
  • 49. Proceso factorial Definir fact, n, i Como Entero; Escribir "hallar el factorial de: "; leer n; fact<-1 Para i<-1 Hasta n Hacer fact<-fact*i; Fin Para imprimir "el factorial es: ",fact FinProceso EJEMPLO 4
  • 50. Proceso sin_titulo cont=0 escribir "ingrese" leer num Para i=1 Hasta num Con Paso 1 Hacer Si num mod i=0 Entonces cont=cont+1 finsi Fin Para si cont=2 Entonces escribir num, " si es primo" Sino escribir num, " no es primo" FinSi FinProceso EJEMPLO 5
  • 52. 53 EJEMPLO 1 SubProceso mensaje( text ) escribir text; Fin SubProceso Proceso texto mensaje("¡HOLA MUNDO!") FinProceso SubProceso res=suma(num1,num2) res=num1+num2; Fin SubProceso Proceso sumandos escribir "el resultado es: " suma(5,3) FinProceso EJEMPLO 2
  • 53. 54 SubProceso fact = factorial( n ) leer n; fact=1 Para i=1 Hasta n Hacer fact=fact*i; Fin Para Fin SubProceso Proceso factor imprimir "El factorial de: " factorial(n) FinProceso EJEMPLO 3
  • 54. 55
  • 57. 58
  • 58. 59
  • 59. 60
  • 60. 61
  • 61. 62 Proceso asignacion dimension A[5] A[1]=5 A[2]=7 A[3]=8 A[4]=12 A[5]=14 imprimir A[4] FinProceso Algoritmo sin_titulo dimension A[5] para i = 1 hasta 5 hacer A[i]=8 imprimir A[i] FinPara FinAlgoritmo
  • 62. 63 Algoritmo sin_titulo dimension A[20] Para i=1 hasta 20 hacer leer A[i] FinPara FinAlgoritmo
  • 63. Ejercicio 5. Escribir los n primeros números de la sucesión de Fibonacci. La sucesión de Fibonacci viene definida por las siguientes reglas: • fib[0]=0 • fib[1]=1 • fib[i]=fib[i-1]+fib[i-2], para i>1.
  • 64. 65
  • 65. 66
  • 66. 67
  • 67. 68
  • 68. 69
  • 69. 70