Está en la página 1de 13

U.A.G.R.M.

MAT 204 INFORMATICA I RBM #3

UNIDAD II. PROGRAMACIÓN

OBJETIVOS:
o Crear destreza y habilidades en el uso de algoritmos para solucionar problemas.
o Resolver problemas de algoritmos y codificarlos en un lenguaje de programación
con considerables ventajas que hacen fácil su uso.
o Ejecutar algoritmos y programas para resolver problemas de Ingeniería mediante
un software de base.

1. Conceptos Básicos

1.1. Algoritmos
Un algoritmo es un procedimiento para la resolución de problemas de cualquier tipo
por medio de determinada secuencia de pasos simples y no ambiguos. Inicialmente
fue usado para el concepto matemático, pero ahora es ampliamente usado para la
programación de computadoras. Los algoritmos se pueden representar en
Pseudocódigos y Diagramas de flujo.

Los softwares que se utilizan para aplicar algoritmos tenemos: DFD, PSInt,

1.1.1. Pseudocódigo
Es una forma de representar un algoritmo donde los pasos a seguir para la solución
de un problema se dan mediante un lenguaje de programación en español (lenguaje
natural) donde principal labor es aprender a programar, centrándose en aspectos
lógicos de la programación, facilitando así a la programación para cuando se vea la
sintaxis de un lenguaje de programación.
Proceso sin_titulo
Definir las variables
Escribimos el cuerpo del programa;
FinProceso
U.A.G.R.M. MAT 204 INFORMATICA I RBM #4

Diagrama de flujo de datos


Un diagrama de flujo de datos es una
descripción gráfica de un procedimiento
para la resolución de un problema. Son
frecuentemente usadas para describir
algoritmos y programas de computador.
Es dado en figuras conectadas por flechas, se comienza por el INICIO y se sigue las
flechas figura a figura ejecutándose las secciones indicadas por cada figura, la cual
representa el tipo de paso que representa. Son usados para suprimir detalles
innecesarios y tiene un significado preciso, si son usados correctamente.

1.2. Programa
Un Programa Es una serie de instrucciones (ordenes o comandos) puestas en un
determinado orden de forma que indican al ordenador, PASO a PASO, qué procesos
y tareas deben realizar. Los programas actuales están escritos en un Lenguaje
parecido al del ser humano, aunque en Ingles.

1.2.1. Lenguaje de Programación


Son el conjunto concreto de órdenes, comandos, instrucciones y vocablos que
permiten desarrollar un programa y que son comprensibles tanto por el ordenador
como por el hombre. Ejemplo: Visual FoxPro, DreamWeber, Visual C, Delphi, Visual
Basic, ...

El lenguaje de programación que utilizaremos será el Visual Basic (VB).

Usando Visual Basic


Sub sin_titulo()
Dim variable(s) As tipo (definir las variables)
Escribimos el cuerpo del programa;
EndSub

1.2.2. Variables
Una variable en un algoritmo o programa es una posición de memoria donde se
puede almacenar información. Por ejemplo, si un programa debe obtener el área de
un triángulo, seguramente la base del mismo y su altura se carguen en memoria en
U.A.G.R.M. MAT 204 INFORMATICA I RBM #5

dos variables para poder realizar el cálculo. El resultado, probablemente también se


asigne en una variable luego del cálculo para luego informarlo al usuario.

Definición de variables
La instrucción definir permite explicitar el tipo de una o más variables. Esta
definición puede ser opcional u obligatoria dependiendo de la configuración del
lenguaje. La sintaxis es:

Definir Nombre_variable(s) Como Tipo_variable;


Dim Nombre_variable(s)as Tipo_variable

Una variable debe definirse antes de ser utilizada por primera vez. Los arreglos, se
definen utilizando su identificador (sin subíndices ni dimensiones) antes o después
de dimensionarlos, y el tipo aplica para todos los elementos del mismo (ya que se
trata de una estructura de datos homogénea).

Para variables que manejan dos o más valores a la cual llamamos arreglos (vectores
o matrices por lo general), tenemos (N es la cantidad de valores):
Definir Nombre_variable(N) Como Tipo_variable;
Dim Nombre_variable(N)as Tipo_variable

Tipos de variables

TIPOS DE VARIABLES
DESCRIPCIÓN O INTERVALO
Algoritmo Visual Basic
Byte Números desde 0 – 255
Entero Integer Números desde -32.768 hasta 32.767
Long Números desde -2.147.483.648 a 2.147.483.647
Currency Moneda tiene 2 dígitos para décimos (€, $,...)
Single Números decimales
Real Double Decimal con muchos dígitos en la parte decimal.
Carácter String Letras y otros caracteres especiales.
OLE_COLOR Colores
Lógico Bolean Almacena tan solo 2 valores: Sí o No
Date Fechas en diverso formatos posibles
U.A.G.R.M. MAT 204 INFORMATICA I RBM #6

Ejemplos:

Definir las variables A, B de tipo entero


Define A, B Como Entero (Algoritmo) Dim A, B As Integer (VB)

Definir las variables R, Z de tipo entero


Define R, Z Como Real (Algoritmo) Dim R, Z As Double (VB)

1.2.3. Contantes (VB)


Es parecido a una variable, pero no cambia de valor en ningún momento del
programa. Tiene un valor fijo.
Se declarará también en la zona “Declaraciones” del objeto “General”, pero con la
palabra “CONST” (Solo funciona en VB)

Const Nombre_variable as Tipo_variable

Ejemplos:

Const Pi = 3.1415 Const Euro = 7.00

Números aleatorios
Randomize (VB)
Instrucción que inicializa el generador de números aleatorios
Variable = Rnd [Genera un número aleatorio igual o mayor que cero y menor que
uno]

En las versiones más recientes de Visual Basic la sintaxis es: Randomize(): Variable
= Rnd()
U.A.G.R.M. MAT 204 INFORMATICA I RBM #7

1.2.4. Operadores
OPERADORES
Algoritmo VB SIGNIFICADO EJEMPLO
RELACIONES
> Mayor que 5>3
< Menor que A<B
= Igual que 5=3
<= Menor ó igual que (≤) A<=B
>= Mayor ó igual que (≥) 3>=5
<> Diferente que (≠) 6<>7
LÓGICOS
&óY AND Conjunción (˄) (A>B) ˄ (B>C)
|óO OR Disyunción (˅) (A>B) ˅ (B>C)
῀ ó No NOT Negación (~) ῀(A>B)
Disyunción
XOR
Excluyente (˅) (A>B) ˅ (B>C)
IMP Implicación (→) (A>B) → (B>C)
EQU Equivalencia (≡) (A>B) ≡ (B>C)
ARITMÉTICOS
+ Suma S = A+B
- Resta R = A-B
* Multiplicación M = A*B
/ División D = A/B
^ Potenciación P = A^B
% MOD Resto ó Residuo X = A Mod B
División entera o
\
cociente C = A\B
TEXTO
+ & Concatenación C = "Holy" + "Cross"

Ejemplos: 21 Mod 5 es igual a 1 (Residuo)


21 \ 5 es igual a 4 (cociente) (VB)
(21-1)/5 es igual a 4

OPERADORES LOGICOS
Ejemplos:
P Q ~P ~Q P˄Q P˅Q P˅Q P→Q P≡Q (2<3) O (4<3) es igual a 1__
0 0 1 1 0 0 0 1 1 (Verdadero)__
0 1 1 0 0 1 1 1 0
1 0 0 1 0 1 1 0 0 (2>3) OR (4=3) es igual a 0
1 1 0 0 1 1 0 1 1 (Falso)
U.A.G.R.M. MAT 204 INFORMATICA I RBM #8

1.2.5. Funciones

FUNCIONES MATEMÁTICAS
Visual
Algoritmo SIGNIFICADO
Basic
ABS(X) ABS(X) Valor absoluto de X
INT(X) Entero menor de X
TRUNC(X) FIX(X) Truncamiento de X
REDON(X) ROUND(X,0) Redondeo entero de X
ROUND(X,n) Redondea X a n decimales
RC(X) ó RAIZ(X) SQR(X) Raíz cuadrada de X
RND Números al azar entre 0 y 1
AZAR(X) FIX(RND*X) Entero al azar entre 0 y X-1
SGN(X) Signo del número X
EXP(X) EXP(X) Función exponencial de X
LN(X) LOG(X) Logaritmo natural de X
SEN(X) SIN(X) Seno de X
COS(X) COS(X) Coseno de X
TAN(X) TAN(X) Tangente de X
ASEN(X) Arco seno de X
ACOS(X) Arco coseno de X
ATAN(X) ATN(X) Arco tangente de X

Ejemplos: ABS(-5) es igual a 5


TRUNC(5.6) es igual a 5 en VB FIX(5.6)
REDON(6.45) es igual a 6 en VB ROUND(6.45,0)
REDON(6.47*10)/10 igual a 6.5 en VB ROUND(6.47,1)
RAIZ(81) es igual a 9 en VB SQR(81)

Generar números enteros aleatorios entre 0 y 20


AZAR(21) en VB FIX(RND*21)

Generar números enteros aleatorios entre 51 y 100


51+AZAR(50) en VB 51+FIX(RND*50) (100-51+1=50)

Funciones de conversión (VB)


Val(c).- Convierte un texto “c” numérico a valor numérico
Str(X).- Convierte un número “X” a texto

Nota: El módulo (resto de la división entera) no se encuentra entre las funciones ya


que fue implementado como operador.
U.A.G.R.M. MAT 204 INFORMATICA I RBM #9

Función matemática Expresión equivalente

Secante Sec(X) = 1 / Cos(X)


Cosecante Cosec(X) = 1 / Sin(X)
Cotangente Cotan(X) = 1 / Tan(X)
Arcoseno Arcsin(X) = Atn(X / Sqr(-X * X + 1))
Arcocoseno Arccos(X) = Atn(-X / Sqr(-X * X + 1)) + 2 * Atn(1)
Arcosecante Arcsec(X) = Atn(X / Sqr(X * X – 1)) + Sgn((X) -1) * (2 * Atn(1))
Arcocosecante Arccosec(X) = Atn(X / Sqr(X * X - 1)) + (Sgn(X) - 1) * (2 * Atn(1))
Arcocotangente Arccotan(X) = Atn(X) + 2 * Atn(1)
Seno Hiperbólico HSin(X) = (Exp(X) - Exp(-X)) / 2
Coseno Hiperbólico Hcos(X) = (Exp(X) + Exp(-X)) / 2
Tangente Hiperbólica Htan(X) = (Exp(X) - Exp(-X)) / (Exp(X) + Exp(-X))
Secante Hiperbólica HSec(X) = 2 / (Exp(X) + Exp(-X))
Cosecante Hiperbólica Hcosec(X) = 2 / (Exp(X) - Exp(-X))
Cotangente Hiperbólica Hcotan(X) = (Exp(X) + Exp(-X)) / (Exp(X) - Exp(-X))
Arcoseno Hiperbólico Harcsin(X) = Log(X + Sqr(X * X + 1))
Arcocoseno Hiperbólico Harccos(X) = Log(X + Sqr(X * X - 1))
Arcotangente Hiperbólica Harctan(X) = Log((1 + X) / (1 - X)) / 2
Arcosecante Hiperbólica Harcsec(X) = Log((Sqr(-X * X + 1) + 1) / X)
Arcocosecante Hiperbólica Harccosec(X) = Log((Sgn(X) * Sqr(X * X + 1) +1) / X)
Arcocotangente Hiperbólica Harccotan(X) = Log((X + 1) / (X – 1)) / 2
Logaritmo en base N LogN(X) = Log(X) / Log(N)

Prueba de Escritorio
Es una parte importante, ya que permite hacer un seguimiento al programa donde
se ve los valores que toma cada variable, detecta las fallas que pudiera tener, se las
corrige hasta que funciones correctamente.
Equivale a un control de calidad para que el programa no tenga fallas.
U.A.G.R.M. MAT 204 INFORMATICA I RBM #10

1.3. Estructuras de un Programa


Un algoritmo o programa se inicia con el nombre del programa, se definen las
variables, luego le sigue una secuencia de instrucciones y finaliza. Una secuencia de
instrucciones es una lista de una o más instrucciones.
Las instrucciones son acciones incluyen estructuras:
- Secuencial (cada instrucción se ejecuta una sola vez, desde la primera hasta
la última instrucción).
- Condicional (ejecuta las instrucciones realizando toma de decisiones).
- Cíclica (repite un bloque de instrucciones varias veces).

1.3.1. Estructura secuencial


Se da cuando el programa no toma ninguna decisión, se tiene operaciones de
entrada y salida, asignaciones de variables.
Instrucción de entrada
Para algoritmos

Leer <Variables>

Visual Basic
Entrada de un dato para una variable tipo texto
[Variable texto][ = InputBox(“Petición”,”Titulo”[,Valor,posiciones])
Entrada de un dato para una variable numérica
[VarNum] = Val(InputBox(“Petición”,”Titulo”[,Valor,posiciones]))

Instrucción de Salida de datos


Para algoritmos
Escribir <lista de expresiones>

Visual Basic
MsgBox(Respuesta en formato texto)

Instrucción de asignación (se usar el símbolo “=”, en algoritmo “<-“).


Algoritmo: [Var] <- [expresión]

Visual Basic [Let] [Var] = [expresión]


La expresión puede ser una constante, otra variable, función o fórmula la cuál es
una combinación de estos con operadores del mismo tipo (numéricos o de cadena).
También se puede combinar con funciones.
U.A.G.R.M. MAT 204 INFORMATICA I RBM #11

Ejemplos: Hacer un programa que permita:


1) Introducir dos números, realizar las cinco operaciones aritméticas y mostrar los
resultados.

2) Introducir dos números, luego mostrar el cociente y residuo.


U.A.G.R.M. MAT 204 INFORMATICA I RBM #12

3) Introducir un número real, luego mostrar el valor absoluto, la parte entera,


redondeado entero y raíz cuadrada.

4) Generar números aleatorios entre 0 y N; luego entre A y B. Mostrar los resultados.


U.A.G.R.M. MAT 204 INFORMATICA I RBM #13

5) Para los primeros “N” números naturales. Calcular la suma, el promedio, suma
de primeros “N” impares y luego los pares.

6) Introducir un número real, luego mostrar el número redondeado entero y


redondeado con dos decimales.
U.A.G.R.M. MAT 204 INFORMATICA I RBM #14

7) Introducir un número entero, luego mostrar “1” si el número es par y “-1” si es


impar.

8) Introducir un número entero, luego mostrar “0” si el número es par y “1” si es


impar.
U.A.G.R.M. MAT 204 INFORMATICA I RBM #15

9) Introducir dos números, mostrar el mayor y después el menor.

10) Introducir tres números, luego mostrar el mayor.

También podría gustarte