Escolar Documentos
Profissional Documentos
Cultura Documentos
CMPUTACION Y ALGORITMOS I
PROF: Elias Gutierrez
Evaluacin:
P1: calificada
P2: calificada
P3: parcial
P4: calificada
P5: calificada
P6: final
Obs.: p3 y p6 no se eliminan
Algoritmo
Concepto:
Es un conjunto de instrucciones que especifican las secuencias de operaciones a realizar,
en orden, para resolver un problema.
Los algoritmos son independientes de los lenguajes de programacin y de la
computadora que lo ejecuta.
Caractersticas.
Debe ser preciso e indicar el orden de ejecucin de cada paso.
Debe de estar definido, si se ejecuta un algoritmo dos veces se debe tener el
mismo resultado.
Debe ser finito, se debe de terminar en algn momento.
Dato:
Es una expresin general que describe los objetos con los cuales opera una
computadora.
Existen dos tipos de datos:
Simple
Compuesto
Los datos simples pueden ser:
Numricos (integer, real)
Lgicos (boolean)
Carcter (char, string)
Identificador.
Es un conjunto de caracteres con las siguientes caractersticas:
Debe de empezar con una letra y no tener el carcter espacio en blanco.
Solo se puede emplear letras, dgitos y el carcter subrayado ( _ ).
Debe ser diferente de las palabras reservadas empleadas en un algoritmo.
Ejemplos:
COEF1, COF_2, C
RAIZ1, RAIZ_2, MAYOR, MENOR
No son identificadores:
1X, NOMBRES Y APELLIDOS, RAIZ@10, END, MOD, DIV, FOR
Constante.
Es un identificador valido cuyo valor no cambia durante el desarrollo del algoritmo o
durante la ejecucin del programa.
Formato: CONST
PI = 31416
G = 9.8
MAX = 20
Variable.
Es un identificador valido cuyo valor se puede cambiar durante el desarrollo del
algoritmo o ejecucin del programa.
Formato:
VAR N: integer
A, B, C: real
P: Boolean
CAD: CHAR
Las expresiones son combinaciones de constante, variables, smbolos de operacin,
parntesis y nombres de funciones especiales.
Operacin de asignacin
Es le modo de darle valores a una variable, se representa con un smbolo u operador .
Formato.
Nombre_varVALOR,
Donde VALOR puede ser una expresin, variable o constante.
Obs.: la accin de asignar es destructiva, ya que el valor que tuviera antes de la
asignacin se pierde y se remplaza por el nuevo valor.
Ejemplo:
X10
YX+10
YY+10
YX+Y
Y(Y-X)+2*X
(X=10)
(Y=20)
(Y=30)
(Y=40)
(Y=50)
Ejemplo:
17 DIV 3 = 5
17 MOD 3 = 2
ACUMULADOR:
Es una variable que permite sumar valores.
Formato: variable variable +expresin
Ejemplo1:
S
S S+5
S S+5*5
S S+5*5*5
Ejemplo2:
S
NUM 5
S S+NUM
NUM NUM*5
S S+NUM
NUM NUM*5
S S+NUM
CONTADOR.
Es un caso especial de un acumulador
Formato: variable variable +1
PRODUCTORIA
Es una variable que permite calcular un producto.
Formato: variable variable*expresin
Ejemplo:
P1
P p*3
P p*3
P p*3
ASIGNACION LOGICA
La expresin que se evala en la operacin es lgica.
Las variables lgicas pueden tomar tres valores: TRUE Y FALSE.
Las expresiones lgicas se forman combinando constates lgicas, variables lgicas y
otras expresiones utilizando los operadores lgicos: NOT, AND Y OR.
Y los operadores relacionales: =, <>, >, <, >=, <=.
Ejemplos
m5
n3
Fm>n
G (m <= n) or (m > 1)
ASIGNACION DE CARACTERES
La expresin que se evala es de tipo carcter.
Ejemplo
m 20
x el valor de m es :
1) y ingrese el valor de y:
z jorge + Juan
w 50
JERARAQUIA DE OPERADORES
OPERADOR
()
DIV, /, *, MOD, AND
+, -, OR
=, <>, >, <, <=, >=
PRIORIDAD
1
2
3
4
Obs.:
Operadores con igual prioridad se realiza la evaluacin de izquierda a derecha.
EBTRADA Y SALIDA DE INFORMACION
Las operaciones de entrada permite leer determinadas valores y asignarlas a
determinadas variables.
Formato: Leer (lista de variables)
Ejemplos
1) Leer(A)
Leer(B)
Leer(C)
2) Leer(A, B, C)
Las operaciones de salida permite escribir (mostrar/imprimir) los resultados obtenidos
en un algoritmo.
Formato: Escribir (lista de variable de salida)
Ejemplos
1) Escribir ( buenos das )
4
___________________________________________________________
___________________________________________________________
___________________________________________________________
________________________________________________________________
________________________________________________________________
For-To-Do
1.
ESTRUCTURAS SECUENCIALES
Ejecuta las acciones sucesivamente unas a continuacin de otras sin omitir ninguna de
ellas.
La estructura secuencial tiene una entrada y una salida.
Si las acciones son: a1, a2, ., an, la representacin ser
EN N-S
Accin a1
Accin a2
Accin a3
:
:
:
Accin an
END.
EN PSEUDO CODIGO
begin
Accin a1
Accin a2
:
:
Accin an
End.
Ejercicios
1. escriba un algoritmo que lea dos nmeros y luego, calcule e imprima la suma y
el producto de dichos numeros.
Nota: joyanes fundamentos de programacin Melchor espinoza, programacin
en delphi
Solucion
Anlisis
Leer A,B
S=A+B
P=A.B
Escribir s,p
Algoritmo suma_producto
begin
leer(A)
6
leer(B)
SA+B
PA*B
Escribir(ala suma es: , S)
Escribir( el producto es: , P)
End.
En N-S
Algoritmo suma_producto
leer(A)
leer(B)
SA+B
PA*B
Escribir( la suma es: , S)
Escribir( el producto es: , P)
End.
2. dado los catetos de un triangulo restangulo, halle su hipotenusa. Escriba un
algoritmo que resulta lo anterio.
Solucion
Anlisis
gggg
Catetos de un
: a,b
Hipotenusa: c
Por Pitgoras: c2 = a2 + b2
c a 2 b2
Algoritmo Pitagoras
begin
leer(A)
leer(B)
csqrt(sqr(A)+sqr(B))
Escribir( los catetos son: , A, y , B)
Escribir( la hipotenusa es: , C)
End.
ESTRUCTURAS SELECTIVAS
Se utilaza para tomar decisiones lgicas y en funcin del resultado se realiza una opcin
u otra.
Pueden ser:
simples
compuestas
mltiples
SELECTIVA SIMPLE (IF-THEN)
7
Verdadero
Falso
ACCION S1
Su representacin en Pseudos Cdigo es:
IF <condicin lgica>
THEN ACCION S1
END-IF
SELECTIVA DOBLE (IF-THEN-ELSE)
La sentencia IF-THEN-ELSE evala una condicin lgica. Y, si la condicin es
verdadera ejecuta la ACCION S1 y si la condicin es falsa ejecuta la ACCION S2
Su representacin en N-S es:
Condicin lgica
Verdadero
ACCION S1
Falso
ACCION S2
VAR
P, A, B, C: Integer
Begin
Leer(A)
Leer(B)
Leer(C)
IF A<0
THEN PA*B*C
ELSE PA+B+C
END_IF
Escribir ( los nmeros son: ,A ,B,C)
Escribir ( los valores pedidos es: ,P)
End.
2. Escriba un algoritmo que lea los valores reales de A, B, C, D, E y F, y resulta el
sistema:
Ax+By=C
Dx+Ey=F
Adems el algoritmo deber indicar los casos en que el sistema no tiene
solucin.
Anlisis
Ax+By=C
Dx+Ey=F
CE-BF
AF-CD
, y=
Si =AE-BD0 entonces x=
Algoritmo Sist_ecuaciones
Begin
Leer(A,B,C)
Leer(D,E,F)
DELTAA*E-B*D
IF DELTA<>
THEN
x(C*E-B*F)/DELTA.
y(A*F-C*D)/DELTA
Escribir ( la solucion es : , x= ,x , y= ,y)
ELSE
IF(A*F-C*D= )
THEN Escribir ( el sistema tienen infinitas soluciones )
ELSE Escribir ( el sistema es inconsistente )
END_IF
END_IF
End.
B+
2A
-B-
X2 =
2A
i X -B i
=
B+
2A
Algoritmo Ec_cuadartica
2A
Begin
Leer(A,B,C)
DISCB*B-4*A*C
IF DISC>=
THEN
X1(-B+SQRT(DISC))/(2*A)
X2(-B-SQRT(DISC))/(2*A)
Escribir ( las raices son : , X1= ,X1 , X2= , X2)
ELSE
RE-B/(2*A)
IMSQRT(-DISC)/(2*A)
Escribir ( las raices son : , RE, + IM, i , ,RE, - ,IM , i )
END_IF
End.
4. Escriba un algoritmo que lea dos numeros enteros y que imprima el mayor de
ellos.
Algoritmo Mayor1
Begin
Leer(A,B)
IF A>B
THEN
MayorA
ELSE
Mayor B
END_IF
Escribir ( el mayor es: ,mayor)
End.
5. Escriba un algoritmo que lea tres numeros enteros y que imprima el mayor de
ellos.
Algoritmo Mayor-tres
10
Begin
Leer(A,B,C)
IF A>=B
THEN
IF A>=C
THEN mayorA
ELSE mayorC
END_IF
ELSE
IF B>=C
THEN mayorB
ELSE mayorC
END_IF
END_IF
Escribir( el mayor es: ,mayor)
End.
6. dada la funcin U=f(x;y) tal que
10, si x. y 1
f ( x; y )
2
y , si x. y 1
g ( x; y )
2
y , si x. y 1
Escriba un algoritmo que calcule los valores de U y V, una ves conocida las
coordenadas de un punto (x;y)
Algoritmo U_V
Begin
Leer(x)
Leer(y)
IF X*Y<1
THEN U10
ELSE UX*Y
END_IF
IF X*Y<1
THEN U1
ELSE UX*Y
END_IF
Escribir( el valor de U es: ,U , el valor de Ves: ,V)
End.
11
12