Está en la página 1de 20

FACULTAD DE INGENIERA CIVIL, DE SISTEMAS Y

DE ARQUITECTURA
ESCUELA PROFESIONAL DE INGENIERA CIVIL
ASIGNATURA:

PROGRAMACION BASICA

DOCENTE:

ING. IRMA CAPUAY

INTEGRANTES:

CAPITAN VILLEGAS JUAN

GALAN HEREDIA FABRIZIO

PONCE DE LEON TORRES DAVID

CHINCHAY JOAN

PALACIOS ASENJO RICARDO RAUL

VELASQUEZ SANCHEZ JHONATAN LEVI

CICLO:

2017 I

Lambayeque, Agosto del 2017


ESTRUCTURAS BASICAS DE CONTROL
INTRODUCCION:

Hasta ahora los algoritmos han consistidos en simples secuencias de instrucciones.


Existen tareas ms complejas que no pueden ser resueltas as como repetir una misma
accin, realizar acciones diferentes en funcin del valor de una expresin, etc.).

Para resolver esto existen las estructuras de control.

Controlan la ejecucin de las instrucciones de un programa


Mejora la productividad de los programadores
Mejora la legibilidad del cdigo resultante
Tiene un nico punto de entrada y un nico punto de salida
Se compone de sentencias o de otras estructuras de control

Existen tres tipos fundamentales de estructuras de control:

Secuencial

Es aquella en la que una accin (instruccin) sigue a otra en secuencia. Las tareas se
suceden de tal modo que la salida de una es la entrada de la siguiente y as sucesivamente
hasta el fin del proceso.

Condicional, Selectiva o Alternativa (simple, doble, mltiple)

Controlan si una sentencia o bloque de sentencias se ejecutan, en funcin del


cumplimiento o no de una condicin o expresin lgica.

Repetitivas o Iterativas

Se ocupan de repetir una serie de lneas de cdigo tantas veces como el programador
indique o bien hasta que se d una cierta condicin. A estas estructuras tambin se les llama
bucles.
ESTRUCTURA SECUENCIAL

Normalmente un programa, o una parte del mismo, consiste en una secuencia de instrucciones que
se tienen que ejecutar una detrs de otra para realizar una operacin. Esto se denomina una
estructura secuencial y se compone de un grupo de acciones que se han de realizar todas y en el
orden en que estn escritas, sin posibilidad de omitir ninguna de ellas.

La estructura secuencial es la ms sencilla de todas, simplemente indica al

procesador que debe ejecutar de forma consecutiva una lista de acciones, para construir una
secuencia de acciones basta con escribir cada accin en una lnea diferente. A continuacin se
muestra una composicin secuencial de acciones en notacin algortmica y su equivalente
FORTRAN.

leer a read *, a
leer b read *, b
c a + b c= a + b
escribir c print *,c

Existe una forma alternativa de expresar una estructura secuencial escribiendo varias acciones en
la misma lnea pero utilizando el punto y coma, ;, como separador. Sin embargo, esta ltima
notacin es desaconsejable puesto que puede llegar a hacer el cdigo bastante difcil de leer.

leer a; leer b
c a + b; escribir c
read *, a; read *, b
c = a + b; print *, c

Por ltimo, es necesario sealar un aspecto importante de la composicin secuencial y es que no


es conmutativa.
Ejemplos

1.
Calcular la suma y el producto de dos nmeros:

El problema es muy simple, lo primero que se tiene que hacer es leer dos nmeros A y B. Despus,
sumarlos, luego multiplicarlos y por ltimo, mostrar los resultados en la pantalla de la computadora.
Estas acciones se deben ejecutar en este orden y secuencialmente.

Y el programa en pseudocdigo sera:

Cdigo:

INICIO

ESCRIBIR A
LEER A
ESCRIBIRB
LEER B
SUMA = A + B
PRODUCTO = A * B
Mostrar SUMA, PRODUCTO

FIN

Se ve que la estructura secuencial expresa perfectamente la solucin al problema.

2.

Escriba un algoritmo que permita conocer el rea de un tringulo a partir de la base y la altura.
Exprese el algoritmo usando Pseudocdigo

INICIO

Base,Atura: ENTERO
ESCRIBA Diga la Base
LEA Base
ESCRIBA Diga la Altura
LEA Altura
ESCRIBA Area del Triangulo = , (BASE*ALTURA)/2

FIN
ESTRUCTURA SELECTIVA O CONDICIONAL
Las estructuras de control selectivas son aquellas que evalan una expresin, usualmente una
condicin booleana, y a partir del resultado permiten tomar decisiones entre una, dos o ms
opciones; a esto se le conoce como seleccin condicional. Existen tres tipos de estructuras
selectivas: seleccin simple, seleccin doble y seleccin mltiple.
Una condicin booleana es una expresin que puede tener como resultado slo el valor de
verdadero o de falso. La condicin puede utilizar datos de tipo entero, real o carcter y se forman
generalmente utilizando los operadores relacionales, por ejemplo a > b, 5 == b

Estructura selectiva simple (i f)


Es aquella que despus de evaluar una condicin determina su valor, que es verdadero o falso, y
slo si el resultado de la condicin es verdadero se realizar la instruccin o instrucciones
definidas para la condicin, su sintaxis es la siguiente:

El alcance sintctico predeterminado para una estructura de control es de una instruccin, como se
aprecia en la primera forma; cuando se requiere que se ejecute ms de una, las instrucciones
debern agruparse mediante llaves, tal como se puede ver en la segunda forma.

EJEMPLO 1

Determinar si un alumno aprob un curso a partir del promedio que obtuvo de sus tres calificaciones
de los parciales que se hicieron durante el semestre.
Se puede observar que la condicin se establece utilizando la variable prom que almacena el
promedio del alumno, de tal modo que si el promedio calculado es mayor o igual que 60 la condicin
es verdadera y slo entonces se realizar la instruccin asignada que es imprimir que el alumno
aprob; de lo contrario, el programa no realizar nada y simplemente terminar.

EJEMPLO 2

Imprimir si un nmero es positivo, negativo o cero

En este ejemplo, el usuario introducir un nmero y en la pantalla aparecer si ste es positivo,


negativo o cero. Una vez que el usuario ya introdujo el nmero, se almacena en la variable num y se
evala la primera condicin; si la variable num es igual que cero, entonces se imprimir Es cero;
despus revisa la siguiente condicin y si la variable num es mayor que cero, se imprimir Es positivo
y por ltimo se evala la tercera condicin y si la variable num es menor que cero se imprimir Es
negativo.

Independientemente de la condicin que se cumpla, el programa evaluar las tres condiciones, pero
se imprimir el texto slo donde la condicin sea verdadera.
Selectiva doble (i f - else)
Es aquella que permite evaluar una condicin booleana y elegir entre dos opciones. Si la condicin
es verdadera, ejecutar la instruccin que se encuentra a continuacin del i f, pero si la condicin
es falsa se ejecutar la instruccin que se encuentra a continuacin del else. Por lo tanto, se
seleccionan las instrucciones que se encuentran a continuacin del i f o las que estn despus de
else, pero no ambas. La sintaxis es:

Recuerde que para cada estructura, si existe ms de una instruccin, stas se debern agrupar con
las U aves. En la forma (2) anterior se agrupan tanto para el L f como para el else.

EJEMPLO 1

Determinar si un alumno aprob o reprob un curso a partir del promedio que obtuvo en sus tres
calificaciones parciales durante el semestre y mostrar la calificacin
En este ejemplo nuevamente se calcula el promedio del alumno, el resultado de la variable prom
ser el valor que se utilice en la condicin. Si el contenido de la variable prom es mayor o igual que
60 (condicin verdadera) se imprime Aprobo y su respectivo promedio, de lo contrario prom se
encuentra entre O y 59 (condicin falsa), por lo que se imprimir Reprobo con su promedio
respectivo.

EJEMPLO 2

Convertir kilmetros a metros


En este ejemplo, el usuario debe elegir Ja opcin que desea realizar oprimiendo el nmero 1 o 2;
esto se almacena en la variable op. Posteriormente el programa realizar las instrucciones
correspondientes evaluando una estructura de control selectiva doble.

Si la variable op es igual que uno se realizarn las siguientes instrucciones: aparecer en la pantalla
Dame los kilometros a convertir y una vez que el usuario introduzca la cantidad aparecer en la
pantalla La conversion a metros es, pero si la condicin no es verdadera, entonces aparecer en la
pantalla Dame los metros a convertir y enseguida La conversion a kilometros es y el programa
concluir.

Nota: Cabe sealar que al elegir la opcin 1, se realizar la conversin de kilmetros a metros, pero
al elegir la opcin 2 u oprimir cualquier tecla diferente a 1 se realizar la conversin ele metros a
kilmetros.

Selectiva mltiple (switch - case)


Es aquella estructura que permite elegir entre dos o ms opciones, switch evala la expresin que
se encuentra dentro de los parntesis y el resultado se compara con valores alternativos.

El switch en la expresin lleva implcito el operador igual ( == ), por lo que compara si la expresin
es igual a alguna de las opciones. Por lo tanto no se puede comparar utilizando otro operador
relacional.

El tipo de dato de la expresin slo puede ser entero o carcter; por lo tanto, las opciones debern
coincidir con el tipo de dato de la expresin. switch compara el valor de la expresin con cada una
de las opciones en el orden en que se encuentran. Cada opcin se representa con la palabra
reservada case, por lo tanto habr tantos case como opciones. Una vez que encuentra la igualdad
de la expresin con una opcin se realizarn las instrucciones que estn a continuacin del case
hasta encontrar un break; si no encuentra ningn valor igual a la expresin, realizar la instruccin
asignada al defaul t, si ste existe.

Se deber utilizar la palabra reservada break al trmino de cada case para interrumpir la estructura
y no revisar las siguientes opciones.

Como se mencion anteriormente, el defaul t se ejecutar cuando la expresin no coincida con


ninguna opcin. Sin embargo, ser decisin del programador Incluirla o no en su programa, ya que
ste es opcional. La sintaxis es:
EJEMPLO 1

Indicar un da de la semana y que el programa escriba el nmero de da que le corresponde

El usuario elige en un men un nombre de da de la semana; automticamente, aparece en la


pantalla el nmero de da de la semana que le corresponde.

En este ejemplo, el tipo de dato de la expresin es carcter. A continuacin se puede observar que
la instruccin defaul t es opcional, y en este ejemplo no se utiliz.
EJEMPLO 2

Realizar la operacin que se elige del men visualizado


Este programa produce una calculadora bsica y despliega cuatro opciones; la opcin elegida por el
usuario se almacena en la variable op, y ser la expresin que el switch emplee para comparar con
cada una de las opciones siguientes; cuando op encuentre una igualdad en alguna opcin, se
realizarn las instrucciones que se encuentran en el case.
Por ejemplo, si el usuario elige la opcin 3, en la variable op se almacenar el 3 y empezar a
compararse con cada uno de los case. Cuando se evale la opcin 3, el usuario habr elegido
multiplicar y mostrar Teclea el primer, despus Teclea el segundo y para finalizar aparecer La
multiplicacion es:

ESTRUCTURA ITERATIVA:

Pasamos ahora a un nuevo conjunto de instrucciones de mucha utilidad. En realidad, casi todos los
lenguajes cuentan con instrucciones parecidas o que funcionan de un modo muy similar a las que
vamos a ver aqu.

Las estructuras iterativas de control de flujo se ocupan de repetir una serie de lneas de cdigo
tantas veces como el programador indique o bien hasta que se d una cierta condicin.

A estas estructuras tambin se les llama bucles.

BUCLES FOR:
Los bucles for van asignando valores a una variable desde un valor inicial hasta un valor final, y
cuando la variable contiene un valor que est fuera del intervalo el bucle termina.

Ejemplo:

for ($cantidad = 1;
$cantidad <10; $i++)
{
echo("$cantidad");
}

Traducido es igual a:

Cantidad es igual a 1, mientras cantidad sea menor que 10 escribe cantidad en pantalla y despus
smale 1 al valor de cantidad.

Es decir, es exactamente el mismo ejemplo que vimos en el bucle while pero


de otra manera.

BUCLE FOR EACH:


For each (de la palabra inglesa for each = para cada uno) es un bloque
constructivo de los lenguajes de programacin para recorrer los elementos de una coleccin.
For each se utiliza por lo general en lugar de una norma para la declaracin. A diferencia de otras
construcciones de bucle, los bucles for each por lo general no mantienen contra-indicacin explcita,
que esencialmente dice "haga esto a todo en este juego" en lugar de "hacer esto x veces."

Esto evita posibles errores off-by-one y hace el cdigo ms fcil de leer. En lenguajes orientados a
objetos un iterador, aunque implcito, a menudo se utiliza como medio de recorrido.

EJEMPLO 01:

var sum = 0;
var obj = {prop1: 5, prop2: 13, prop3: 8};
for each (var item in obj) {
sum += item;
}
print(sum); // imprime "26", que es 5+13+8

EJEMPLO 02:

1.- Haz un script que escriba todos los nmeros pares del 1 al 100 utilizando el bucle while

2.- Escribe un script utilizando un bucle que se ejecute una vez y en el cual la condicin sea imposible.

3.- Haz un script que escriba todos los nmeros impares del 1 al 100 utilizando el bucle for

4.- Reescribe el ejercicio del tema 2, de forma que utilicemos 2 documentos en lugar de 3.

En el primer documento utilizars una pgina multiuso. Si el usuario no ha enviado datos, le


presentas el formulario. Si el usuario ya ha rellenado los datos ver la pgina con los enlaces.
En el segundo documento, utilizaremos las estructuras de control que hemos visto para que
el usuario vea unos datos u otros en funcin del enlace que utilice.
Datos de contacto: Ver una tabla con slo los datos de contacto.
Datos de empresa: Ver una tabla con slo los datos de la empresa.
Datos de viaje: Ver una tabla con slo los datos del viaje.
Todo: ver las tres tabla.

BUCLES WHILE:

Un bucle while tiene una condicin de control o expresin lgica (), que ha de ir encerrada
entre parntesis, que controla la secuencia de repeticin.

La posicin de esta condicin es delante del cuerpo del bucle, y por este motivo el bucle
while es un bucle pre-prueba, ya que se evala la condicin antes de que se ejecute el
cuerpo del bucle.
El cuerpo del bucle se ejecuta mientras se cumpla la condicin de control. Si la condicin
es falsa, entonces el cuerpo no se ejecuta. Hay que hacer notar que si la condicin es cierta
inicialmente, la sentencia while no terminar nunca (bucle infinito) a menos que en el
cuerpo de la misma se modifique de alguna forma la condicin de control del bucle.

Una sentencia while se ejecutar cero (condicin de control inicialmente falsa) o ms veces.
$cantidad = 1;
do {
echo ($cantidad);
} while ($cantidad<1);

Traducido sera

$cantidad = 1

do ( // ejecuta
echo ($cantidad); escribe el valor de cantidad
while ($cantidad<1); mientras cantidad sea mayor que 1 -> la condicin es falsa luego el programa
sale del bucle, pero ha escrito una vez el valor de $cantidad. El resultado en pantalla sera 1

BUCLE DO WHILE:
Sentencia do-while Se corresponde con el esquema REPETIR del pseudolenguaje. La notacin BNF
de la sentencia do-while es la siguiente: ::= do | while '('')'.

En esta sentencia, el cuerpo del bucle se ejecuta hasta que sea FALSA la expresin lgica ()(que ha
de ir encerrada entre parntesis).

Por tanto, al igual que en el bucle while el cuerpo del bucle se ejecuta mientras la expresin lgica
sea cierta. Esto supone una diferencia con la sentencia REPETIR del pseudolenguaje en la que el
cuerpo del bucle se ejecutaba hasta que la expresin lgica fuese verdadera.

El bucle do-while tambin se denomina post-prueba, ya que la expresin lgica se comprueba cada
vez despus de la ejecucin del cuerpo del bucle.
EJEMPLOS:

En el ejemplo siguiente, las instrucciones del bucle do...while se ejecutan con la condicin de que
la variable i sea menor que 10.

var s = "";

var i = 0;
do
{
s += i + " ";
i++;
} while (i < 10);

print (s);
// Output: 0 1 2 3 4 5 6 7 8 9

Dado el siguiente ejemplo que calcula la suma de los primeros N naturales

#define N 4

main() {

int cont,sum;

sum=0;

for (cont=N; cont>0; cont--)sum+=cont;

printf(suma=%d,sum);
OPERADORES

OPERADORES MATEMTICOS EN PROGRAMACIN.

Para escribir un programa dispondremos de una serie de operadores y funciones matemticas, en


general comunes para todos los lenguajes. El uso de estas herramientas tiene en general dos fines:

a) Realizar operaciones matemticas.


b) Obtener un resultado verdadero o falso despus de haber planteado una hiptesis o situacin.

Los operadores matemticos disponibles son los habituales para una calculadora. Para empezar,
los bsicos suma ( + ), resta ( ), multiplicacin ( * ) y divisin ( / ). Cuando escribamos frmulas
matemticas debemos prestar atencin a:

Las unidades en que se expresan cada uno de los parmetros que intervienen. Conviene
comprobar la coherencia dimensional as como realizar una comprobacin manual de los
resultados devueltos por el ordenador (entindase comprobar para tres o cuatro casos, que los
resultados obtenidos sin ordenador coinciden con los dados por l).

En cuanto a las operaciones aritmticas, convendr fijarse en la correccin de la frmula escrita


as como que sta represente realmente la operacin que nosotros queremos ejecutar.

La escritura en el ordenador habr de guiarse por los rdenes de prelacin habituales en


matemticas, a saber:

Exponenciacin > Multiplicacin y divisin > Suma y resta

Las races sern consideradas como exponenciacin.

Los operadores con igual prioridad se ejecutan de izquierda a derecha en caso de aparecer
encadenados.

Los parntesis dan prioridad a las operaciones que encierran. Es recomendable usar parntesis
an no siendo necesarios si con ello se logra mejorar de forma notable en claridad para
interpretacin de lo escrito.
OPERADORES LGICOS O DE COMPARACIN EN PROGRAMACIN.

Otro tipo de operadores fundamentales en programacin son los operadores lgicos o de


comparacin. Se usan para comparar dos variables o expresiones y obtener un valor verdadero o
falso. Como operadores de comparacin disponemos de:
Ntese que las expresiones matemticas de mayor o igual que ( ) y menor o igual que ( ) se
escriben utilizando los smbolos de mayor o menor seguidos de un igual ( > = , < = ).

La evaluacin de una comparacin da lugar a un resultado de verdadero o falso.

Por ltimo, disponemos de operadores de negacin (no se cumple que), conjugacin (y) y
disyuncin (). En ingls not, and y or .

Supongamos distintas expresiones de comparacin entre dos variables A y B con valores A=2 y
B=7.
CONTADORES Y ACUMULADORES

CONTADORES:

La construccin de un contador es una de las tcnicas ms comunes en la realizacin de diagramas


de flujo.

Es una variable en la memoria que se incrementar en una unidad cada vez que se ejecute el
proceso.

El contador se utiliza para llevar la cuenta de determinadas acciones que se pueden solicitar durante
la resolucin de un problema.

En las instrucciones de preparacin se realiza la inicializacin del contador o contadores. La


inicializacin consiste en poner el valor inicial de la variable que representa al contador.
Generalmente se inicializa con el valor 0.

ACUMULADORES

Un acumulador es una variable en la memoria cuya misin es almacenar cantidades variables.

Se utiliza para efectuar sumas sucesivas. La principal diferencia con el contador es que el
incremento o decremento de cada suma es variable en lugar de constante como en el caso del
contador.
Ejemplos:

1. Sumar los primeros N nmeros naturales.

2. Sumar N valores capturados.

3. Al cerrar un expendio de naranjas, 15 clientes que an no han pagado recibirn 15% de

descuento si compran ms de 10 Kgs. Determinar cunto pagar cada cliente y cunto

percibir la tienda por esas compras.

4. En un centro de verificacin de automviles se desea saber el promedio de puntos

contaminantes de los primeros 25 automviles que lleguen.

5. Una pareja desea invertir su dinero en un banco, el cual otorga el 2% de inters. Cul

ser la cantidad de dinero que esta persona tendr al cabo de un ao si la ganancia de

cada mes es reinvertida?

6. En un supermercado un cajero captura los precios de los artculos que los clientes

compran e indica a cada uno el monto de lo que debe pagar. Al final del da le informa a su

supervisor cunto fue el total cobrado.

7. Cinco miembros de un club contra la obesidad desean saber cunto han bajado o subido

de peso desde la ltima vez que se reunieron. Para esto es necesario que cada uno se

pese en 10 bsculas distintas y despus obtener el promedio de su peso. Si existe

diferencia positiva entre el peso promedio y el peso de la ltima reunin significa que

subieron. Si la diferencia es negativa, significa que bajaron. Se requiere que el programa

informe a cada persona si SUBIO o BAJO y qu cantidad de Kilos.

8. Un censador recopila ciertos datos aplicando encuestas para el ltimo Censo Nacional de

Poblacin y Vivienda. Desea obtener de todas las personas que alcance encuestar en un

da, qu porcentaje tiene estudios de primaria, secundaria, carrera tcnica, profesional y

posgrado.

También podría gustarte