Вы находитесь на странице: 1из 212

Megabyte

Megabyte
G R U P O

E D I T O R T A L

Prim era Edicin, O ctubre 2006

re a
: C o m p u ta c i n e In fo rm tic a
H e c h o el D e p s ito L e g a l e n la B ib lio te c a N a c io n a l d e l P e r
N9 2006 - 9786
(L e y N 9 2 6 9 0 5 / D .S . N 9 0 1 7 -9 8 -E D )
R .U .C . N 9 2 0 5 0 7 9 9 3 4 4 4
IS B N :
9 9 7 2 - 821 - 8 5 - 4
E d w a rd A b u rto C o rre a
G e r e n te G e n e ra l___________
J o e l d e la C ru z V illa r
______________
A u to r
G e a n C a rio A p o lin a rio G a rc a
D is e o d e C a r tu la

Algoritmos y Diagramas de Flujo


aplicados en PHP
D erech os R eservado s / Decreto Ley 822
P r o h ib id a la r e p r o d u c c i n t o t a l o p a r c i a l d e e s t e l i b r o , su
t r a t a m i e n t o in f o r m t ic o la t r a n s m is i n d e n in g u n a o t r a fo r m a o
p o r c u a l q u i e r o t r o m e d io y a s e a e le c t r n i c o , m e c n ic o , p o r
f o t o c o p ia , p o r r e g is tr o u o tr o s m to d o s sin p e rm is o p r e v io y p o r
e s c r ito d e lo s t it u la r e s d e C o p y rig h t.

D is trib u c i n y V e n ta s
Jr. R u fin o T o rric o 8 8 9 of. 2 0 8 - C e rc a d o d e L im a
T e le fa x : 3 3 2 -4 1 1 0 N e x te l: 4 0 7 *4 5 1 5
w w w .g ru p o m e g a b y te .c o m v e n ta s @ g ru p o m e g a b y te .c o m
w w w . e d ito r ia lm e g a b y te .c o m v e n ta s @ e d ito r ia lm e g a b y te .c o m
C ta . B a n c o d e C r d ito
S/. 1 9 1 -1 2 5 9 1 0 0 5 -0 -8 6
$. 1 9 1 -1 2 5 9 1 0 0 6 -1 -8 7

D edicatoria

D edicatoria
En memoria de un
gran Amigo E.B.A. C. y a
Carmen Rosa por su apoyo
en la realizacin de esta
obra

rupo

d it o r ia l

egabyte

Contenido de CD

Contenido del CD
El CD incluye todos los ejemplos explicados en libro en formato Web, cada
ejemplo esta en un archivo con extensin PHP que tiene que ser ejecutado
desde un servidor LIN U X , UNIX Windows que soporte paginas PHP desde la
versin 4.x a superior, tambin es recomendable utilizar Intente Explorer 6 a
superior Firefox, para poder ser apreciados sin problemas.
Usted puede cambiar los valores de las variables que estn en la parte superior
de cada archivo y probarlos, no es recomendable editar el cdigo al menos
que tenga el conocimiento para realizarlo.
Los ejem plos no requieren dependencias como base de datos u otros
programas, tambin puede ejecutarse desde cualquier directorio Web.

Indice

Indice
Introduccin............................................................................................................... 15

Captulo I
Conceptos Bsicos
Algoritm os..................................................................

19

Programa........................................................................................................... 19
Heurstica.......................................................................................................... 20
Diagrama de flujo.............................................................................................20
Variables............................................................................................................ 22
Constantes........................................................................................................ 22
Expresiones.......................................................................................................22
Operadores...............................................................................................................22
Aritmticos........................................................................................................ 22
Relacinales.....................................................................................................23
Lgicos............................................................................................................... 23
AND (Y)..............................................................................................................23
OR (O)................................................................................................................24
NOT (NO).................................................................................................................. 24
Prioridad de los O p erad ores....................................................................... 24
ENTRADA / SALIDA de datos.............................................................................. 24
LEER.................................................................................................................. 25
G

rupo

d it o r ia l

egabyte

Algoritmos y Diagramas de Flujo aplicados en PHP

ESCRIBIR...................................................'...................................................... 25
Tipos de datos escalares.......................................................................................25
Asignaciones............................................................................................................ 26
Declaracin de variables........................................................................................26
Tcnicas de desarrollo de algoritmos.................................................................26
Pseudocdigo............................................................................................................28
Ejemplo 1: Imprimir el rea de un tringulo....................................................... 28
Ejemplo 2: Formando una o ra c i n ..................................................................... 31
Ejemplo 3: Escriba el resultado de la siguiente expresin Aritmtica

33

Ejemplo 4: Promedio de sus calificaciones....................................................... 35


Ejemplo 5: Calcular peso expresado en kilogramos y su altura expresada en
m etros.............................................
37
Ejemplo 6: Convertir Euros a nuevos soles.......................................................39
Ejemplo 7: Mostrar la fecha y hora actual..........................................................41
Ejemplo 8: Convertir en Euros y Dlares 2 cantidades................................... 43
Ejemplo 9: Calcular el rea de un triangulo.......................................................45
Ejemplo 10: Calcular el rea y volumen de una pelota................................... 48
Ejemplo 11: Calcularla distancia entre dos postes de alumbrado pblico

50

Ejemplo 12: Calcular el porcentaje de una encuesta....................................... 53


Ejemplo 13: Calcular el radio y la altura de un cilin d ro ................................... 55

Captulo II
Estructuras lgicas selectivas
Estructura Si...Entonces (Seleccin simple)......................................................... 62
Ejemplo 1: Buscar un c o lo r ..................................................................................62
Ejemplo 2: Mostrar nota menor igual.................................................................. 64
Ejemplo 3: calcular cantidad menor igual.......................................................... 66
Ejemplo 4: Aplicar aumento de sueldo................................................................68
10

rupo

d it o r ia l

egabyte

n dice

Estructura Si...Entonces...Si no (Alternativa

doble).........................................70

Ejemplo 5: Mostrar mensaje de acuerdo auna condicin................................ 71


Ejemplo 6: Mostrar mensaje de acuerdo auna notaaprobatoria........................ 73
Ejemplo 7: Realizar tipo de cambio de acuerdoal valor dela moneda

75

Ejemplo 8: Aplicar aumento de acuerdo al sueldo......................................... 77


Anidamiento de Estructuras condicionales......................................................... 80
Ejemplo 9: Validar el aumento de unempleado................................................. 81
Ejemplo 10: Aplicar y validar aumentos.............................................................85
Ejemplo 11: ordenar cantidades.......................................................................... 89
Ejemplo 12: Mostrar mensaje de acuerdo a una nota................................... 93
Ejemplo 13: validar y mostrar un mensaje si el nmeroespar/impar.

96

Ejemplo 14: Validar edades de nios................................................................ 99


Ejemplo 15: Mostrar mensaje si existe un numero repetido......................... 103
Ejemplo 16: Ordenar nmeros de menor amayor........................................... 106
La estructura de seleccin mltiple....................................................................109
Ejemplo 17: calcular 2 valores en un men deseleccin.............................. 109
Ejemplo 18: Validar fecha de nacimiento.......................................................... 113

Captulo III
Estructuras Lgicas Repetitivas
Estructura Hacer Mientras.................................................................................... 122
Ejemplo 1: Obtener el total de su e ld o s........................................................... 124
Ejemplo 2: Listar a o s .........................................................................................127
Ejemplo 3: Contar nmeros divisibles...............................................................130
Estructura Mientras.................................................................................................133
Ejemplo 4: Obtener el total de sueldos de

10obreros................................. 134

Ejemplo 5. Lista los aos del 2000 al 2010......................................................138


G

rupo

d ito r ia l

egabyte

11

Algoritmos y Diagramas de Flujo aplicados en PHP

Ejemplo 6: Mostrar cuantos nmeros NO son divisibles entre 2 ................... 141


Estructura Desde................................................................................................... 144
Ejemplo 7: Mostrar el total de nmeros divisibles y no divisibles.................145
Ejemplo 8: Generar la tabla de multiplicar del 5.............................................. 148
Ejemplo 9: Generar la tabla de multiplicar del 1 al 9......................................150
Ejemplo 10: hallar el nmero de trmino para la progresin siguiente: 1, 2,
4,.......,*20000.......................................................................................................... 153

Captulo IV
Arreglos- Arrays
Que es un array?.................................................................................................159
Ejemplo 1: Almacenar nombres de ciudades.............................................. 159
arrays asociativos.................................................................................................. 161
Ejemplo 2: Ejemplo asociativos.................................................................. 161
arrays Multidimensionales.................................................................................... 162
Ejemplo 3: Ejemplo Multidimensionales.....................................................162
a rra y_slice()............................................................................................................163
Ejemplo 4: Ejemplo array_slice()............................................................... 163
a rra y_ sh ift()............................................................................................................ 166
Ejemplo 5: Ejemplo array_shift()................................................................. 166
unset().......................................................................................................................168
Ejemplo 6: Ejemplo u n s e t()........................................................................ 168
a rra y_p ush ()...........................................................................................................170
Ejemplo 7: Ejemplo array_push()............................................................... 170
Finalizando Arrays PHP........................................................................................ 173
En que caso se utiliza array PHP?.................................................................... 174
Ejemplo 9: Busque el nombre de una persona en un arreglo.........................174

12

rupo

d it o r ia l

ecabyte

Indice

Ejemplo 10: Inserte el nombre de una persona en un arreglo...................... 176


Ejemplo 11: Elimine el nombre de una persona en un arreglo...................... 179
Ejemplo 12: Busque a un empleado por su cdigo y le aumente el sueldo
en 2.5.......................................................................................................................181
Ejemplo 13: Muestre los nombres y notas aprobatorias de 5 alumnos del aula A
y 5 alumnos del aula B................................
183
Ejemplo 14: Utilizando 2 arreglos Alumnos, Nota, tome como nota desaprobatoria
menor a 13..............................................................................................................186
Ejemplo 15: Ingresar el nombre de un persona en un arreglo y mostrarlo el
arreglo.......................................................................................................................188

rupo

d it o r ia l

egabyte

13

Introduccin

Introduccin
El libro de algoritmos esta compuesto de 4 captulos que contiene teora y
ejemplos bsicos de programacin, el algoritmo es el Inicio de la programacin
porque esta conformado de pseudocdigos y diagramas de flujo que dan una
visin amplia de como debe iniciarse y finalizar una programacin basada en
operadores, estructuras selectivas, estructuras repetitivas y manejo de arreglos.
El pseudocdigo no es directamente un lenguaje de programacin que se
pueda ejecutar en un computador y probar su correcto funcionamiento y tampoco
indica si esta correctamente colocado los bloques de cdigo, ya que cada
lenguaje de programacin como C, C++, JavaScript, entre otros, trabaja sus
funciones distintamente a otros, pero siempre manteniendo la lgica inicial de
algoritmos. Por esta razn el libro contiene ejemplos aplicados en PHP, dado
que PHP es un lenguaje que se ejecuta desde un servidor este trabaja muy
bien cuando se le indica lo que tiene que hacer desde las variables.

rl p o

d it o r ia l

egabyte

15

Captulo I
Conceptos
Bsicos
Objetives:

En este capitulo usted aprender a desarrollar Algoritmos


Bsicos basados en operadores aritmticos, para luego
plasmarlo en un Diagramas de flujo y aplicarlo en el
lenguaje PHP.
C o n te n d i :
Algoritmos
Operadores
ENTRADA/SALIDA de datos
Tipos de datos escalares
Asignaciones
Declaracin de variables
Tcnicas de desarrollo de algoritmos
Pseudocdigo
Ejemplos

Captulo 1: Conceptos bsicos

Los algoritmos
Constituyen un listado de instrucciones que indican el camino a seguir para dar
solucin a un problema.
Se puede decir que un algoritmo es la suma de una parte lgica, mas una parte de
control, en donde la parte lgica especifica el conocimiento en la solucin del
problema y la parte de control es la estrategia para solucionar el problema.

C aractersticas de los algoritm os


- Un algoritmo no debe de ser ambiguo.
- Debe de tener una secuencia inicial y Final
- Cada paso deber tener una secuencia sucesiva y nica.
- El algoritmo debe de ser siempre eficiente y dar una solucin al problema o de
lo contrario mostrar un mensaje que diga "Sin solucin"

Programa
Un programa esta definido por un "algoritmo", porque forma el conjunto de
instrucciones que forman el algoritmo (codificados en un lenguaje de programacin)
y que se procesa en una computadora para solucionar un problema especfico.
G

rupo

d ito r ia l

egabyte

19

Algoritmos v Diagramas de Flujo aplicados en PHP

H eurstica
L'n algoritmo que da o produce una solucin a un problema planteado aunque
esta solucin no sea la ptima es llamado "Heurstico".

Diagram a de flujo
El diagrama de flujo es una representacin grfica que conforman el algoritmo.
En el siguiente ejemplo se muestra un diagrama de flujo para:
DIVIDIR (/) dos variables B y C, donde el resultado es almacenado en la variable
A. (Ver Grfico 1)

Grfico 1
20

rupo

E d ito r ia l M

egabyte

Captulo 1: Conceptos bsicos


Los smbolos del diagrama mas comunes son:

Terminal: Se usa para indicar el inicio o fin de


un diagrama de flujo

Proceso: Cualquier tipo de operacin que


pueda originar cambio de valor, operaciones
aritmticas, de transformaciones, etc.

Entrada/Salida: Se usa para indicar el ingreso


o salida de datos.

Salida: Se utiliza para mostrar datos, ser el


smbolo usado en este texto.
C onector: Sirve para enlazar dos partes
cualesquiera de un diagrama a travs de un
conector en la salida y otro conector en la
entrada.
Salida: Indica o p eracio n es lgicas o de
com paracin entre datos y en funcin del
resultado determina cual camino alternativo del
programa se debe seguir.

En caso de: Usado para indicar varias acciones


posibles segn sea un dato de entrado al control.

Desde: Estructura repetitiva q indica un ciclo


de N repeticiones de una o mas acciones.

rupo

d it o r ia l

egabyte

21

Algoritmos y Diagramas de Flujo aplicados en PHP

Variables
Se utilizan para contener datos de distintos tipos: nmeros, letras, cadenas de
caracteres, valores lgicos, etc. El valor contenido en una variable puede cambiar
a lo largo de la ejecucin de un programa.

Constantes
Son elementos que contienen datos, el valor asignado a una constante es fijo y no
se puede cambiar durante toda la ejecucin de un programa.

Expresiones
Las expresiones son combinaciones de constantes, variables, simbolos de operacin,
parntesis y nombres de funciones especiales.

Por ejemplo:
A + (B + 3 ) / C

Cada expresin toma un valor que se determina tomando los valores de las
variables y constantes implicadas y la ejecucin de las operaciones implicadas.
Una expresin consta de operadores y operandos. Segn sea el tipo de datos que
manipulan, se clasifican las expresiones en:

Aritm ticas
Relacinales
Lgicas

Operadores
A ritm ticos
Los operadores aritmticos permiten realizar cualquier operacin aritmtica (suma,
resta, multiplicacin y divisin).
En la siguiente tabla se muestran los operadores.
22

rupo

d ito r ia l

ecabyte

Captulo 1: Conceptos bsicos


O p e ra d o r
+

A c c i n
Resta
Suma
Multiplicacin
Divisin
Potencia
Mdulo
Divisin entera

/
A

MOD
DIV

E je m p lo
x = 5-3
x = 2 + 3
x = 2* 3
x = 6 /2
x = 3 A2
x = 5 MOD 2
x= 5 DIV 2

R e s u lta d o
2
5
6
3
9
1
2

El operador MOD devuelve el residuo de una divisin entera, mientras que el


operador DIV permite realizar una divisin entre dos nmeros enteros, alli rdica
la diferencia con el operador /.

R elacin ales
Permiten evaluar las relaciones entre un par de operandos. Los operadores
relacinales son:
Operador
>
>=
<
<=
=
!= o

Accin
M ayor que
M ayor o igual que
M en o r que
M enor o igual que
Igual
D istinto

L gicos
Los operadores lgicos producen un resultado booleano, y sus operandos son
tambin valores lgicos o asimilables a ellos (los valores numricos son asimilados
a cierto o falso segn su valor sea cero o distinto de cero).
Los operadores lgicos son tres; dos de ellos son binarios, el ltimo (negacin) es
unario.
AND (Y)
Produce un resultado con valor de verdad true cuando ambos operandos tienen
valor de verdad true; en cualquier otro caso el resultado tendr un valor de verdad
false.
Sintaxis: variable 1 AND variable2
G

rupo

d it o r ia l

egabyte

23

Algoritmos y Diagramas de Flujo aplicados en PHP


OR (O)
Produce un resultado con valor de falso false cuando ambos operadores tienen
valores falsos; en cualquier otro caso el resultado tendr un valor de verdad true.
Sintaxis: variable 1 OR variable2

NOT (NO)
Invierte el valor de verdad de operando.
Sintaxis: NOT operando

Ejemplo :
Si operando tiene un valor de verdad true, not operando produce un resultado
con valor falso false.

Prioridad de los Operadores


Los operadores deben ser evaluados segn la siguiente prioridad

1 -0
2 .- A
3.- *, /, Mod, Not
4.- +,

And

5.- >, < , > = , < = , < >, =, Or

EN TRA D A / SALIDA de datos


Los dispositivos de entrada / salida permiten que el usuario interacte con el
sistema. Por medio de los dispositivos de entrada el usuario ingresa los datos a
procesar en el sistema y los dispositivos de salida muestran el resultado.
Las instrucciones de E/S dan acceso al programador a las funciones bsicas de
estos dispositivos, permitindole capturar datos de los dispositivos de entrada y
asignarlos a variables para operar con ellos y mostrar resultados del proceso en
los dispositivos de salida.
24

rupo

d it o r ia l

egabyte

Captulo 1: Conceptos bsicos


LEER
Permite el ingreso de datos al computador, el dato leido debe ser almacenado en
una variable, la sintaxis es la siguiente:
LEER variable

ESCRIBIR
Permite reportar resultados de un proceso, tambin se usa para enviar un mensaje
al operador. La sintaxis es la siguiente:

ESCRIBIR Variable
ESCRIBIR Texto
ESCRIBIR Expresin
Veamos unos ejemplos, segn sean las sintaxis anteriores respectivamente

ESCRIBIR Resultado
Esta instruccin devuelve el contenido de la variable Resultado

ESCRIBIR Preprese para el ingreso de datos


Esta instruccin muestra al usuario el contenido de los apostrofes, ntese que
para poder mostrar un texto este debe ir encerrado en apostrofes o comillas
segn el lenguaje que utilice.

ESCRIBIR 4*n
Esta instruccin primero calcula la expresin 4*n y luego muestra ese resultado.

Tipos de datos escalares


Son aquellos tipos de datos cuyos miembros estn compuestos por un solo tem
(dato). Los tipos de datos escalares nativos son aquellos tipos de datos escalares
que ya estn implementados en el lenguaje junto a sus respectivas operaciones.
Entre estos tipos de datos tenemos Entero, Real, Carcter, Booleano; ms
adelante veremos otros tipos de datos.
G

rupo

d it o r ia l

egabyte

25

Algoritmos y Diagramas de Flujo aplicados en PHP

Asignaciones
Una asignacin consiste en darle un determinado valor a una variable o constante,
por ejemplo en la siguiente sentencia observamos que a la variable A, se le da el
valor de 5.
A= 5
De manera similar podemos tener la siguiente asignacin
A = 4 + (3 * Y A2)
vemos que una expresin a sido asignada a la variable A
Algunos autores usan el smbolo

en vez de igual ( = ) para una asignacin.

Declaracin de variables
Mediante la declaracin de variables describimos las caractersticas de las mismas.
La sintaxis que usaremos es la siguiente:
N o m b r e d e v a r ia b le : Tipo
Entindase por tipo, al tipo de dato de la variable.

Tcnicas de desarrollo de algoritmos


Existen dos principales tcnicas de diseo de algoritmos de programacin, el Top
Down y el Bottom Up.

Top Down
Tambin conocida como de arriba-abajo y consiste en establecer una serie de
niveles de mayor a menor complejidad (arriba-abajo) que den solucin al problema.
Consiste en efectuar una relacin entre las etapas de la estructuracin de forma
que una etapa jerrquica y su inmediato inferior se relacionen mediante entradas
y salidas de informacin. Este diseo consiste en una serie de descomposiciones
sucesivas del problema inicial, que recibe el refinamiento progresivo del repertorio
de instrucciones que van a formar parte del programa.
La utilizacin de la tcnica de diseo Top-Down tiene 3 objetivos bsicos:
- Simplificacin del problema y de los subprogramas de cada descomposicin.
26

rupo

d it o r ia l

egabyte

Captulo 1: Conceptos bsicos


- Las diferentes partes del problem a pueden ser program adas de modo
independiente e incluso por diferentes personas.
- El programa final queda estructurado en forma de bloque o mdulos lo que hace
mas sencilla su lectura y mantenimiento.

Bottom Up
El diseo ascendente se refiere a la identificacin de aquellos procesos que
necesitan computarizarse conforme vayan apareciendo, su anlisis como sistema
y su codificacin, o bien, la adquisicin de paquetes de software para satisfacer
el problema inmediato.
Cuando la programacin se realiza internamente y haciendo un enfoque ascendente,
es difcil llegar a integrar los subsistemas al grado tal de que el desempeo global,
sea fluido. Los problemas de integracin entre los subsistemas son sumamente
costosos y muchos de ellos no se solucionan hasta que la programacin alcanza
la fecha limite para la integracin total del sistema. En esta fecha, ya se cuenta
con muy poco tiempo, presupuesto o paciencia de los usuarios, como para corregir
aquellas delicadas interfaces, que en un principio, se ignoran. Aunque cada
subsistema parece ofrecer lo que se requiere, cuando se contempla al sistema
como una entidad global, adolece de ciertas limitaciones por haber tomado un
enfoque ascendente.
Uno de ellos es la duplicacin de esfuerzos para acceder el software y mas an
al introducir los datos.
Otro es, que se introducen al sistema muchos datos carentes de valor.
Un tercero y tal vez el mas serio inconveniente del enfoque ascendente, es que
los objetivos globales de la organizacin no fueron considerados y en consecuencia
no se satisfacen.

E n ton ces...
La diferencia entre estas dos tcnicas de programacin se fundamenta en el
resultado que presentan frente a un problema dado.
Como ejemplo una pais, el cual se compone de varios provincias (Lima, Arequipa,
Tacna,...), en cada uno de ellos se fueron presentando problemas a los cuales se
les di una solucin basada en un enfoque ascendente (Bottom Up): creando
programas que satisfacan slo el problema que se presentaba.
Cuando el pais decidi integrar un sistema global para suplir todas las necesidades
de todos las provincias se di cuenta que cada una de las
G

rupo

d it o r ia l

egabyte

27

Algoritmos y Diagramas de Flujo aplicados en PHP


soluciones presentadas no era compatible la una con la otra, no representaba una
globalidad, caracterstica principal de los sistemas.
Como no hubo un previo anlisis, diseo de una solucin a nivel global en todos
sus provincias, centralizacin de informacin, que son caractersticas propias de
un diseo Descendente (Top Down) y caractersticas fundamentales de los
sistemas; el pais no puede satisfacer su necesidad a nivel global.
La creacin de algoritmos es basado sobre la tcnica descendente, la cual brinda
el diseo ideal para la solucin de un problema.

Pseudocdigo
Diremos que una notacin es un pseudocdigo si mediante ella podemos describir
el algoritmo, utilizando palabras y frases del lenguaje natural sujetas a unas
determ inadas reglas.
Todo pseudocdigo debe posibilitar la descripcin de:

- Instrucciones de entrada / salida.


- Instrucciones de proceso.
- Sentencias de control del flujo de ejecucin.
- Acciones compuestas, a refnar posteriormente.

Para entender mejor estos conceptos veamos algunos ejemplos.

Ejem plo 1
Elabore un algoritmo y su pseudocsigo para calcular e imprimir el rea de
un tringulo.

Solucin:
Declarar Variables
B,H : real
Entrada: (datos a introducir al computador)
Base

= B

Altura = H
28

rupo

d it o r ia l

egabyte

Captulo 1: Conceptos bsicos


Operacin:

Calcular rea del tringulo (Base x Altura)/2

Salida:

(Resultado que mostrar el computador)

Pseudocdigo:

1. Iniciar proceso
2. Declarar variables
H : real
B : real
A : real
3. LEER B
4.
5.
6.
7.

LEER H
A=(B *H )/2
ESCRIBIR A
Terminar el proceso

Explicacin Pseudocdigo:

1.- Se inicia el proceso, todo programa o bloque de programa, debe tener un


indicativo de inicio.
2.- Declaramos las variables a usar, las variables "H" y "B" son de tipo real, de
eso se deduce que el resultado de una operacin entre estas dos variables tambin
sea del tipo real, por eso "A" tambin es del tipo real.
3.- Leemos el valor de la variables "B", por ejemplo digamos el valor introducido
sea "6"
4.- Leemos el valor de la variable "H", para este ejemplo ingresemos "10".
5.- Calculamos la expresin (B*H)/2 y dicho resultado lo almacenamos en la
variable "A", entonces ser: A = (6*10)/2, por lo tanto tendremos A = 30.
6.- Escribimos el resultado de la operacin, en este caso ser "30".
7.- Cuando un proceso o programa se inica, debemos indicar su fin, caso contrario,
dicho proceso puede ejecutarse infinitamente.
G

rupo

d it o r ia l

egabyte

29

Algoritmos y Diagramas de Flujo aplicados en PHP


A continuacin crearemos el diagrama de flujo de este ejercicio y luego su
codificacin en Lenguaje PHP:
Codificacin en PHP

Diagrama de flujo
<?PHP

$B = "6";
$H = "10";

print "rea de un Triangulo <br>";


print "Base = $B <br>";
print "Altura = $H <br>";

$A = ($B * $H / 2);

print "Resultado:
print $A;
?>
Resultado PHP en WEB

30

rupo

d it o r ia l

egabyte

Captulo 1: Conceptos bsicos


Explicacin PHP
PHP trabaja con valores enviados desde un formulario en modo Get y Post por
enlace URL, en este ejemplo usted colocara los valores en el codigo para que sea
procesado.
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo "$ " y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:
$B = "6";
$H = "10";
El print permite imprimir los valores comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:
print "rea de un Triangulo <br>";
print "Base = $B <br>";
print "Altura = $H <br>";
print "Resultado:
Si solo imprimir el resultado no es necesario encerarlo entre comillas, ejemplo:
print $A;
la etiqueta html <br> es para dar un salto de lnea y de esta manera evitara que
se vea todo en una lnea.

Ejemplo 2
Construya un pseudocdigo, que dados los datos A, B y C que representan
palabras, escriba los mismos formando una oracin.
Pseudocdigo:
1. Iniciar proceso
2. Declarar variables
A, B, C: Carcter
3. LEERA, B, C
4. ESCRIBIRA, B, C
5. Terminar el proceso
G

rupo

d it o r ia l

egabyte

31

Algoritmos y Diagramas de Flujo aplicados en PHP


Diagrama de flujo

Codificacin en PHP

<?PHP

$A = "La";
SB = "Casa";
$C = "Blanca";

print "Resultado: <BR>";


print $A." ".SB." ".SC ;

?>

Resultado PHP en WEB

32

rupo

d ito r ia l

egabvte

Captulo 1: Conceptos bsicos


Explicacin:
Primero almacenamos las palabras en cada variable, luego lo imprimimos en una
cadena para formar la oracin

Ejemplo 3
Construya un pseudocdigo, que dado los datos enteros A, B y C, escriba el
resultado de la siguiente expresin:
(A + B - C) 3
5
Pseudocdigo:
1. Iniciar proceso
2. Declarar variables
A, B y C : Entero
R
: Real
3. LEER A, B y C
4. Calcular R = ((A + B - C)A3)/5
4. ESCRIBIR R
5. Terminar el proceso
Diagrama de flujo

Codificacin en PHP
<?PHP
$A = 3
$B = 6
$C = 4;
$R = pow(($A+$B-$C),3)/5;

print "Resultado: <BR>";


print $R;

?>

rupo

d it o r ia l

egabyte

33

Algoritmos y Diagramas de Flujo aplicados en PHP


Resultado PHP en WEB

Explicacin PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo
y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:
$A = 3;
SB = 6;
$C = 4;
Con pow llevamos a la potencia un valor numrico, ejemplo::
$R = pow(($A+$B-$C),3)/5;
El print permite imprimir los valores comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:
print "Resultado: <BR>";
Si solo imprimir el resultado no es necesario encerarlo entre comillas, ejemplo:
print $R;
la etiqueta html <br> es para dar un salto de lnea y de esta manera evitara que
se vea todo en una lnea.
34

rupo

d it o r ia l

egabyte

Captulo 1: Conceptos bsicos

Ejemplo 4
Construya un pseudocdigo, que dado el cdigo del carnet universitario y 4 notas
de un alumno obtenidas a lo largo del semestre; construya un pseudocdigo
imprima la codigo del carnet del alumno y el promedio de sus calificaciones.
Pseudocdigo:
1. Iniciar proceso
2. Declarar variables
CODIGO : Entero largo
N I, N2, N3, N4, PRO : Real
3. LEER Mat, N I, N2, N3, N4
4. Calcular PRO = (NI + N2 + N3 + N4)/4
4. ESCRIBIR MAT, PRO
5. Terminar el proceso

Diagrama de flujo

Codificacin en PHP
<?PHP

SCODIGO = "AB-2006";
$N1 = 16
$N2 = 11
$N3 = 18
$N4 = 15

SPRO = ($N l+$N 2+$N 3+$N 4)/4;


print "Codigo: SCODIGO <br>";
print "Promedio: SPRO

?>

rupo

d ito r ia l

egabyte

Algoritmos y Diagramas de Flujo aplicados en PHP

Resultado PHP en WEB

Explicacin PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo
y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:
SCODIGO = "AB-2006";
$N1 = 16;
$N2 = 11;
$N3 = 18;
$N4 = 15;
Sumamos y dividimos las variables y almacenamos el resulto en $PRO, ejemplo::
$PRO = ($N l+$N 2+$N 3+$N 4)/4;
El print permite imprimir los valores comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:
print "Codigo: SCODIGO <br>";
print "Promedio: $PRO
36

rupo

d ito r ia l

egabyte

Captulo 1: Conceptos bsicos


Si solo imprimir el resultado no es necesario encerarlo entre comillas, ejemplo:
print $PRO;
la etiqueta html <br> es para dar un salto de lnea y de esta manera evitara que
se vea todo en una lnea.

Ejemplo 5
Construya un pseudocdigo, que dado el nombre de una persona, su peso y su
altura, expresados estos dos ltimos en libras y pies, respectivamente; escriba el
nombre de la persona, su peso expresado en kilogramos y su altura expresada en
metros.
C onversiones:
- Para convertir de libras a kilogramos, multiplica por 0.4535924
- Para convertir de pies a metros, multiplicar por 0.3048006
Pseudocdigo:
1. Iniciar proceso
2. Declarar variables
NOM : Cadena de caracteres
3.
4.
5.
6.

PES, ALT : Real


LEER NOM, PES, ALT
Calcular PESO = PES * 0.4535924
Calcular ALTURA = ALT * 0.3048006
ESCRIBIR NOM, PESO, ALTURA

7. Terminar el proceso

rupo

d it o r ia l

egabyte

37

Algoritmos y Diagramas de Flujo aplicados en PHP


Codificacin en PHP
<?PHP
$NOM = "Vctor";
$PES

= 140;

SALT = 80;

$PESO

= $PES * 0.4535924;

5ALTURA = $ALT * 0.3048006;

print "Nombre: $NOM <br>";


print "Peso: $PESO <br>";
print "Altura: SALTURA";
?>
Resultado PHP en WEB

Explicacin PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo
y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:
38

rupo

d it o r ia l

egabyte

Captulo 1: Conceptos bsicos


$NOM = "Vctor";
SPES

= 140;

$ALT = 80;
Multiplicamos las variables y almacenamos el resulto en SPESO y SALTURA,
ejemplo::
$PESO

= SPES * 0.4535924;

SALTURA = SALT * 0.3048006;


El print permite imprimir los valores comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:
print "Nombre: SNOM <br>";
print "Peso: SPESO <br>";
print "Altura: SALTURA
la etiqueta html <br> es para dar un salto de lnea y de esta manera evitara que
se vea todo en una lnea.

Ejemplo 6
Construya un pseudocdigo, que dado como dato una cantidad expresada en
Euros, convierta esa cantidad a nuevos soles.
C onversiones:
- El tipo de cambio establecido en : 1 Euro = 4.11 soles
Pseudocdigo:

1. Iniciar proceso
2. Declarar variables
EURO, SOLES : Real
3. Calcular SOLES = EURO * 4.11
4. ESCRIBIR SOLES
5. Terminar el proceso

rupo

d it o r ia l

egabyte

39

Algoritmos y Diagramas de Flujo aplicados en PHP


Codificacin en PHP
<?PHP

$EURO = 50;
SSOLES = SEURO * 4.11;

print "Tipo de Cambios en Soles: <br>";


print SSOLES;

?>

Resultado PHP en WEB

Explicacin PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo
y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:
40

rupo

d it o r ia l

egabyte

Captulo 1: Conceptos bsicos


$EURO = 50;
multiplicamos las variables y almacenamos el resulto en $SOLES, ejemplo::
SSOLES = $EURO * 4.11;
El print permite imprimir los valores comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:
print "Tipo de Cambios en Soles: <br>";
Si solo imprimir el resultado no es necesario encerarlo entre comillas, ejemplo:
print SSOLES;
la etiqueta html <br> es para dar un salto de lnea y de esta manera evitara que
se vea todo en una lnea.

Ejemplo 7
Escriba un pseudocdigo, que muestre automticamente la fecha y hora actual
Pseudocdigo:

1. Iniciar proceso
2. Declarar variables
FECHA, HORA: Cadena de caracteres
3 FECHA = DATE
4 HORA = TIME
5. ESCRIBIR FECHA, HORA
6. Terminar el proceso

Diagrama de flujo

rupo

d it o r ia l

egabyte

41

Algoritmos y Diagramas de Flujo aplicados en PHP


Codificacin en PHP
<?PHP

$FECHA = date("d-m-Y");
$HORA = date("H:i:s");

print "Fecha: $FECHA<br>";


print "Hora: $HORA";

?>
Resultado PHP en WEB

Explicacin PHP
PHP inicia con la etiqueta <?PHP y tennina con ?>, cuando escribimos las
variables le anteponemos el signo
y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:
SFECHA = date("d-m-Y");
$HORA = date("H:i:s");
42

rupo

d ito r ia l.

egabyte

Captulo 1: Conceptos bsicos


En PHP la fecha y hora se captura con date, seguidamente indicando el dia "d",
m es"m ", ao "Y ", hora"H ", m inutos"i", segundos'V '.
El print permite imprimir los valores comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:
print "Fecha: $FECHA<br>";
print "Hora: $HORA";
la etiqueta html <br> es para dar un salto de lnea y de esta manera evitara que
se vea todo en una lnea.

Ejemplo 8
Escriba un pseudocdigo, que ingresado 2 cantidades, los sume y luego el resultado
lo convierta en Euros y Dlares dependiendo del tipo de cambios de cada moneda.
C onversiones:
- El tipo de cambio establecido en : 1 Euro =4.11 soles
- El tipo de cambio establecido en : 1 Dolares = 3.21 soles
Pseudocdigo:

1. Iniciar proceso
2. Declarar variables
CANTl: Real
CANT2: Real
EURO : Real
DOLAR : Real
TOTAL: Real
3. Calcular TOTAL = CANTl + CANT2
4. Calcular EURO = TOTAL / 4.11
5. Calcular DOLAR = TOTAL / 3.21
6. ESCRIBIR EURO, DOLAR
7. Terminar el proceso

rupo

d it o r ia l

egabyte

43

Algoritmos y Diagramas de Flujo aplicados en PHP


Diagrama de flujo

Codificacin en PHP

<?PHP
$CANT1 = 50;
$CANT2 = 60;

$TOTAL = SCANT1 + $CANT2;


$EURO = STOTAL / 4.11;
SDOLAR = STOTAL / 3.21;

print "EURO: $EURO <br>";


print "DOLAR: SDOLAR <br>";
?>

Resultado PHP en WEB

Explicacin PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo
y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:
G

rupo

d it o r ia l

ecabyte

Captulo 1: Conceptos bsicos


$CANT1 = 50;
SCANT2 = 60;
Sumamos y dividimos las variables ingresadas.
$TOTAL = SCANT1 + SCANT2;
SEURO = STOTAL / 4.11;
SDOLAR = STOTAL / 3.21;
El print permite imprimir los valores comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:
print "EURO: SEURO <br>";
print "DOLAR: $DOLAR <br>";
la etiqueta html <br> es para dar un salto de lnea y de esta manera evitara que
se vea todo en una lnea.

Ejemplo 9
Escriba un pseudocdigo, que dados los tres lados de un tringulo, determine su
rea.
Formula:
A rea =

* (S - L l) * (S - L2) * (S - L3)

En donde S es: S = (Ll + L2 + L3) / 2


Nota:
Sacar la raz cuadrada de un nmero es igual elevar nmero a la potencia 0.5
Pseudocdigo:
1. Iniciar proceso
2. Declarar variables
L 1,L 2 ,L 3 , S, rea: Real
3. Calcular S = ( L 1 + L 2 + L3) / 2
4. Calcular rea = (S*(S-L1)*(S-L2)*(S-L3))A0.5
5. ESCRIBIR rea
7. Terminar el proceso
G

rupo

d ito r ia l

egabyte

45

Algoritmos y Diagramas de Flujo aplicados en PHP


Diagrama de flujo

Codificacin en PHP

<?PHP
$L1 = 10;
$L2 = 13;
$L3 = 12;

$S = ($L1 + $L2 + $L3) / 2;


$REA = pow ($S*($S-$Ll)*($S-$L2)*($S-$L3),0.5);

print "rea del Triangulo: $REA";


?>

46

rupo

d ito r ia l

ecabyte

Captulo 1: Conceptos bsicos


Resultado PHP en WEB

Explicacin PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo "$ " y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:
$L1 = 10;
$L2 = 13;
$L3 = 12;

Sumamos y dividimos las variables ingresadas.


$S = ($L1 + $L2 + $L3) / 2;?

El resultado se vuelve a procesar para luego sacar la potencia con pow.


SREA = pow($S*($S-$Ll)*($S-$L2)*($S-$L3),0.5);

El print permite imprimir los valores comentarios encerrados entre comillas,


que desea mostrar en la pantalla, ejemplo:
print "rea del Triangulo: SREA";
G

rupo

d ito r ia l

egabyte

47

Algoritmos y Diagramas de Flujo aplicados en PHP

Ejem plo 10
Construya un pseudocdigo, que dado el radio de una pelota, calcule y muestre el
rea y su volumen.

Formulas
- El rea de una esfera la calculamos de esta forma:
REA = 4 * Pi * RADIO2
- El volumen de una esfera lo calculamos de esta forma:
VOLUMEN =

4/3

* Pi * RADIO3

Pseudocdigo:
1. Iniciar proceso
2. Declarar Variables
RADIO, REA, VOLUMEN : Real
3. Declarar constante Pi = 3.141592 : Real
4. Leer RADIO
5.
6.
7.
8.

Calcular REA = 4 * Pi * (RAD10A2)


Calcular VOLUMEN = 4/3 * Pi * (RADIOA3)
ESCRIBIR REA, VOLUMEN
Terminar el proceso

Diagrama de flujo

48

rupo

d it o r ia l

egabyte

Captulo 1: Conceptos bsicos


Codificacin en PHP
<?PHP
$ RADIO = 20;
$PI = "3.141592";

$REA = 4 * $PI * pow ($RADIO,2);


SVOLUMEN = 4/3 * $PI * pow($RADIO,3) ;

print "rea: SREA <br>";


print "Volumen: SVOLUMEN";
?>
Resultado PHP en WEB

Explicacin PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo
y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:
G

rupo

d it o r ia l

egabyte

49

Algoritmos y Diagramas de Flujo aplicados en PHP


SRADIO = 20;
SPI = "3.141592";
Calculamos el rea.
SREA = 4 * $PI * pow (SRADIO,2);
Calculamos el volumen.
$VOLUMEN = 4/3 * SPI * pow($RADIO,3) ;
El print permite imprimir los valores comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:
print "rea: SREA <br>";
print "Volumen: SVOLUMEN";
la etiqueta html <br> es para dar un salto de lnea y de esta manera evitara que
se vea todo en una lnea.

Ejem plo 11
Construya un pseudocdigo que calcule la distancia entre dos postes de alumbrado
pblico dados como P1 para el primer poste y P2 para el segundo poste.

Formula:
Para calcular la distancia entre dos puntos:

D =

J ( X - X 2)2 + (Y l - Y2)2

Pseudocdigo:

1. Iniciar proceso
2.
3.
3.
4.

Declarar Variables X I, Y l, X2, Y2, DISTANCIA : Real


Leer X I, Y l, X2, Y2
Calcular DISTANCIA =((X1 - X2)A2 + (Yl - Y2)A2)A0.5
ESCRIBIR DISTANCIA

5. Terminar el proceso

50

rupo

d ito r ia l

egabyte

Captulo 1: Conceptos bsicos


Diagrama de flujo

Codificacin en PHP

<?PHP

$X1 = 20;
X2 = 30;
$Y1 = 34;
Y2 = 10;

DISTANCIA = pow(pow((Xl-X2),2) + pow(($Yl-$Y2),2),0.5);

print "Distancia: DISTANCIA <br>";

rupo

d it o r ia l

egabyte

51

Algoritmos y Diagramas de Flujo aplicados en PFIP


Resultado PHP en WEB

Explicacin PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo "$ " y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:
$X1 = 20;
$X2 = 30;
$Y1 = 34;
$Y2 = 10;

Calculamos la distancia.
SDISTANCIA = pow(pow (($X l-$X2),2) + pow(($Yl-$Y2),2),0.5);

El print permite imprimir los valores comentarios encerrados entre comillas,


que desea mostrar en la pantalla, ejemplo:

print "Distancia: SDISTANCIA";


52

rupo

d ito r ia l

egabyte

Captulo 1: Conceptos bsicos

Ejem plo 12
Construya un pseudocdigo que calcule el porcentaje del resultado de una encuesta
si esta a favor (Si) o en contra (No) de una pregunta formulada.
Pseudocdigo:

1. Iniciar proceso
2. Declarar Variables SI, NO, PSI, PNO : Real
3.
4.
5.
6.

Leer SI, NO
Calcular PSI = (SI * 100) / (SI + NO)
Calcular PNI = (NO * 100) / (SI + NO)
ESCRIBIR PSI, PNO

7. Terminar el proceso

Codificacin en PHP

Diagrama de flujo

<?PHP

$SI = 798;
$NO = 21;

$PSI = round(($SI * 100) / ($SI + $NO),2);


$PNO = round(($NO * 100) / ($SI + $NO),2);

print "SI: $PSI %<br>";


print "No: $PNO %";
?>

rupo

E d it o r ia l M

egabyte

53

Algoritmos y Diagramas de Flujo aplicados en PHP


Resultado PHP en WEB

Explicacin PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo "S" y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:

$SI = 798;
$NO = 21;

Calculamos el porcentaje, con round redondeamos el valor a 2 decimales.


$PSI = round(($SI * 100) / (SSI + $NO),2);
SPNO = round(($NO * 100) / (SSI + $NO),2);

El print permite imprimir los valores comentarios encerrados entre comillas,


que desea mostrar en la pantalla, ejemplo:
print "SI: $PSI%<br>";
print "No: SPNO %";
54

rupo

d it o r ia l

egabyte

Captulo 1: Conceptos bsicos


la etiqueta html <br> es para dar un salto de lnea y de esta manera evitara que
se vea todo en una lnea.

Ejemplo 13
Construya un algoritmo, que dado el radio y la altura de un cilindro, calcule e
imprima el rea y su volumen.

Formulas:
El volumen de un cilindro:
Volmen = pi * radio2 * altura
La rea del cilindro:
rea = 2 * pi * radio * altura
Pseudocdigo:
1. Iniciar proceso
2. Declarar variables
RADIO, ALTURA, REA, VOLUMEN : Real
3. Declarar constante
P I = 3.1416
4. LEER RADIO,ALTURA
5. Calcular REA = 2 * Pi * RADIO * ALTURA
6. Calcular VOLUMEN = Pi * RADIOA2 * ALTURA
7. ESCRIBIR REA, VOLUMEN
7. Terminar el proceso

rupo

d ito r ia l

egabyte

55

Algoritmos y Diagramas de Flujo aplicados en PHP


Codificacin en PHP
<?PHP
SRADIO

= 5;

SALTURA = 30;
SPI = "3.1416";

SREA

= 2 * SPI * $ RADIO * SALTURA;

SVOLUMEN = SPI * pow($RADIO,2) * SALTURA;

print "rea: SREA <br>";


print "Volumen: SVOLUMEN
?>

Resultado PHP en WEB

Explicacin PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo "$" y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:
56

rupo

d ito r ia l

egabyte

Captulo 1: Conceptos bsicos


$ RADIO

= 5;

SALTURA = 30;
SPI = "3.1416";

Calculamos el Area y Volumen:


SREA

= 2 * $PI * $ RADIO * SALTURA;

SVOLUMEN = SPI * pow($RADIO,2) * SALTURA;

El p rin t permite imprimir los valores comentarios encerrados entre comillas,


que desea mostrar en la pantalla, ejemplo:
print "rea: SREA <br>";
print "Volumen: SVOLUMEN

la etiqueta html < br> es para dar un salto de lnea y de esta manera evitara que
se vea todo en una lnea.

rupo

d ito r ia l

egabyte

57

Captulo II
Estructuras
lgicas
selectivas
Objetivos:

En este capitulo usted aprender a desarrollar Algoritmos


Avanzado basados en lgicas selectivas, para luego
plasmarlo en un Diagramas de flujo y aplicarlo en el
lenguaje PHP
Contendi:

Estructura SL.Entonces (Seleccin simple)


Estructura Si...Entonces...Si no (Alternativa doble)
Anidamiento de Estructuras condicionales
Ea estructura de seleccin mltiple
Ejemplos

Algoritmos y Diagramas de flujo Aplicados en PHP

Captulo 2: Estructuras lgicas selectivas

Las estructuras lgicas selectivas se encuentran en la solucin algortmica


de casi todo tipo de problemas. La utilizamos cuando en el desarrollo de la solucin
de un problema debemos tomar una decisin, para establecer un proceso o sealar
un camino alternativo a seguir.
Esta toma de decisin se basa en la evaluacin de una o ms condiciones que nos
sealarn como alternativa o consecuencia, la rama a seguir.
Hay situaciones en las que la toma de decisiones se realiza en cascada. Es decir
se toma una decisin, se marca la rama correspondiente a seguir, se vuelve a
tomar otra decisin y as sucesivamente. Por lo que para alcanzar la solucin de
este problema o subproblema debemos aplicar prcticamente un rbol de decisin.
Las estructuras algortmicas selectivas que se utilizan para la toma de decisiones
lgicas las podemos clasificar de la siguiente forma:

1. SI...ENTONCES

(Estructura selectiva simple)

2. SI...ENTONCES...SINO

(Estructura selectiva doble)

Cabe sealar que cuando a la estructura selectiva las aplicamos en cascada,


podemos utilizar una combinacin de las estructuras sealadas anteriormente en
la clasificacin.
G

rupo

E d it o r ia l M

egabyte

61

Algoritmos y Diagramas de Flujo aplicados en PHP

Estructura Si...Entonces (Seleccin simple)


La estructura selectiva Si...Entonces permite que el flujo del diagrama siga por
un camino especfico si se cumple una condicin o conjunto de condiciones. Si al
evaluar la condicin (o condiciones) el resultado es verdadero, entonces se
ejecuta(n) cierta(s) operacin(es). Luego se contina con la secuencia normal
del diagrama
La sintaxis para este tipo de estructura es la siguiente:

Si c o n d i c i n
H acer

entonces
o p e r a c i n

Fin_Si

La condicin es una expresin lgica. Y operacin puede ser una operacin


simple o un grupo de operaciones.
El diagrama de flujo de la condicional Si es:

Si la condicin es falsa no hace ninguna accin. Veamos unos ejemplos de una


sentencia selectiva simple.

Ejemplo 1
Construya un pseudocdigo, que ingresando el nombre de un color muestre
COLOR ENCONTRADO si el nombre del color es igual al almacenado dentro
del algoritmo.
62

rupo

d it o r ia l

egabyte

Captulo 2: Estructuras lgicas selectivas


Algoritm o:
1. Iniciar proceso
2. Declarar Variables
COLOR : Entero largo
3. LEER COLOR
4. Si COLOR = BLANCO Entonces
4.1. Escribir "COLOR ENCONTRADO"
5. Fin Si
6. Terminar el proceso

Diagrama de flujo

Codificacin en PHP

<?PHP

SCOLOR = "Blanco";

if (SCOLOR == "Blanco") {
print "Color Encontrado";
}
?>

Explicacin PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo "$ " y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:
G

rupo

d it o r ia l

egabyte

63

Algoritmos y Diagramas de Flujo aplicados en PHP


SCOLOR = "Blanco";
IF iniciamos la condicin luego encerramos entre parntesis () la variable e
igualamos == con el valor que tiene que coincidir, si coincide mostramos entre {}
el resultado mensaje.
if (SCOLOR == "Blanco") {
print "Color Encontrado";
}
El print permite imprimir los valores comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:
print "Color Encontrado";

Resultado PHP en WEB

Ejem plo 2
Construya un pseudocdigo, que ingresada la nota de un alumno si esta es menor
igual que 10 muestre DESAPROBADO.
Algoritmo:
1. Iniciar proceso
2. Declarar Variables

64

rupo

d it o r ia l

egabyte

Captulo 2: Estructuras lgicas selectivas


NOTA : Real
3. LEER Nota
4. Si Nota <= 10 Entonces
4.1. Escribir "DESAPROBADO"
5. Fin Si
6. Terminar el proceso
Diagrama de flujo

Codificacin en PHP

<?PHP

SNOTA = 9;

if (SNOTA <= 10) {


print "Desaprobado";
}
?>

Resultado PHP en WEB

rupo

d ito r ia l

egabyte

65

Algoritmos y Diagramas de Flujo aplicados en PHP


Explicacin PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo
y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:
SNOTA = 9;
IF iniciamos la condicin luego encerramos entre parntesis () la variable y
comparamos si es menor igual <= con el valor 10, si coincide mostramos entre {}
el resultado mensaje.
if (SNOTA <= 10) {
print "Desaprobado";
}
El print permite imprimir los valores comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:
print "Desaprobado";

Ejem plo 3
Construya un pseudocdigo, que ingresado una cantidad, que sea menor o igual a
100 dlares realice el tipo de cambio a soles.
C onversiones:
- El tipo de cambio establecido en : 1 Dolares =3.21 soles
Algoritmo:
1. Iniciar proceso
2. Declarar Variables
CANTIDAD, TOTAL : Entero
3. LEER CANTIDAD
4. Si CANTIDAD <= 100 Entonces
4.1 TOTAL = CANTIDAD * 3.21
4.2 ESCRIBIR TOTAL
5. Fin Si
6. Terminar el proceso
66

rupo

d it o r ia l

egabyte

Captulo 2: Estructuras lgicas selectivas


Diagrama de flujo

Codificacin en PHP

<?PHP

CANTIDAD = 80;

if (CANTIDAD <= 100) {


TOTAL = CANTIDAD * 3.21;
print TOTAL;
}
?>

Resultado PHP en WEB

Explicacin PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo "" y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:
G

rupo

d it o r ia l

egabyte

67

Algoritmos y Diagramas de Flujo aplicados en PHP


$CANTIDAD = 80;
IF iniciamos la condicin luego encerramos entre parntesis () la variable y
comparamos si es menor igual <= con el valor 100, si coincide realizamos la
operacin:
$TOTAL = CANTIDAD * 3.21;
mostramos entre {} el resultado mensaje.
if (CANTIDAD <= 100) {
TOTAL = CANTIDAD * 3.21;
print TOTAL;
}
El print permite imprimir los valores comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:
print TOTAL;

Ejem plo 4
Construya un pseudocdigo que, al sueldo de un empleado se le aplquele un
aumento del 2.5 si su sueldo es menor igual a S/ 500.
Algoritmo:

1. Iniciar proceso
2. Declarar Variables
SUELDO : Entero
NSUELDO : Entero
3. LEER SUELDO
4. Si SUELDO <= 500 Entonces
4.1 NSUELDO = SUELDO * 2.5
4.2 ESCRIBIR NSUELDO
5. Fin Si
6. Terminar el proceso

68

rupo

d it o r ia l

egabyte

Capitulo 2: Estructuras lgicas selectivas


Diagrama de flujo

Codificacin en PHP

<?PH P

$SU ELDO = 410;

if (SUELDO <= 500) {


NSUELDO = SUELDO * 2.5;

print "Nuevo Sueldo: ";


print

NSUELDO;

}
?>

Resultado PHP en WEB

Explicacin PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo " " y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:
G

rupo

d ito r ia l

egabyte

69

Algoritmos y Diagramas de Flujo aplicados en PHP


SSUELDO = 410;
IF iniciamos la condicin luego encerramos entre parntesis 0 Ia variable y
comparamos si es menor igual <= con el valor 410, si coincide realizamos la
operacin:
$NSUELDO = SSUELDO * 2.5;
mostramos entre {} el resultado mensaje.
if (SSUELDO <= 500) {
SNSUELDO = SSUELDO * 2.5;

print "Nuevo Sueldo:";


print

SNSUELDO;

}
El print permite imprimir los valores comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:
print "Nuevo Sueldo: ";
print

SNSUELDO;

Estructura Si...Entonces...Si no (Alternativa doble)


La seleccin simple es limitada, pero en ocasiones necesaria, por otro lado la
alternativa doble nos permite tomar decisiones en ambos sentidos, es decir cuando
la sentencia de comparacin sea verdadero o cuando sea falso, en otras palabras
cuando la respuesta de la comparacin sea verdadera se ejecutarn una o ms
acciones, as mismo si la respuesta es falsa se ejecutarn acciones diferentes.
Veamos el pseudocdigo el cual explica mejor el concepto de alternativa doble.

S i Condicin Entonces
Acciones 1
sino
Acciones2
Fin Si {

70

rupo

d it o r ia l

ecabyte

Captulo 2: Estructuras lgicas selectivas


Donde:
Condicin expresa la condicin o conjunto de condiciones a evaluarse.
Acciones 1 expresa la operacin o conjunto de operaciones que se van a realizar
si la condicin resulta verdadera.
Acciones2 expresa la operacin o conjunto de operaciones que se van a realizar
si la condicin resulta falsa.

Ejemplo 5
Construya un pseudocdigo, que ingresando el nombre de un color muestre
COLOR ENCONTRADO si el nombre del color es igual al almacenado dentro
del algoritmo sino COLOR NO ENCONTRADO en caso no sea igual.
Algoritmo:
1. Iniciar proceso
2. Declarar Variables
COLOR : Entero largo
3. LEER COLOR
4. Si COLOR = BLANCO Entonces
4.1. Escribir "COLOR ENCONTRADO"
5. Si no
5.1. Escribir "COLOR NO ENCONTRADO"
6. Fin_Si
7. Terminar el proceso

rupo

d it o r ia l

egabyte

71

Algoritmos y Diagramas de Flujo aplicados en PHP


Diagrama de flujo

Codificacin en PHP

<?PHP

SCOLOR = "Negro";

if (SCOLOR == "Blanco") {
print "Color Encontrado";
}else{
print "Color NO Encontrado";
}
?>

Resultado PHP en WEB

Explicacin PHP
PHP inicia con la etiqueta <?PHP y tennina con ?>, cuando escribimos las
variables le anteponemos el signo
y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:
72

rupo

d it o r ia l

egabyte

Captulo 2: Estructuras lgicas selectivas


SCOLOR = "Blanco";
IF iniciamos la condicin luego encerramos entre parntesis () la variable e
igualamos == con el valor que tiene que coincidir, si coincide mostramos entre {}
el resultado mensaje.
if (SCOLOR == "Blanco") {
print "Color Encontrado";
}
ELSE sino coincide mostramos el segundo mensaje
else {
print "Color NO Encontrado";
}
El print permite imprimir los valores comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:
print "Color Encontrado";
print "Color NO Encontrado";

Ejemplo 6
Construya un pseudocdigo, que ingresada la nota de un alumno si esta es menor
igual que 10 muestre DESAPROBADO, sino APROBADO
Algoritmo:
1. Iniciar proceso
2. Declarar Variables
NOTA : Real
3. LEER Nota
4. Si Nota <= 10 Entonces
4.1. Escribir "DESAPROBADO"
5. Si no
5.1 Escribir "APROBADO"
6. Fin Si
7. Terminar el proceso

rupo

d it o r ia l

egabyte

73

Algoritmos y Diagramas de Flujo aplicados en PHP


Diagrama de flujo

Codificacin en PHP

<?PHP

$NOTA =12;

if (SNOTA <= 10) {


print "Desaprobado";
}else{
print "Aprobado";
}
?>
Resultado PHP en WEB

Explicacin PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo
y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:
74

rupo

d it o r ia l

egabyte

Captulo 2: Estructuras lgicas selectivas


SNOTA =12;
IF iniciamos la condicin luego encerramos entre parntesis () la variable y
comparamos si es menor igual <= con el valor 12, si coincide mostramos entre {}
el resultado mensaje.
if ($NOTA <= 10) {
print "Desaprobado";
}
ELSE sino coincide mostramos el segundo mensaje
e lse{
print "Aprobado";
}
El print permite imprimir los valores comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:
print "Desaprobado";
print "Aprobado";

Ejemplo 7
Construya un pseudocdigo, que ingresado una cantidad, que sea menor o igual a
50 dlares realice el tipo de cambio a EUROS, sino mostrar un mensaje que diga
"Cambio como mximo 50".
C onversiones:
- El tipo de cambio establecido en : 1 Dlares =3.21 soles
Algoritmo:
1. Iniciar proceso
2. Declarar Variables
CANTIDAD, TOTAL : Entero
3. LEER CANTIDAD
4. Si CANTIDAD <= 50 Entonces
4.1 TOTAL = CANTIDAD *4.11
4.2 ESCRIBIR TOTAL
G

rupo

d it o r ia l

egabyte

75

Algoritmos y Diagramas de Flujo aplicados en PHP

5. Si no
5.1 ESCRIBIR "Cambio como mximo 50"
6. Fin_Si
7. Terminar el proceso
Diagrama de flujo

Codificacin en PHP

<?PHP
CANTIDAD = 80;

if (CANTIDAD <= 50) {


TOTAL = CANTIDAD * 4.11;
print TOTAL;
}else{
print "Cambio como mximo 50";
}
?>

Resultado PHP en WEB

Archivo

Editar

Ver

Ir

Marcadores

- [7yS>
Primeros pasos

Herramientas
h ttp ://jo e l v

A&jda
@ ir

QL

mltimas noticias

Cambio como mximo 50

rupo

d it o r ia l

egabyte

Captulo 2: Estructuras lgicas selectivas


Explicacin PHP
PHP inicia con la etiqueta <?PH P y termina con ?>, cuando escribimos las
variables le anteponemos el signo "$ " y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:
SCANTIDAD = 80;
IF iniciamos la condicin luego encerramos entre parntesis () la variable y
comparamos si es menor igual <= con el valor 50, s coincide mostramos entre {}
el resultado mensaje.
if (SCANTIDAD <= 50) {
STOTAL = SCANTIDAD * 4.11;
print STOTAL;
}
ELSE sino coincide mostramos el segundo mensaje
else{
print "Cambio como mximo 50";
}
El print permite imprimir los valores comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:
print STOTAL;
p rin t "Cambio como mximo 50";

Ejemplo 8
Construya un pseudocdigo que, al sueldo de un empleado se le aplquele un
aumento del 2.5 si su sueldo es menor igual a S/ 500. y si es mayor igual S/.
600 se le aumente el 1.7.
Algoritmo:
1. Iniciar proceso
2. Declarar Variables
SUELDO : Entero
NSUELDO : Entero
G

rupo

d it o r ia l

egabyte

77

Algoritmos y Diagramas de Flujo aplicados en PHP


3. LEER SUELDO
4. Si SUELDO <= 500 Entonces
4.1 NSUELDO = SUELDO * 2.5
4.2 ESCRIBIR NSUELDO
5. Si no SUELDO >= 600 Entonces
5.1 NSUELDO = SUELDO * 1.7
5.2 ESCRIBIR NSUELDO 1
5. Fin Si
6. Terminar el proceso

Diagrama de flujo

rupo

d ito r ia l

egabyte

Captulo 2: Estructuras lgicas selectivas


Codificacin en PHP
<?PHP
SSUELDO = 700;

if ($SUELDO <= 500) {


SNSUELDO = $SUELDO * 2.5;
print "Nuevo Sueldo:";
print

SNSUELDO;

}else if (SSUELDO >= 600) {


SNSUELDO = SSUELDO * 1.7;
print "Nuevo Sueldo:";
print

SNSUELDO;

}
?>
Resultado PHP en WEB

Explicacin PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo "$" y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:
G

rupo

d it o r ia l

egabyte

79

Algoritmos y Diagramas de Flujo aplicados en PHP


SSUELDO = 700;
IF iniciamos la condicin luego encerramos entre parntesis () la variable y
comparamos si es menor igual <= con el valor 500, si coincide mostramos entre
{} el resultado mensaje.
if (SSUELDO <= 500) {
SNSUELDO = SSUELDO * 2.5;
print "Nuevo Sueldo:";
print

SNSUELDO;

}
ELSE sino coincide calculamos con la segunda condicin y si coincide mostramos
el mensaje:
else if (SSUELDO >= 600) {
SNSUELDO = SSUELDO * 1.7;
print "Nuevo Sueldo:";
print

SNSUELDO;

}
El print permite imprimir los valores comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:
print "Nuevo Sueldo:";
print

SNSUELDO;

Anidamiento de Estructuras condicionales


A menudo tendr la necesidad de anidar una o ms estructuras condicionales, ya
sean simples o dobles, o combinaciones de ellas.
Se dice que las estructuras estn anidadas, cuando hay unas dentro de ellas, esto
lo veremos muy a menudo. Por ejemplo veamos el siguiente pseudocdigo.
Si Condicinl Entonces
Si Condicin2 Entonces
Acciones 1
Fin si
Fin Si
80

rupo

d it o r ia l

egabyte

Captulo 2: Estructuras lgicas selectivas


Aqu observamos que primero se debe cumplir la Condicin 1, para luego evaluar
la Condicin2, solo al cumplirse esta ltima, se proceder a la ejecucin de
Acciones 1.

Si Condicin 1 Entonces
Acciones 1
Si Condicin2 Entonces
Acciones2
Si no
Acciones3
F in s i
Fin Si

En este ejemplo, una vez cumplida la Condicin 1, realizamos la Accinl y luego


evaluamos la Condicin2, dependiendo el resultado de la Condicin2, se proceder
a realizar Acciones2 o Acciones3.

Ejemplo 9
Construya un pseudocdigo que, al sueldo de un empleado se le aplquele un
aumento del 2.5 si su sueldo es menor igual a S/ 500. y si es mayor igual S/.
600 se le aumente el 1.7. Pero que muestre un mensaje "Cantidad NO Aceptada"
si ingresa un sueldo mayor igual que 1000, caso contrario procesar el aumento.
Algoritmo:
1. Iniciar proceso
2. Declarar Variables
SUELDO : Entero
NSUELDO : Entero
3. LEER SUELDO
4. Si SUELDO >= 1000 Entonces
4.1 ESCRIBIR "Cantidad NO Aceptada"
5. Si no

r ijpo

d it o r ia l

egabyte

81

Algoritmos y Diagramas de Flujo aplicados en PHP


5.1 Si SUELDO <= 500 Entonces
5.1.1 NSUELDO = SUELDO * 2.5
5.1.2 ESCRIBIR NSUELDO
5.2 Si no SUELDO >= 600 Entonces
5.2.1 NSUELDO = SUELDO * 1.7
5.2.2 ESCRIBIR NSUELDO
5.3 F in S i
6. Fin Si
7. Terminar el proceso

Diagrama de flujo

rupo

d ito r ia l

egabyte

Captulo 2: Estructuras lgicas selectivas


Codificacin en PH P
<?PHP
$SU ELDO = 700;

if ($SUELDO >= 1000) {


p rin t "Cantidad NO Aceptada";
} else {
if ($SUELDO <= 500) {
SNSUELDO = $SUELDO * 2.5;
p rin t "Nuevo Sueldo:";
p rin t

SNSUELDO;

}else if (SSUELDO >= 600) {


SNSUELDO = SSUELDO * 1.7;
p rin t "Nuevo Sueldo:";
p rin t

SNSUELDO;

}
}

Resultado P H P en W EB

rupo

d it o r ia l

egabyte

83

Algoritmos y Diagramas de Flujo aplicados en PHP


Explicacin PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo
y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:
SSUELDO = 700;

IF iniciamos la condicin luego encerramos entre parntesis 0 Ia variable y


comparamos si es menor igual <= con el valor 1000, si coincide mostramos entre
{} el resultado mensaje.
if (SSUELDO >= 1000) {
print "Cantidad NO Aceptada";
} else {
/ / .....
}
ELSE sino coincide calculamos con la segunda condicin y si coincide procesamos
la cantidad ingresada:
if (SSUELDO <= 500) {
SNSUELDO = SSUELDO * 2.5;
print "Nuevo S ueldo:";
print

SNSUELDO;

}else if (SSUELDO >= 600) {


SNSUELDO = SSUELDO * 1.7;
print "Nuevo S ueldo:";
print

SNSUELDO;

}
El print permite imprimir los valores comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:
print "Nuevo Sueldo: ";
print
84

SNSUELDO;
G

rupo

d ito r ia l

egabyte

Captulo 2: Estructuras lgicas selectivas


E je m p lo 10
Basado en el ejemplo anterior construya un pseudocdigo que, al sueldo de un
trabajador se le aplquele un aumento del 3.0 si su sueldo es menor igual a S/
600. y si es mayor a S/. 600 se le aumente el 4.0 con las siguientes validaciones:
- Si el sueldo es igual o menor a 100 se de un aumento especial de 8.0.
- Muestre un mensaje "Aumento No Aplicado" si ingresa una sueldo mayor igual
que 1500, caso contrario procesar el aumento.
Vase que en este ejemplo se esta utilizando 3 tipos de aumentos.
Algoritmo:

1. Iniciar proceso
2. Declarar Variables
SUELDO : Entero
NSUELDO : Entero
3. LEER SUELDO
4. Si SUELDO >= 1500 Entonces
4.1 ESCRIBIR "Aumento No Aplicado 1
5. Si no
5.1 Si SUELDO <= 100 Entonces
5.1.1 NSUELDO = SUELDO * 8.0
5.1.2 ESCRIBIR NSUELDO
5.2 Si no SUELDO <= 600 Entonces
5.1.1 NSUELDO = SUELDO * 3.0
5.1.2 ESCRIBIR NSUELDO
5.3 Si no SUELDO > 600 Entonces
5.2.1 NSUELDO = SUELDO * 4.0
5.2.2 ESCRIBIR NSUELDO
5.4 Fin Si
6. Fin Si
7. Terminar el proceso

rupo

d it o r ia l

egabyte

85

Algoritmos y Diagramas de Flujo aplicados en PHP


Diagrama de flujo

Codificacin en PHP
<?PHP
SSUELDO = 100;

if (SSUELDO >= 1500) {


print "Aumento No Aplicado";
} else {
if (SSUELDO <= 100) {

rupo

d it o r ia l

egabyte

Captulo 2: Estructuras lgicas selectivas


SNSUELDO = $SUELDO * 8.0;
print "Nuevo Sueldo:
print

SNSUELDO;

}else if (SSUELDO <= 600) {


SNSUELDO = SSUELDO * 3.0;
print "Nuevo Sueldo:";
print

SNSUELDO;

}else if (SSUELDO > 600) {


SNSUELDO = SSUELDO * 4.0;
print "Nuevo Sueldo:";
print

SNSUELDO;

}
}

Resultado PHP en WEB


1

Explicacin PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo "$" y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:
G

rupo

d ito r ia l

egabyte

87

Algoritmos y Diagramas de Flujo aplicados en PHP


IF iniciamos la condicin luego encerramos entre parntesis () la variable y
comparamos si es menor igual <= con el valor 500, si coincide mostramos entre
{} el resultado mensaje.
if (SSUELDO >= 1500) {
print "Aumento no Aplicado";
} else {
/ / .....
}
ELSE sino coincide calculamos con la segunda condicin y si coincide procesamos
la cantidad ingresada:
if (SSUELDO <= 100) {
SNSUELDO = SSUELDO * 8.0;
print "Nuevo Sueldo:";
print

SNSUELDO;

}else if (SSUELDO <= 600) {


SNSUELDO = SSUELDO * 3.0;
print "Nuevo Sueldo:";
print

SNSUELDO;

Jelse if (SSUELDO > 600) {


SNSUELDO = SSUELDO * 4.0;
print "Nuevo Sueldo:";
print

SNSUELDO;

}
El print permite imprimir los valores comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:

print "Nuevo Sueldo:";


print
88

SNSUELDO;
G

rupo

d ito r ia l

ecabyte

Captulo 2: Estructuras lgicas selectivas


E jem p lo 11
Construya un pseudocdigo, donde se ingresen tres cantidades y estas se ordenen
de mayor a menor.
Algoritmo:

1. Iniciar proceso
2. Declarar Variables
A, B, C : Entero
3. Leer A, B. C
4. S A B Entonces
Si A > C Entonces
Si B > C Entonces
Escribir A, B, C
Sino
Escribir A, C, B
F in S i
Sino
Escribir C, A, B
Fin_Si
5. Si no
Si B > C Entonces
Si A ^ C Entonces
Escribir B, A y C
Sino
Escribir B, C y A
F in S i
Sino
Escribir C, B y A
F in S i
6. Fin
7. Terminar el proceso

rupo

d it o r ia l

egabyte

89

Algoritmos y Diagramas de Flujo aplicados en PHP

Codificacin en PHP
<?PHP
$A = 4;
$B = 9;
$C = 6;

if ($A > $B) {


if ($A > $C) {
90

rupo

d it o r ia l

egabyte

Captulo 2: Estructuras lgicas selectivas


if ($B > $C) {
print "$A <br>";
print "$B <br>";
print "$C <br>";
} else {
print "$A <br>";
print "$C <br>";
print "$B <br>";
}
} else {
print "$C <br>";
print $A <br>";
print "SB <br>";
}
} else {
if ($B > $ C ) {
if ($A > $ C )
print "$B <br>";
print "$A <br>";
print "$C <br>";
} else {
print "$B <br>";
print "$C <br>";
print " $A <br>";
}
} else {
print "$C <br>";
print "$B <br>";
print "$A <br>";
G

rupo

d ito r ia l

egabyte

91

Algoritmos y Diagramas de Flujo aplicados en PHP

?>
Resultado PHP en WEB

Explicacin PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo
y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:
IF iniciamos la condicin luego encerramos entre parntesis () la variable y
comparamos si A es mayor > que B

if ($A > $B) {


II...

} else {
II.

ELSE sino coincide calculamos con la segunda condicin y si coincide procesamos


el valor ingresado, de esta manera se trata de comparar cual es mayor.
G

rupo

d it o r ia l

egabyte

Captulo 2: Estructuras lgicas selectivas


El print permite imprimir los valores comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:

print "$A <br>";


print "$B <br>";
print "$C <br>";
E je m p lo 12
Construya un pseudocdigo, que lea una nota de un alumno universitario y que
muestre un mensaje de acuerdo al promedio de su nota:
- Descalificado (10),
-Aprobado (11),
- Bueno (15),
- Excelente (18)
- Muy Excelente (20).
Algoritmo:
1. Iniciar proceso
2. Declarar Variables
Nota : Entero
3. Leer Nota
4. Si Nota < = 1 0 Entonces
Escribir Descalificado.
5. Si no
Si Nota >= 11 y Nota <= 14 Entonces
Escribir Aprobado
FinSi
6. Si no
Si Nota >= 15 y Nota <= 17 Entonces
Escribir Bueno
FinSi

rupo

d ito r ia l

egabyte

93

Algoritmos y Diagramas de Flujo aplicados en PHP

94

rupo

d ito r ia l

ecabyte

Captulo 2: Estructuras lgicas selectivas


Codificacin en PHP

< ?P H P

SNOTA = 18;

if ($NOTA <= 10) {


print "Descalificado";
}elseif (SNOTA >= 11 and SNOTA <= 14){
print "Aprobado";
}elseif (SNOTA >= 15 and SNOTA <= 17){
print "Bueno";
Jelseif (SNOTA >= 18 and SNOTA <= 19){
print "Excelente";
Jelseif (SNOTA = 20){
print "Muy Excelente";
}
?>

Resultado PHP en WEB

rupo

d ito r ia l

egabyte

95

Algoritmos y Diagramas de Flujo aplicados en PHP


Explicacin PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo "$" y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:
$NOTA = 18;

IF iniciamos la condicin luego encerramos entre parntesis () la variable y


comparamos si Nota es menor > igual = que 10.
if ($NOTA >= 10) {
/ / .....
} else {
/ / .....
}
ELSE sino coincide calculamos con la segunda condicin y si coincide procesamos
la cantidad ingresada, ntese que estamos utilizando AND para verificar si la
nota esta en un rango de numrico.
elseif (SNOTA >= 18 and SNOTA <= 19)
El print permite imprimir los valores comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:

print "Muy Excelente";


E je m p lo 13
Construya un pseudocdigo, que muestre un mensaje si un numero es par o impar,
y si el valor ingresado no es numero mostrar otro mensaje Ingrese un numero.
Algoritmo:
1. Iniciar proceso
2. Declarar Variables
NUMERO : Entero
96

rupo

d it o r ia l

egabyte

Captulo 2: Estructuras lgicas selectivas

3. LEER NUMERO
4. Si NUMERO > 0 Entonces
Si (NUMERO MOD 2)=0 Entonces
Escribir Nmero ingresado es Par
Sino
Escribir Nmero ingresado es Impar
Fin_Si
5. Sino
6.
Escribir Ingrese un Num ero
7. F in S i
8. Terminar el proceso
Diagrama de flujo

rupo

d ito r ia l

egabyte

97

Algoritmos y Diagramas de Flujo aplicados en PHP


Codificacin en PHP
<?PHP
$NUMERO = 18;

if ($NUMERO > 0) {
if ($NUMERO % 2 == 0) {
print "Numero Par";
}else{
print "Numero Impar";
}
}else{
print "Ingrese un Numero";
}
?>
Resultado PHP en WEB

Explicacin PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo
y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:
98

rupo

d it o r ia l

egabyte

Captulo 2: Estructuras lgicas selectivas

NUMERO = 18;
IF iniciamos la condicin luego encerramos entre parntesis () la variable y
comparamos si NUMERO es mayor > que 0, si el valor ingresa no es numrico
mostrara un mensaje de alerta.

if (NUMERO > 0) {
/ / .....
} else {
/ / .....
}
Si coincide calculamos el resto de la divisin % entre 2 y lo comparamos = a 0, si
el resto de la divisin es igual a 0 cero es par caso contrario es impar.

(NUMERO % 2 == 0)
El print permite imprimir los valores comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:

print "Ingrese un Numero";

E je m p lo 14
Construya un pseudocdigo que lea las edades de 2 nios y determine cul es el
mayor y cual es el menor. Debe validar que si la edad es mayor que 10 no es
considerado nio.
Algoritmo:
Iniciar proceso
Declarar Variables
EDAD1, EDAD2 : Entero

rupo

d ito r ia l

egabyte

99

Algoritmos y Diagramas de Flujo aplicados en PHP


Leer EDAD 1, EDAD2
Si EDAD1< 10 or EDAD2 < 10 Entonces
Si EDAD1 <> EDAD2 Entonces
Si EDAD1 > EDAD2 Entonces
Escribir l mayor es EDAD 1
Escribir El menor es EDAD2
Sino
Escribir El mayor es EDAD2
Escribir El menor es EDAD1
Fin Si
Sino
Escribir Las edades son iguales
Fin_Si
Sino
Escribir Una de la edades es mayor a 10
F in S i
Terminar el proceso

Diagrama de flujo

100

rupo

d it o r ia l

egabyte

Captulo 2: Estructuras lgicas selectivas

Codificacin en PHP
<?PHP
SEDAD 1 = 5;
SEDAD2 = 3;

if (SEDAD1 < 10 OR SEDAD2 < 10) {


if ( S E D A D l.o EDAD2) {
if (SEDAD1 > EDAD2) {
print "Edad mayor SEDAD1 <BR>";
print "Edad menor SEDAD2 <BR>";
}else{
print "Edad mayor SEDAD2 <BR>";

rupo

d it o r ia l

egabyte

101

Algoritmos y Diagramas de Flujo aplicados en PHP


print "Edad menor SEDAD3 <BR>";
}
}else{
print "Edades iguales";
}
}else{
print "Una de las edades es mayor a 10";
}
?>

Resultado PHP en WEB

Explicacin PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo
y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:
SEDAD1 = 5;
S E D A D 2 = 3;

IF iniciamos la condicin luego encerramos entre parntesis () la variable y


comparamos si algunas de las edades es mayor a 10.
102

rupo

d ito r ia l

egabyte

Captulo 2: Estructuras lgicas selectivas


if ($EDAD1 < 10 OR $EDAD2 < 10) {
/ / .....
} else {
/ / .....
}
Utilizamos OR para verificar si una de las edades es mayor a 10

if ($EDAD1 < 10 OR $EDAD2 < 10)


El print permite imprimir los valores comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:

print "Edad mayor SEDAD1 <BR>";


print "Edad menor $EDAD2 <BR>";

Ejem plo 15
Construya un pseudocdigo que permita ingresar 3 nmeros y mostrar un mensaje
cuando unos de ellos se repitan y otro mensaje si no existen repetidos.
Algoritmo:
Iniciar proceso
Declarar Variables
NUM1 : Carcter
NUM2 : Carcter
NUM3 : Carcter
Leer NUM1, NUM2, NUM3'
Si NUM1 = NUM2 O NUM1 = NUM3 O NUM2 = NUM3 Entonces
Escrbir Existe un par de nmeros iguales
Si no
Escrbir Ninguno Repetido
Fin Si

Terminar el proceso
G

rupo

d it o r ia l

egabyte

103

Algoritmos y Diagramas de Flujo aplicados en PHP


Diagrama de flujo

Codificacin en PHP
< ?P H P

SNUM1 = 5;
$NUM2 = 3;
$NUM3 = 3;

if ($NUM 1 == $NUM 2 OR $NUM 1 == $NUM 3 OR


$NUM3 == $NUM2) {
print "Existe un par de nmeros repetidos";
}else{
print "Ninguno Repetido";
}
?>
104

rupo

d it o r ia l

egabyte

Captulo 2: Estructuras lgicas selectivas


Resultado PHP en WEB

Explicacin PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo "$" y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:
SNUM1 = 5;
SNUM2 = 3;
$NUM3 = 3;
IF iniciamos la condicin luego encerramos entre parntesis () la variable y
comparamos si algunos de los nmeros son iguales.
if ($NUM I == $NUM2 OR $NUM1 == $NUM3
OR $NUM3 == $NUM2) {
/ / .....
} else {
/ / .....
}
Utilizamos OR para verificar si unos de los pares de nmeros son iguales

SNUM1 == $NUM2 OR $NUM1 == $NUM3


OR $NUM3 == SNUM2
G

rupo

d ito r ia l

egabyte

1 05

Algoritmos y Diagramas de Flujo aplicados en PHP


El print permite imprimir los valores comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:

print "Existe un par de nmeros repetidos";


E je m p lo 16
Construya un pseudocdigo que lea tres nmeros enteros por teclado y emita un
mensaje indicando si estn o no ordenados de menor a mayor y validar que solo
ingresen nmeros.
Algoritmo:
Iniciar proceso
Declarar Variables
N U M 1, NUM2,
NUM 3: Entero
Leer NUM1, NUM2, NUM3
Si NUM 1 > 0 y NUM2 > 0 y NUM3 > 0 Entonces
Si NUM1 < NUM2 Y NUM2 < NUM3 Entonces
Escribir Ordenados de menor a mayor
Si no
Escribir No estn ordenados
Fin Si
Si no
Escribir Ingrese solo nmeros
Fin Si
Terminar el proceso
Diagrama de flujo

rupo

d it o r ia l

egabyte

Capitulo 2: Estructuras lgicas selectivas

Codificacin en PH P
<?PHP
SNUM1 = 5;
SNUM2 = 6;
$NUM3 = 7;

if (SNUM1 > 0 and SNUM2 > 0 and SNUM2 >0) {


if (SNUM1 < SNUM2 and $NUM2 < $NUM3 ) {
print "Ordenados de menor a mayor";
}else{
print "No ordenados";

rupo

d it o r ia l

egabyte

107

Algoritmos y Diagramas de Flujo aplicados en PHP

}else{
print "Ingrese solo nmeros";
}
?>

Resultado PHP en WEB

Explicacin PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo "$" y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:
$NUM1 = 5;
$NUM2 = 6;
$NUM3 = 7;

IF iniciamos la condicin luego encerramos entre parntesis () la variable y


comparamos si algunos de los nmeros son mayores a 0.
G

rupo

E d it o r ia l M

egabyte

Captulo 2: Estructuras lgicas selectivas


if ($NUM1 > O and SNUM2 > O and $NUM2 >0) {
/ / .....
} else {
/ / .....
}
Utilizamos AND para verificar que todos cumplan la condicin caso contrario
mostrara un mensaje, sino realizara la segunda condicin y verificara si estn
ordenados de menor a mayor comparando si el ltimo nmero es mayor y el
primero es menor:

if ($NUM1 < $NUM2 and $NUM2 < SNUM3 ) {


/ / .....
} else {
/ / .....
}
El print permite imprimir los valores comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:

print "No ordenados";

La estructura de seleccin mltiple


La estructura de seleccin mltiple permite que el flujo del programa se bifurque
por varias ramas en el punto de la toma de decisin(es), esto en funcin del valor
que tome el selector. As, si el selector toma el valor 1 se ejecutar la acccin 1,
si toma el valor 2 se ejecutar la accin 2, si toma el valor N se realizar la accin
N, y si toma un valor distinto de los valores comprendidos entre 1 y N, se continuar
con el flujo normal del diagrama realizndose la accin N + 1.

Ejemplo 17
Construya un pseudocdigo que pida dos nmeros enteros y muestre por pantalla
el siguiente men:
G

rupo

d ito r ia l

egabyte

109,,

Algoritmos y Diagramas de Flujo aplicados en PHP


MEN
1. Sumar
2. Restar
3. Multiplicar
4. Dividir

Elija una opcin:


El usuario deber elegir una opcin y el programa deber mostrar el resultado y
finalizar.
Algoritmo:
Iniciar proceso
Declarar Variables
A, B, Opcin : Entero
R : Real
Leer A,B
Escribir
MENU
1. Sumar
2. Restar
3. Multiplicar
4. Dividir
Elija opcin:
Leer Opcin
Leer A, B
En caso de Opcin
Caso 1:
Caso 2:
Caso 3:
Caso 4:
Fin_Caso
Escribir R

R
R
R
R

=A+B
=A-B
=A *B
=A/ B

Terminar el proceso
110

rupo

d it o r ia l

egabyte

Captulo 2: Estructuras lgicas selectivas


Diagrama de flujo

Codificacin en PHP
<?PHP
$A = 5;
$B = 6;
$M ENU = 3;
switch (SMENU) {

rupo

d ito r ia l

egabyte

111/

Algoritmos y Diagramas de Flujo aplicados en PHP


case 1:
$R = $A + $B;
echo "Resultado $R";
break;
case 2:
SR = SA - $B;
echo "Resultado $R";
break;
case 3:
$R = $A * $B;
echo "Resultado $R";
break;
case 4:
$R = $A / $B;
echo "Resultado $R";
break;

Resultado PHP en WEB

112

rupo

d it o r ia l

egabyte

Captulo 2: Estructuras lgicas selectivas


Explicacin PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo
y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:
$A = 5;
$B = 6;
SMENU = 3;
switch evala y compara cada expresin de la sentencia case:
switch ($MENU) {
case 1:

11...
case 2:

11...
case 3:
11..
case 4:
11....
}
El p rin t permite imprimir los valores comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:
echo "Resultado $R";
E je m p lo 18
Construya un pseudocdigo , qu valide la fecha de nacimiento de una persona,
considere que el ao vlido sea mayor a 1900.
Algoritmo:
Iniciar proceso
Declarar Variables
DD, MM, AA, NDias : Entero

rupo

d it o r ia l

egabyte

111

Algoritmos y Diagramas de Flujo aplicados en PHP


Leer DD, MM, AA
En caso de MM
Caso 1 : TDias = 31
Caso 2 :
Si (AA Mod 4 =0 Y AA MOD 400 = 0) O (AA Mod
400 =0) Entonces
Hacer TDias = 29
Sino
Hacer TDias = 28
F in S i
Caso 3 : TDias = 31
Caso 4 : TDias = 30
Caso 5 : TDias = 31
Caso 6 : TDias = 30
Caso 7 : TDias = 31
Caso 8 : TDias = 31
Caso 9 : TDias = 30
Caso 10 : TDias = 31
Caso 11 : TDias = 30
Caso 12 : TDias = 31
F in C a so
Si AA>1900 Y (MM>0 Y MM<=12) Y (DD>0 Y DD<=TDias)
Escribir Fecha vlida
Si no
Escribir Fecha no vlida
Fin Si
Terminar el proceso
Diagrama de flujo

IN ICIO

/:
114

DD, MM, AA

T
G

rupo

d it o r ia l

egabyte

Captulo 2: Estructuras lgicas selectivas

Codificacin en PHP
<?PHP
$DD = 16;
$MM = 5;
$AA = 1778;
switch ($MM) {
case 1: $TD1AS = 31;
break;

rupo

d it o r ia l

egabyte

115

Algoritmos y Diagramas de Flujo aplicados en PHP


case
if (($AA % 4 = O and $AA % 400 == 0) or
($AA % 400==0)){
STDias = 29;
}else{
STDias = 28;
}
b rea k ;
case 3:

STDIAS = 31;
break;

case 4:

STDIAS = 30;
b rea k ;

case 5:

STDIAS = 31;
break;

case 6:

STDIAS = 30;
break;

case 7:

STDIAS = 31;
break;

case 8:

STDIAS = 31;
break;

case 9:

STDIAS = 30;
break;

case 10:STDIAS = 31;


break;
case U :$T D IA S = 30;
break;
case 12:STDIAS = 31;
break;

116

rupo

d ito r ia l

egabyte

Captulo 2: Estructuras lgicas selectivas

if($AA > 1900 and ($MM > 0 and $MM <= 12) and ($DD > 0 and
$DD <= $TDIAS)){
print "Fecha vlida";
}else{
print "Fecha no vlida";
}
?>
Resultado PHP en WEB

Explicacin PHP
PHP inicia con la etiqueta <?PHP y tennina con ?>, cuando escribimos las
variables le anteponemos el signo
y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:
$DD = 16;
$MM = 5;
$AA = 1778;
switch evala y compara cada expresin de la sentencia case:
switch ($MM) {
G

rupo

d ito r ia l

egabyte

117

Algoritmos y Diagramas de Flujo aplicados en PHP


case 1:

11...
case 2:
11...
case 3:
11..
case 4:
11....
}
El print permite imprimir los valores comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:
print "Fecha vlida";
print "Fecha no vlida";

Para febrero tratamos de definir cuantos das tiene el mes con la siguiente
condicin:
if (($AA % 4 == 0 and $AA % 400 == 0) or ($AA % 400==0)){
STDias = 29;
}e ls e {
STDias = 28;
}
Al final validamos si el ao es mayor de 1900 con la siguiente condicin, ntese
que tambin estamos validando el mes y el da:
if($AA > 1900 and ($MM > 0 and $MM <= 12) and ($DD > 0 and $DD <=
$TDIAS)){
print "Fecha vlida";
}else{
p rin t "Fecha no vlida";
}

1 18

rupo

d it o r ia l

egabyte

Captulo III
Estructuras
Lgicas
Repetitivas
Objetivos:

En este capitulo usted aprender a desarrollar Algoritmos


Avanzado basados en lgicas repetitivas, para luego
plasmarlo en un Diagramas de flujo y aplicarlo en el
lenguaje PHP
Contendi:

Estructura Hacer Mientras


Estructura Mientras
Estructura Desde
Ejemplos

Algoritmos y Diagramas de flojo Aplicados en PHP

Captulo 3: Estructuras lgicas repetitivas

Es muy comn encontrar en los algoritmos operaciones que se deben ejecutar un


nmero repetido de veces. Si bien las instrucciones son las mismas, los datos
sobre los que se opera varan. El conjunto de instrucciones que se ejecuta
repetidamente se llama ciclo.
Todo ciclo debe terminar de ejecutar luego de un nmero finito de veces, por lo
que es necesario en cada interaccin del mismo, evaluar las condiciones necesarias
para decidir si debe seguir ejecutndose o debe detenerse. En todo ciclo, siempre
debe existir una condicin de parada o fin de ciclo.
En algunos algoritmos podemos establecer a priori que el ciclo se repetir un
nmero definido de veces. Es decir, el nmero de repeticiones no depender de
las proposiciones dentro del ciclo. Llamaremos Desde a la escritura algortmica
repetitiva que se ejecuta un nmro definido de veces.
Por otra parte, en algunos algoritmos no podemos establecer a priori el nmero
de veces que ha de ejecutar el ciclo, sino que este nmero depender de las
proposiciones dentro del mismo. Llamaremos mientras a la estructura algortmica
repetitiva que se ejecuta mientras la condicin evaluada resulta verdadera.
TambiN tenemos la estructura Hacer Mientras.
En la prctica tanto la estructura Hacer Mientras como la estaictura Mientras se
pueden usar indistintamente para obtener un resultado.
G

rupo

d it o r ia l

egabyte

fiBBI

Algoritmos y Diagramas de Flujo aplicados en PHP

Estructura Hacer M ientras


La estructura Hacer Mientras como lo sealamos anteriormente, es la estructura
algortmica adecuada para utilizar en un ciclo que se ejecutar un nmero definido
de veces. Por ejemplo cuando necesitamos calcular la nmina total de la empresa,
tenemos que sumar los sueldos de los N empleados de la misma. Cuando
necesitamos obtener el promedio de calificaciones de un curso, debemos sumar
las N calificaciones de los alumnos y dividir esa suma entre N. Es decir, sabemos
de antemano cuntas veces tenemos que repetir una determinada operacin,
accin o trea. El nmero de repeticiones no depende de las proposiciones dentro
del ciclo. El nmero de veces se obtiene del planteamiento del problema o de una
lectura que indica que el nm ero de iteraciones se debe realizar para N
ocurrencias.
La sintaxis para esta estructura es la siguiente:
H acer
{Proceso}
M ientras (Condicin)
{Fin del ciclo}

Proceso, es cualquier operacin o conjunto de operaciones que deban ejecutarse


mientras se repita el ciclo. El ciclo se repetir siempre que la Condicin sea
verdadera, es decir se cumplir hasta que la Condicin sea falsa.
Esta estructura garantiza por lo menos una iteracin del bloque de proceso, debido
a que primero realiza el proceso y al final evala la condicin.

122

rupo

d it o r ia l

egabyte

Captulo 3: Estructuras lgicas repetitivas


Muchas veces usaremos esta estructura con el uso de un contador, y la condicin
estar ligada a dicho contador, obteniendo as la siguiente sintaxis:
V = Vi
H acer
{proceso}
Calcular V = V + INC
M ientras que (Condicin)
{Fin del ciclo}

Donde

es una variable de control

Vi

es el valor inicial.

INC

es el incremento

V (contador del ciclo, generalmente representado por las letras I, J, K, V) toma


un valor inicial (Vi) y se compara con el valor esperado en la condicin. El ciclo
se ejecuta hasta que la condicin sea verdadera. El valor de V se incrementa en
cada iteracin.
El incremento de INC por lo general es en un unidad, pero eso depende mucho de
la naturaleza del problemas, veremos casos en que el incremento ser de dos
unidades o de tres unidades, etc , en general podremos tener un incremento en X
unidades, donde X es un nmero entero.
No es una regla que los valores Vi, V, VF e INC sean enteros, veremos casos en
que ser necesario un aumento de 0.02 por ejemplo, en ese caso dichas variables
tendrn que ser reales.
En resumen las variables de control son enteras o son reales o cualquier otro
tipo, pero no pueden ser una mezcla de ambas.
Por otro lado 110 siempre tendremos incrementos, si no decrementos, en este
caso el algoritmo sufre un pequeo cambio, como mostramos a continuacin.
V=Vi
H acer

rupo

d it o r ia l

egabyte

123

Algoritmos v Diagramas de Flujo aplicados en PHP


{proceso}
Calcular V = V - INC
M ientras (Condicin)
{Fin del ciclo}
E je m p lo 1
Escriba un pseudocdigo, donde ingresado los sueldos de 10 obreros de una
fabrica, obtenga el total de los sueldos de la misma.
Pseudocdigo:
Iniciar proceso
Declarar Variables
I : Entero
TOTAL,SUELDO : Real
Hacer
1=0
TOTAL = 0
Hacer
Leer SUELDO
Calcular
TOTAL = TOTAL + SUELDO
1= 1+1

Mientras 1 < 10
Escribir TOTAL
Terminar el proceso

Codificacin en PH P
<?php
SSUELDO = 600;
SI = 0;
STOTAL = 0;

124

rupo

d ito r ia l

egabyte

Captulo 3: Estructuras lgicas repetitivas

do {

STOTAL = STOTAL + SSUELDO;


SI = SI + 1;

} while (SI < 10);

echo "Total de sueldos <br>";


echo STOTAL;
?>

D iagram a de flujo

rupo

d it o r ia l

kgabyte

125

Algoritmos y Diagramas de Flujo aplicados en PHP


R esultado PH P en WEB

Explicacin PH P
PHP trabaja con valores enviados desde un formulario en modo Get y Post por
enlace URL, en este ejemplo usted colocara los valores en el cdigo para que sea
procesado.
PHP inicia con la etiqueta < ?PH P y termina con ?>, cuando escribimos las
variables le anteponemos el signo
y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:

SSU ELD O = 600;


SI = 0;
STOTAL = 0;

El p rin t permite imprimir los valores comentarios encerrados entre comillas,


que desea mostrar en la pantalla, ejemplo:
echo "Total de sueldos <br>";
Si solo imprimir el resultado no es necesario encerarlo entre comillas, ejemplo:
echo STOTAL;
la etiqueta html < br> es para dar un salto de lnea y de esta manera evitara que
se vea todo en una lnea.
126

rupo

d it o r ia l

egabyte

Captulo 3: Estructuras lgicas repetitivas


El do ... while permite repetir una secuencia mientras $1 sea menor que < 10,
dentro de este bucle sumar una cantidad hasta 10 veces donde todo se acumulara
en STOTAL, tambin utilizamos el bucle para contar $1 el cual permitir indicarle
al while que se detenga cuando este sea menor <10, si no se define el $1, el bucle
se repetir indefinidamente:

do {

STOTAL = STOTAL + SSUELDO;


SI = $1 + 1;

} while (SI < 10);

E jem p lo 2
Escriba un pseudocdigo, que muestre la lista de aos desde 1995 hasta el 2005,
y al finalizar muestre un mensaje de lista finalizada.
Pseudocdigo:

Iniciar proceso
Declarar Variables
I : Entero
ANIO: Real
Hacer
Leer ANIO
Calcular

ANIO= ANIO + 1
1= 1+1
Escribir ANIO

Mientras I < 10
Escribir Lista Fianlizada
Terminar el proceso

rupo

d it o r ia l

egabyte

127

Algoritmos y Diagramas de Flujo aplicados en PHP


Diagrama de flujo

Codificacin en PHP

<?php

SANIO = 1995;
O
II
do {

SANIO = SANIO + 1;
echo "SANIO <br>";
SI = SI + i;

128

rupo

d it o r ia l

egabyte

Captulo 3: Estructuras lgicas repetitivas

while

($ 1 <

10);

echo "Lista Finalizada";


?>

Explicacin PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo
y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:

SANIO = 1995;
SI = 0;

rupo

E d ito r ia l M

egabyte

1 29

Algoritmos y Diagramas de Flujo aplicados en PHP


El print permite imprimir los valores comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:
echo "SANIO <br>";
echo "Lista Finalizada";
la etiqueta html <br> es para dar un salto de lnea y de esta manera evitara que
se vea todo en una lnea.

El do ... while permite repetir una secuencia mientras $1 sea menor que < 10,
dentro de este bucle sumara los aos hasta 10 veces y los ira mostrando uno por
uno echo "SANIO <br>";, tambin utilizamos el bucle para contar $1 el cual
permitir indicarle al while que se detenga cuando este sea menor <10, si no se
define el $1, el bucle se repetir indefinidamente:

do {

SANIO = SANIO + 1;
echo "SANIO <br>";
SI = SI + 1;

} while ($1 < 10);

Ejem plo 3
Escriba un pseudocdigo, que cuente del 1 al 20 cuantos nmeros son divisibles
entre 2 y muestre cuales son los nmeros.
Pseudocdigo:
Iniciar proceso
Declarar Variables
I : Entero
N: Entero
CONT: Entero

130

rupo

d it o r ia l

egabyte

Captulo 3: Estructuras lgicas repetitivas

H acer
Si N MOD 2 = 0 entonces
Escribir N
CONT = CONT + 1
F in s i
1= 1+1
N=N+ 1
Mientras I < 20
Escribir Total de nmeros divisibles entre 2: CONT
Terminar el proceso
D iagram a de flujo

rupo

d it o r ia l

egabyte

131

Algoritmos y Diagramas de Flujo aplicados en PHP


Resultado PHP en WEB

Codificacin en PHP
<?php
$1 = 0 ;

$N = 1;

do {
if ($N % 2 == 0){
echo "$N <br>";
$CONT = $CONT + 1;
}
$1 = $1 + 1;

SN = $N + 1;

s m

rupo

d it o r ia l

egabyte

Captulo 3: Estructuras lgicas repetitivas

} while ($1 < 20);


echo "Total de nmeros divisibles entre 2: SCONT";
?>

Explicacin PH P
PHP inicia con la etiqueta < ?PH P y termina con ?>, cuando escribimos las
variables le anteponemos el signo "$ " y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:

$1 = 0;
$N = 1;
El print permite imprimir los valores comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:
echo "$N <br>";
echo "Total de nmeros divisibles entre 2: SCONT";
la etiqueta html <br> es para dar un salto de lnea y de esta manera evitara que
se vea todo en una lnea.

El do ... while permite repetir una secuencia mientras $1 sea menor que < 20,
dentro de este bucle sumara los N nmeros 20 veces y los ira mostrando echo
"$N <br>", solo los nmeros divisibles entre 2.

Para esto utilizamos un $N % 2 == 0, que cuando cumpla la condicin muestre


el numero divisible y cuente SCONT = SCONT + 1, tambin utilizamos $1 el
cual permitir indicarle al while que se detenga cuando este sea menor <20, si no
se define el $1, el bucle se repetir indefinidamente:

Estructura Mientra
Es muy similar a la anterior Hacer.. Mientras, solo que en este caso primero
evaluamos la condicin y luego evaluamos el bloque de cdigo.
G

rupo

d it o r ia l

egabyte

1 33

Algoritmos y Diagramas de Flujo aplicados en PFIP


En la estructura mientras se distinguen dos partes:

- Ciclo: Conjunto de instrucciones que se ejecutarn repetidamente.


- Condicin de terminacin: La evaluacin de esta condicin pennite decidir
cuando finalizar la ejecucin del ciclo. La condicin se evala al inicio del mismo.
Esta estructura se ejecuta mientras que la condicin es verdadera, en caso contrario
terminar el ciclo.

Debe existir tambin un anunciado dentro del ciclo que afecte la condicin, para
evitar que el ciclo se ejecute indefinidamente. En lenguaje algortmico de la
estructura mientras la expresamos de esta forma:

M ientras Condicin
{PROCESO}
Fin M ientras

Ejem plo 4
Escriba un pseudocdigo, donde ingresado los sueldos de 20 obreros de una
fbrica, obtenga el total de los sueldos de solo 10 obreros y muestre el sueldo por
cada obrero.
134

rupo

d it o r ia l

egabyte

Captulo 3: Estructuras lgicas repetitivas


Pseudocdigo:
Iniciar proceso
Declarar Variables
NUM: Entero
SUELDO: Real
TOTAL: Real
Hacer NUM = 1
Leer SUELDO
Mientras NUM < 20
Calcular TOTAL = TOTAL + SUELDO
Escribir NUM, SUELDO
Si NUM = 10 entonces
break
Fin_si
NUM = NUM + 1
Fin Mientras
Escribir TOTAL
Terminar proceso

Codificacin en PHP
<?php
SNUM

= 1;

SSUELDO = 500;

while ($NUM < 20) {


STOTAL = STOTAL + SSUELDO;
echo "SNUM = SSUELDO <br>";
if (SNUM == 10){
break;
}
G

rupo

d it o r ia l

egabyte

1 35

Algoritmos y Diagramas de Flujo aplicados en PHP

SN U M ++;
}
echo "Total de sueldos a la mitad: STO TAL";
?>

D iagram a de flujo

Explicacin PH P
PHP inicia con la etiqueta < ?PH P y termina con ?>, cuando escribimos las
variables le anteponemos el signo "$" y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:
136

rupo

d ito r ia l

egabyte

Captulo 3: Estructuras lgicas repetitivas

SNUM

= 1;

SSUELDO = 500;
El p rin t permite imprimir los valores comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:
echo "SNUM = SSUELDO <br>";
echo "Total de sueldos a la mitad: STOTAL";
la etiqueta html <br> es para dar un salto de lnea y de esta manera evitara que
se vea todo en una lnea.

El while permite repetir una secuencia mientras SNUM sea menor que < 20,
dentro de este bucle sumara los sueldos de 20 trabajadores y los ira mostrando
echo "SNUM = SSUELDO <br>". Note que solo debe mostrara hasta 10
trabajadores y para esto utilizamos SNUM == 10, para cuando cumpla la
condicin automticamente se detendr con break, y mostrara la suma STOTAL
de sueldos. En SNUM++ es igual que SNUM = SNUM + 1.
Resultado PHP en WEB

rupo

d it o r ia l

egabyte

137

Algoritmos y Diagramas de Flujo aplicados en PHP

Ejemplo 5
Escriba un pseudocdigo, que muestre la lista de aos desde 2000 hasta el 2010,
y que se detenga cuando en la lista encuentre el ao actual.
Pseudocdigo:
Iniciar proceso
Declarar Variables
NUM: Entero
ANIO: Real
Hacer NUM = 1
Mientras NUM < 10
Calcular ANIO = ANIO + 1
Escribir ANIO
Si ANIO = YEAR entonces
break
F in s i
NUM = NUM + 1
FinM ientras
Terminar proceso

Codificacin en PHP
<?php
$NUM = 1;
SANIO = 2000;

while (SNUM < 10) {


SANIO = SANIO + 1;
echo "SANIO <br>";
if (SANIO == date("Y")){
break;
G

rupo

d it o r ia l

egabyte

Captulo 3: Estructuras lgicas repetitivas


}
$N U M ++;
}
?>

Resultado PHP en WEB

Explicacin PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo
y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:
$NUM = 1;
$A N 10 = 2000;
El print permite imprimir los valores comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:
G

rupo

E d it o r ia l M

egabyte

1 39

Algoritmos y Diagramas de Flujo aplicados en PHP

echo "SANIO <br>";


la etiqueta html <br> es para dar un salto de lnea y de esta manera evitara que
se vea todo en una lnea.

El while permite repetir una secuencia mientras SNUM sea menor que < 10,
dentro de este bucle sumara los aos y los ira mostrando echo "SANIO <br>";
Note que solo debe mostrara hasta el aos actual y para esto utilizamos SANIO
== date("Y"), para cuando cumpla la condicin automticamente se detendr
con break.
Diagrama de flujo

140

rupo

d it o r ia l

egabyte

Captulo 3: Estructuras lgicas repetitivas

Ejemplo 6
Escriba un pseudocdigo, que cuente del 1 al 20 cuantos nmeros NO son divisibles
entre 2 y muestre cuales son los nmeros, y al finalizar debe sumar todos los
nmeros y mostrar un Total.
Pseudocdigo:
Iniciar proceso
Declarar Variables
I: Entero
N : Entero
SUM:Real
Hacer N = 1
Mientras I < 20
Si N MOD % 2 <> 0 entonces
Escribir N
Calcular SUM = SUM + N
Fin_si
N=N + 1
1= 1+1
Fin Mientras
Escribir Suma de nmeros NO divisibles entre 2: SUM
Terminar proceso
Codificacin en PHP
< ?php
$1 = 0;
$N = 1;

while ($1 < 20) {


if ($N % 2 <> 0){

rupo

d ito r ia l

egabyte

141

Algoritmos y Diagramas de Flujo aplicados en PHP

echo "$N < b r> ";


$SUM = $SUM + $N;
}
$I++;
$N ++;
}
echo "S um a de nm eros NO divisibles entre 2: $SU M ";
?>

D iagram a de flujo

142

rupo

d it o r ia l

egabytf

Captulo 3: Estructuras lgicas repetitivas


Resultado PHP en WEB

Explicacin PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo "$ " y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:
$1 = 0;
$N = 1;
El print permite imprimir los valores comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:

echo "$N <br>";


la etiqueta html <br> es para dar un salto de lnea y de esta manera evitara que
se vea todo en una lnea.
El while permite repetir una secuencia mientras $1 sea menor que < 20, dentro
de este bucle sumara los N nmeros 20 veces y los ira mostrando echo "$N
< b r> ", solo los nmeros NO divisibles entre 2.
G

rupo

d it o r ia l

egabyte

143

Algoritmos y Diagramas de Flujo aplicados en PHP


Para esto utilizamos un $N % 2 o 0, que cuando cumpla la condicin muestre
el numero NO divisible y cuente $N++, tambin contamos $I++ el cual permitir
indicarle al while que se detenga cuando este sea menor <20, si no se define el $1,
el bucle se repetir indefinidamente.

Estructura Desde
Cuando se sabe el nmero de interacciones que tendrn que ejecutarse cierta
cantidad de acciones, es recomendable usar la estructura Desde, esta estructura
no solo ejecuta un nmero de acciones, adems cuenta internamente el nmero
de interaciones, esto elimina la necesidad de un contador, lo que no sucede con
las estructuras Mientras y Hacer Mientras.
A continuacin veremos el pseudocdigo de flujo con su respectivo algoritmo
para la estructura:
Desde I = Vi Hasta V f INC
H acer
Acciones
Fin Desde

I: Variable de tipo entero, representa la variable de control del ciclo.


Vi: Variable de tipo entero, representa el inicio del ciclo.
Vf: Variable de tipo entero, representa el final del ciclo.
INC: Expresin de tipo entero. Representa el incremento/decremento de la
variable de control, cuando se omite esta expresin se supone que el incremento
es en una unidad.

mm

rupo

d ito r ia l

egabyte

Captulo 3: Estructuras lgicas repetitivas


Cualquier bucle FOR puede ser sustituido por otro WHILE. Sin embargo, el
bucle FOR resulta muy til cuando debemos ejecutar un bloque de cdigo a
condicin de que una variable se encuentre entre un valor mnimo y otro mximo.
E je m p lo 7
Escriba un pseudocdigo, que muestre el total de nmeros divisibles y no divisibles
entre 3 en un rango del 1 al 50.
Pseudocdigo:
Iniciar proceso
Declarar Variables
NUM : Entero
SD : Real
ND: Real
Hacer S = 0
Desde NUM = 1 Hasta 50 INC NUM = NUM + 1 Hacer
SI NUM % 3 = 0 entonces
Calcular: SD = SD + 1
Sino
Calcular: ND = ND + 1
F in S i
Fin Desde
Escribir SD, SD
Terminar proceso

Codificacin en PH P
<?php
for ($num = 1; $num <=50; $num++){
if ($num % 3 == 0){

$SD = $SD + 1;

rupo

d ito r ia l

egabyte

1 45

Algoritmos y Diagramas de Flujo aplicados en PHP

}e lse {
$ND = $ND + 1;
}
}
echo "Si Divisible $SD < b r> ";
echo "No Divisible $ND < b r> ";
?>

146

rupo

d it o r ia l

egabyte

Captulo 3: Estructuras lgicas repetitivas


Resultado PHP en WEB
S
| A rch ivo
3 b
^

r a f c f c jl
"Editar

V er

Ir

M a rca d o re s

H e rra m ie n ta s
h t t p :/ /jo e l v

P rim eros p a so s

A j/u d a

<Q\r

0
Q l_

, ltim as n o tic ia s

Si Divisible 16
No Divisible 34

L isto

Explicacin PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo
y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:
Snum = 1
El print permite imprimir los valores comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:

echo "Si Divisible $SD <br>";


echo "No Divisible $ND <br>";

la etiqueta html <br> es para dar un salto de lnea y de esta manera evitara que
se vea todo en una lnea.

El for (Snum = 1; Snum <=50; $num ++) permite iniciar NUM desde NUM
= 1, luego detiene el for cuando NUM sea menor igual <= a 50 y crea un contador
para que repita el bucle NUM++ que es igual a NUM = NUM + 1.
G

rupo

d it o r ia l

egabyte

147

Algoritmos y Diagramas de Flujo aplicados en PHP


Con if creamos la condicion donde si es numero divisible lo contara y almacenara
en SD y los no divisibles en ND.

if ($num % 3 == 0){
$SD = $SD + 1;
}else{
$ND = $ND + 1;
}
E je m p lo 8
Escriba un pseudocdigo, que genere la tabla de multiplicar del 5 y muestre los
resultados lnea por lnea.
Pseudocdigo:
Iniciar proceso
Declarar Variables
NUM : Entero
R : Real
Desde NUM = 1 Hasta 10 INC NUM = NUM + 1 Hacer
Calcular: R = NUM * 5
Escribir 5 * NUM = R
F in D e sd e
Terminar proceso

Codificacin en PHP

<?php
for ($num = 1; $num <=10; $num++){
SR = $num * 5;

148

rupo

d it o r ia l

egabyte

Captulo 3: Estructuras lgicas repetitivas


echo "5 * $nuni = $R <br>";
}
?>
Diagrama de flujo

Resultado PHP en WEB

rupo

d it o r ia l

egabyte

1 49

Algoritmos y Diagramas de Flujo aplicados en PHP


Explicacin PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo
y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:
Snum = 1

El print permite imprimir los valores comentarios encerrados entre comillas,


que desea mostrar en la pantalla, ejemplo:

echo "5 * $num = $R <br>";

la etiqueta html <br> es para dar un salto de lnea y de esta manera evitara que
se vea todo en una lnea.

El for ($num = 1; $nuni <=10; $num++) permite iniciar NUM desde NUM
=1, luego detiene el for cuando NUM sea menor igual <= a 10 y crea un contador
para que repita el bucle NUM++ que es igual a NUM = NUM + 1.

En $R = Snum * 5 multiplicamos el primer numero por 5 y lo almacenamos en R


para luego mostrarlo.

Ejem plo 9
Escriba un pseudocdigo, que genere la tabla de multiplicar del 1 al 9 y muestre
los resultados lnea por lnea.
Pseudocdigo:

Iniciar proceso
Declarar Variables
NUM : Entero
TABLA : Entero
R : Real

150

rupo

d ito r ia l

egabyte

Captulo 3: Estructuras lgicas repetitivas

Desde TABLA = 1 Hasta 9 INC TABLA = TABLA+ I Hacer


Desde NUM = 1 Hasta 10 INC NUM = NUM + 1 Hacer
Calcular: R = NUM * TABLA
Escribir TABLA * NUM = R
F in D e sd e
Fin_Desde
Terminar proceso

Diagrama de flujo

rupo

d it o r ia l

egabyte

151

Algoritmos y Diagramas de Flujo aplicados en PHP


Codificacin en PHP

<?php
for (Stabla = 1; $tabla <=9; $tabla++){

for ($num = 1; Snum <=10; $num++){


$R = Snum * Stabla;
echo "Stabla * Snum = $R <br>";
}
echo "<br><br>";
}
?>

Resultado PHP en WEB

152

rupo

d it o r ia l

egabyte

Captulo 3: Estructuras lgicas repetitivas


Explicacin PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo "$" y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:
Stabla = 1
$num = 1
El print permite imprimir los valores comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:

echo "$tabla * $num = $R <br>";

la etiqueta html <br> es para dar un salto de lnea y de esta manera evitara que
se vea todo en una lnea.

El for ($num = 1; $num <=10; $num++) permite iniciar NUM desde NUM
=1, luego detiene el for cuando NUM sea menor igual <= a 10 y crea un contador
para que repita el bucle NUM++ que es igual a NUM = NUM + 1. igualmente
para for (Stabla = 1; Stabla <=9; $tabla++)

En $R = $num * $yabla multiplicamos el primer numero por Syabla y lo


almacenamos en R para luego mostrarlo.
En resumen el primer bloque creara una secuencia del 1 al 9 donde utilizaremos
esta variables Slab la para multiplicarlo con el segunda variable $num del segundo
bloque.
E je m p lo 10
Escriba un pseudocdigo, que halle el nmero de trmino para la progresin
siguiente: 1 ,2 ,4 ,....... ,20000
Pseudocdigo:
Iniciar proceso
Declarar Variables

rupo

d ito r ia l

egabyte

153

Algoritmos y Diagramas de Finjo aplicados en PHP

I: Entero
C : Entero
hacer: C = 0
Desde I = 1 Hasta 20000 INC I = I * 2
C = C+ 1
F in D e sd e
Escribir C
Terminar proceso

Codificacin en PHP

<?php
$c = 0;
for ($1 = 1; $1 <= 20000; $I*=2){
$c++;
echo "Nmeros: $c <br>";
}
?>
Diagrama de flujo

154

rupo

d it o r ia l

egabyte

Captulo 3: Estructuras lgicas repetitivas


Resultado PHP en WEB

Explicacin PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo "$" y luego ingresamos el valor para cada
variable entre comillas y finalizando con
ejemplo:
$c = 0;
El print permite imprimir los valores comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:

echo "Nmeros: $c <br>";

la etiqueta html <br> es para dar un salto de lnea y de esta manera evitara que
se vea todo en una lnea.

El for ($ 1 = 1 ; $1 <= 20000; $I*=2) permite iniciar 1 desde 1 =1, luego detiene
el for cuando I sea menor igual <= a 20000 y crea un contador para determinar
el termino de la progresin en bucle $ I *= 2
G

rupo

d it o r ia l

egabyte

1 55

Captulo IV
Arreglos
Arrays
Objetivos:

En este capitulo usted aprender a desarrollar Algoritmos


Avanzado basados en Arreglos, para luego plasmarlo en
un Diagramas de flujo y aplicarlo en el lenguaje PHP
Contendi:

Que es un array?
Arrays asociativos
arrays Multidimensionales
array_slice()
arrayshiftf)

unsetf)
array_push()
Ejemplos

Algoritmos y Diagramas de flujo Aplicados en PHP

Captulo 4: Arreglos - Arrays

Que es un array?
El array ( matriz) es un tipo de variable, que no contiene un nico valor, sino un
almacena un conjunto de valores referenciados con un ndice. Es muy utilizado e
imprescindible, y se puede encontrar en todos los lenguajes de programacin.
NOTA: En este capitulo explicaremos primero como trabajar el arrays
en PHP posteriorm ente se explicara algunos ejem plos mas avanzados
donde se aplicara con algoritmos y diagramas de fujo.

Existen dos formas de crear arrays, esttica o dinmicamente


Para crear arrays de forma esttica usamos php array() con la siguiente sintaxis:

Array array([n]=>|valor], [n2]=>[valor], [n3|=>[vaIor| ...)

Ejemplo 1
Para almacenar nombres de ciudades. Podramos usar variables simples, ejemplo:
G

rupo

d ito r ia l

egabyte

159

Algoritmos y Diagramas de Flujo aplicados en PHP


<?php

Sciudades = array(
0=>"Lima",
l=>"Ica",
2=>" Arequipa",
3=>"Tacna");

?>

De esta manera obtenemos un array con una lista indexada de las ciudades.
Sabemos que el primer valor corresponde al ndice cero, el segundo al uno, y as
sucesivamente.

Para recuperar cualquier valor especfico refirindonos a su ndice escribir


simplemente el siguiente cdigo:
<?php

echo $ciudades|3];

?>
Tambin se puede crear arrays dinmicamente, solo agregando nuevos valores.
Por ejemplo:
<?php

$eiudades|4| = "T rujillo";

?>
160

rupo

d it o r ia l

egabyte

Captulo 4: Arreglos - Arrays


Resultado PHP en WEB

Agregando el valor al array. Tambin por este mismo sistema se puede modificar
el valor de un array, e incluso aadir valores sin asignar ndice, que ser agregado
automticamente por PHP:
<?php

$ciudades[] = "Piura";

?>
De esta manera podemos acceder a este ultimo valor utilizando $ciudades[5]

arrays asociativos
Permite usar strings como ndices, es decir, cadenas de texto como ndices. Este
tipo de array es conocido como array asociativo:
E je m p lo 2
<?php

Sciudades = arrav(
"Lima"=>"Miraflores",
G

rupo

d it o r ia l

egabyte

161

Algoritmos y Diagramas de Flujo aplicados en PHP

"Arequipa"=>"Camana",
"Loreto"=>" Amazonas");

echo $ciudades[Arequipa|;

?>

Resultado PHP en WEB

Listo

arrays Multidimensionales
Un array multidimensional puede almacenar a su vez otro arrays:

Ejem plo 3
<?php

Sagenda = array("direccion" => "Lima N 400",


"telefono" => Stelefonos,
"email"

1 62

=> "user@user.com");

rupo

d ito r ia l

egabyte

Captulo 4: Arreglos - Arrays

Stelefonos = array("trabajo" => "2306440",


"casa"
"mvil"

=> "2459512",
=> "9228900");

?>

y podemos acceder a los valores de la siguiente manera:

<?php

echo $agenda['telefono']['casa'] = "2459512";

?>

Resultado PHP en WEB

array_slice()
Con array_silce puede restar el nmero de casillas de un arreglo, teniendo en
cuenta los ndices de las casillas que deseamos conservar.
G

rupo

d ito r ia l

egabyte

163

Algoritmos y Diagramas de Flujo aplicados en PHP

Ejemplo 4
<?
Sfrutas = array ("Manzana", "Pera", "Pltano", "Ciruela", "Fresa");

Ssalida = arra y slice (Sfrutas, 0, 3);


foreach (Ssalida as Smostrar)
echo "Smostrar <br>";
echo "<p>";

Ssalida = array slice (Sfrutas, 3, 5);


foreach (Ssalida as Smostrar)
echo "Smostrar <br>";
echo "<p>";

Ssalida = array slice (Ssalida, 1);


foreach (Ssalida as Smostrar)
echo "Smostrar <br>";
echo "<p>";
?>
Explicacin:
Primero creamos el array con nombres de frutas y lo almacenamos en una variable
Sfrutas:

Sfrutas = array ("Manzana", "Pera", "Pltano", "Ciruela", "Fresa");

Ahora con array_slice encerramos la variable Sfrutas donde contaremos desde


la primera fruta "0" hasta la tercera fruta "3" y el resultado lo almacenamos en la
variable Ssalida.
164

rupo

d it o r ia l

egabyte

Captulo 4: Arreglos - Arrays


Resultado PHP en WEB

Luego con foreach encerramos la variable $salida, donde estn los nombres de
frutas que deseamos ver, los nuevos nombres se mostraran como "AS" variable
Smostrar donde con "echo" lo mostramos.

Ssalida = arra y slice (Sfrutas, 0, 3);


foreach (Ssalida as Smostrar)
echo "Smostrar <br>";
echo "<p>";

Para este segundo bloque solo le indicamos que muestre despus del tercer nombre
hasta el quinto.

Ssalida = arra y slice (Sfrutas, 3, 5);


foreach (Ssalida as Smostrar)
echo "Smostrar <br>";
echo "<p>";
G

rupo

d ito r ia l

egabyte

1 65

Algoritmos y Diagramas de Flujo aplicados en PHP


Para reste tercer bloque solo le indicamos que muestre solo un nombre basndose
en el segundo bloque.

Ssalida = a rrayslice ($salida, 1);


foreach (Ssalida as Smostrar)
echo "Smostrar <br>";
echo "<p>";

array_shift()
Extrae el primer elemento del array y lo devuelve. Adems, acorta la longitud del
array eliminando el primer elemento del array.

Ejem plo 5
<?
Sfrutas = array ("Manzana", "Pera", "Pltano", "Ciruela", "Fresa");

Ssalida = a rra y sh ift (Sfrutas);


echo "La funcin devuelve: " . Ssalida . "<br>";

foreach (Sfrutas as Smostrar)


echo "Smostrar <br>";
echo "<p>";

Ssalida = array shift (Sfrutas);


echo "La funcin devuelve: " . Ssalida . "<br>";

foreach (Sfrutas as Smostrar)


echo "Smostrar <br>";
?>
166

rupo

d it o r ia l

egabyte

Captulo 4: Arreglos - Arrays


Resultado PHP en WEB

Explicacin:
Primero creamos el array con nombres de frutas y lo almacenamos en una variable
Sfrutas:
Sfrutas = array ("Manzana", "Pera", "Pltano", "Ciruela", "Fresa");

Ahora con array shif't encerramos la variable Sfrutas luego los almacenamos en
la variable Ssalida y luego con echo mostrar el primer nombre de la fruta del
arrays.
Ssalida = array shift (Sfrutas);
echo "La funcin devuelve: " . Ssalida . "<br>";

Luego con foreach encerramos la variable Sfrutas, donde estn los nombres de
frutas que deseamos ver, los nuevos nombres se mostraran como "AS" variable
Smostrar donde con "echo" lo mostramos, noten que no se mostrar el primer
nombre de la fruta.
G

rupo

d ito r ia l

egabyte

167

Algoritmos y Diagramas de Flujo aplicados en PHP


foreach (Sfrutas as $mostrar)
echo "Smostrar <br>";
echo "<p>";

Para este segundo realizara el mismo proceso pero tomando el nuevo arreglo del
primer bloque, noten que el primer nombre del primer bloque no se muestra.

$salida = array_shift ($frutas);


echo "La funcin devuelve: ". Ssalida . "<br>";

foreach ($frutas as Smostrar)


echo "Smostrar <br>";

unset()
Permite eliminar una variable. En el caso de los arrays, se puede utilizar para
eliminar una casilla de un array asociativo solo los que tienen como ndices a una
cadena de caracteres.
E je m p lo 6

<?
$frutas = array ("frutal" => "Manzana", "fruta2" => "Pera", "fruta3"
=> "Pltano", "fruta4" => "Ciruela", "frutaS" => "Fresa");

foreach (Sfrutas as Smostrar)


echo "Smostrar <br>";
echo "<p>";

unset ($frutas("fruta3"]);

168

rupo

d it o r ia l

egabyte

Capitulo 4: Arreglos - Arrays

foreach (Sfrutas as Smostrar)


echo "Smostrar <br>";

?>
Resultado PH P en WEB

Explicacin:
Primero creamos el array con nombres de frutas y cada nombre con su ndice y
lo almacenamos en una variable Sfrutas:
Sfrutas = array ("frutal" => "Manzana", "fruta2" => "Pera", "fruta3"
=> "Pltano", "fruta4" => "Ciruela", "fruta5" => "Fresa");

Luego con foreach encerramos la variable Sfrutas, donde estn los nombres de
frutas que deseamos ver, los nuevos nombres se mostraran como "AS" variable
Smostrar donde con "echo" lo mostramos.
G

rupo

d it o r ia l

egabyte

169

Algoritmos y Diagramas de Flujo aplicados en PHP


foreach (Sfrutas as Smostrar)
echo "Smostrar <br>";
echo "<p>";

Ahora con unset encerramos la variable Sfrutas luego le indicamos el ndice que
tiene que eliminar.

unset (Sfrutas["fruta3"]);

Ahora mostramos el nuevo arreglo con ndice eliminado:

foreach (Sfrutas as Smostrar)


echo "Smostrar <br>";

array_push()
Permite insertar al final del array una serie de casillas. Por tanto, el nmero de
casillas del array aumentar de acuerdo a la cantidad de elementos que se haya
ingresado.
E je m p lo 7

<?
Sfrutas = array ("Manzana", "Pera", "Pltano", "Ciruela", "Fresa");

array_push($frutas, "Papaya", "Cereza", "Meln");

foreach (Sfrutas as Smostrar)


echo "Smostrar <br>";
?>

170

rupo

d it o r ia l

egabyte

Captulo 4: Arreglos - Arrays


Resultado PH P en WEB

Explicacin:
Primero creamos el array con nombres de frutas y lo almacenamos en una variable
Sfrutas:

Sfrutas = array ("Manzana", "Pera", "Pltano", "Ciruela", "Fresa");

Ahora con array_push encerramos la variable Sfrutas y a continuacin aadimos


los dems nombres que se agregaran el arrays.
array push($frutas, "Papaya", "Cereza", "Meln");
Ahora mostramos el nuevo arreglo con los nombres aadidos:

foreach (Sfrutas as Smostrar)


echo "Smostrar <br>";
G

rupo

d ito r ia l

egabyte

171

Algoritmos y Diagramas de Flujo aplicados en PHP


array _merge()
La funcin array_merge(). Permite unir unos ms arrays y devuelve un arreglo
con todos los campos de los vectores pasados.

Ejem plo 8
<?

Sfrutas = array ("Manzana", "Pera", "Pltano", "Ciruela", "Fresa");


Smascotas = array ("Gato", "Loro", "Perro", "Canario", "Paloma");
SFechas = array ("14:03:2005", "20:10:2006", "19:08:2006");

Sresultado = array_merge($frutas, Smascotas, SFechas);

foreach (Sresultado as Smostrar)


echo "Smostrar <br>";

?>

Explicacin:
Primero creamos los arrays y lo almacenamos en variables:

Sfrutas = array ("Manzana", "Pera", "Pltano", "Ciruela", "Fresa");


Smascotas = array ("Gato", "Loro", "Perro", "Canario", "Paloma");
SFechas = array ("14:03:2005", "20:10:2006", "19:08:2006");

Ahora con array_merge encerramos las variable Sfrutas, Smascotas y SFechas.


Sresultado = array_merge($frutas, Smascotas, SFechas);
172

rupo

d it o r ia l

egabyte

Captulo 4: Arreglos - Arrays


Resultado PHP en WEB

Ahora mostramos todos los arreglos:

foreach (Sresultado as Smostrar)


echo "Smostrar <br>";

Finalizando Arrays PHP


En este capitulo se ha explicado el manejo de arrays en PHP, esta es una forma
fcil de aprender ya que puede ejecutar los ejem plos en PHP y ver su
funcionamiento y de esta manera entenderlo mejor. Si aun no le quedo claro, le
explicare un resumen que es lo que hace exactamente.
Si ha revisado los captulos anteriores, habr notado que para almacenar una
palabra o numero en una variable se realizaba lo siguiente:
G

rupo

d it o r ia l

egabyte

Algoritmos y Diagramas de Flujo aplicados en PHP


Snombres = Joel De la Cruz;
En la variable Snombres se ha almacenado un nombre con apellido, para luego
mostrarlo de la siguiente manera:
echo Snombres;
Pero ahora si desea almacenar mas nombres pero en la misma variable Snombres
que utilizara? ... Array!!! Correcto, entonces haramos lo siguiente:
Snombres = array ("Joel De la Cruz
Mejia", Cristhian De la Cruz);

"Carmen Mejia", "Karol

En la variable Snombres se ha almacenado todos estos nombres con apellidos,


para luego mostrarlo de la siguiente manera:
foreach (Snombres as Smostrar)
echo "Smostrar <br>";
Utilizamos foreach para que muestre toda la cadena de caracteres lnea por
lnea y sea mas til trabajarlo.

En que caso se utiliza array PHP?


Se puede usar para desarrollar un carrito de compras, en este caso se trabaja con
sessiones y estas sessiones se aaden en un arrays, que luego puede mostrar al
usuario los productos que esta comprando.
Otro caso tambin es cuando se desea borrar una lista de registros, ejemplo:
cuando borrar sus correos en Hotmail o Yahoo seleccionando varios checkbok.

Ejem plo 9
Construya un pseudocdigo, que busque el nombre de una persona en un arreglo
que contega 5 datos personas.
Pseudocdigo:
Iniciar proceso
Declarar Variables
BUCAR : Carcter
MOSTRAR : Carcter
NOMBRES: Arreglo
1 74

rupo

d it o r ia l

egabyte

Captulo 4: Arreglos - Arrays


Desde

NOMBRES como MOSTRAR Hacer


SI MOSTRAR = BUSCAR entonces
Escribir: Nombre Encontrado
Fin si

F in D esd e
Terminar proceso

D iagram a de flujo

rupo

E d it o r ia l M

egabyte

175

Algoritmos y Diagramas de Flujo aplicados en PHP


Codificacin en PHP
<?
Sbuscar = "Carmen";

Snom bres = array ("Joel", "C arm en", "C arol", "C risthian",
"Mary");
foreach (Snombres as Smostrar)

if (Smostrar == $buscar){
echo "Nombre Encontrado: Smostrar";
}
?>
Resultado PHP en WEB

Ejem plo 10
Construya un pseudocdigo, que inserte el nombre de una persona en un arreglo
y luego muestre el nombre insertado..
176

rupo

d ito r ia l

egabyte

Captulo 4: Arreglos - Arrays


Pseudocdigo:
Iniciar proceso
Declarar Variables
INSERTAR : Carcter
MOSTRAR : Carcter
NOMBRES: Arreglo
Hacer NOMBRES, INSERTAR
Desde
NOMBRES como MOSTRAR Hacer
SI MOSTRAR = INSERTAR entonces
Escribir: Nombre Insertado
Fin_si
F in D e sd e
Terminar proceso

rupo

d it o r ia l

egabyte

177

Algoritmos y Diagramas de Flujo aplicados en PHP

Resultado PHP en WEB

<^3

P rim eros pasos

h tt p :/ /jo e l. '*'

Ir

id

ltim as noticias

Nombre Insertado: Sagi

Listo

Codificacin en PHP
<?
Sinsertar = "Sagi";
178

rupo

d ito r ia l

egabyte

Snom bres = array ("Joel", "C arm en", "C arol", "C risthian",

Captulo 4: Arreglos - Arrays

foreach (Snombres as Smostrar)

if (Smostrar == $insertar){
echo "Nombre Insertado: Smostrar";
}
?>
E je m p lo 11
Construya un pseudocdigo, que elimine el nombre de una persona en un arreglo
y luego busque en el arreglo para comprobar si el nombre ha sido eliminado.
Pseudocdigo:
Iniciar proceso
Declarar Variables
ELIMINAR : Carcter
MOSTRAR : Carcter
NOMBRES, INDICE: Arreglo
Hacer NOMBRES, ELIMINAR
Desde
NOMBRES como INDICE -AMOSTRAR Hacer
SI MOSTRAR o ELIMINAR entonces
Escribir: Nombre Eliminado
F in s i
F in D e sd e
Terminar proceso

Diagrama de flujo

s----------(

r ijpo

d ito r ia l

egabyte

INICIO

179

Algoritmos y Diagramas de Flujo aplicados en PHP

Codificacin en PHP
<?
Seliminar = "NI";

Snom bres = array ("N I" =>"JoeI", "N2" =>"C arm en", "N3"
=>"Carol", "N4" =>"Cristhian", "N5" =>"Mary");

unset ($nombres[$eliminarj);
foreach (Snombres as $indice=>$mostrar)
if (Smostrar <> $indice){

180

rupo

E d it o r ia l M

egabyte

Captulo 4: Arreglos - Arrays

echo "N om bre elim inado < b r> ";


}
?>

Resultado PH P en WEB

Ejem plo 12
Construya un pseudocdigo, que busque a un empleado por su cdigo y le aumente
el sueldo en 2.5 y muestre el nuevo sueldo.

Pseudocdigo:
Iniciar proceso
Declarar Variables
CODIGO : Carcter
MOSTRAR : Carcter
SUELDOS, INDICE: Arreglo
NSUELDO: Real
G

rupo

d ito r ia l

egabyte

181

Algoritmos y Diagramas de Flujo aplicados en PHP

Desde

SUELDOS como INDICE - MOSTRAR Hacer


SI CODIGO = INDICE entonces
calcular NSUELDO = MOSTRAR * 2.5
Escribir: Nuevo sueldo: NSUELDO
F in si

F in D e sd e
Terminar proceso

D iagram a de flujo

Captulo 4: Arreglos - Arrays


Codificacin en PHP
<?
Scodigo = "CD-278";

$sueldos = array ("AB-234" =>"600", "CD-278" =>"500", "SD120" =>"300");


foreach (Ssueldos as $indice=>$m ostrar)
if ($codigo == $indice){

$nsueIdo = $mostrar * 2.5;


echo "Nuevo Sueldo Scodigo Snsueldo <br>";
}
?>
Resultado PHP en WEB

Ejem plo 13
Construya un pseudocdigo, que muestre los nombres y notas aprobatorias de 5
alumnos del aula A y 5 alumnos del aula B, utilice 2 arreglos y tome como nota
aprobatoria mayor a 13.
G

rupo

d it o r ia l

egabyte

183

Algoritmos y Diagramas de Flujo aplicados en PHP


Pseudocdigo:
Iniciar proceso
Declarar Variables
INDICE: Carcter
MOSTRAR : Carcter
A, B, RESULTADO : Arreglo
Hacer RESULTADO = A, B
Desde
RESULTADO como INDICE A MOSTRAR Hacer
SI MOSTRAR > 13 entonces
Escribir: INDICE, MOSTRAR
Fin si
F in D e sd e
Terminar proceso

Diagrama de flujo

184

rupo

d it o r ia l

egabyte

Captulo 4: Arreglos - Arrays

R esultado P H P en W EB

Codificacin en PH P
<?

SA = array ("Juan" =>"12", "Carlos" =>"16", "Jorge" =>"10",


"Ricardo" =>"5", "Sagi" =>"20");
$B = array ("Maria" =>"7", "Luis" =>"18", "Alberto" =>"15",
"Sergio" =>"11", "Marco" =>"0");

Sresultado = array merge($A, SB);


G

rupo

d it o r ia l

egabyte

1 85

Algoritmos y Diagramas de Flujo aplicados en PHP


foreach (Sresultado as $indice=>$mostrar)
if (Smostrar > 13){
echo "Sindice -- Smostrar <br>";
}
?>
E je m p lo 14
Construya un pseudocdigo, que muestre los nombres y notas desaprobatorias de
5 alumnos del aula A y 5 alumnos del aulaB , utilice 2 arreglos y tome como nota
desaprobatoria menor a 13, Importante: El resultado debe mostrarse en un
arreglo.
Pseudocdigo:
Iniciar proceso
Declarar Variables
INDICE: Carcter
MOSTRAR : Carcter
A, B, RESULTADO : Arreglo
Hacer RESULTADO = A, B
Desde

RESULTADO como INDICE -> MOSTRAR Hacer


SI MOSTRAR > 13 entonces
Eliminar: INDICE
F in s i

F in D e sd e
Desde

RESULTADO como INDICE -> MOSTRAR Hacer


Escribir: INDICE, MOSTRAR

F in D e sd e
Terminar proceso
Diagrama de flujo

186

INICIO

rupo

d it o r ia l

egabyte

Captulo 4: Arreglos - Arrays

Codificacin en PH P
<?
$A = array ("Juan" =>"12", "Carlos" =>"16", "Jorge" =>"10",
"Ricardo" =>"5", "Sagi" =>"20");
$B = array ("Maria" =>"7", "Luis" =>"18", "Alberto" =>"15",
"Sergio" =>"11", "Marco" =>"0");

rupo

d ito r ia l

egabyte

187

Algoritmos y Diagramas de Flujo aplicados en PHP


Sresultado = array_merge($A, $B);
foreach (Sresultado as $indice=>$mostrar)
if (Smostrar > 13){
unset ($resultado[$indice|);
}
foreach (Sresultado as $indice=>$mostrar)
echo "Sindice Smostrar <br>";
?>

Resultado PHP en WEB

Ejem plo 15
Construya un pseudocdigo, donde se pueda ingresar el nombre de un persona en
un arreglo, al final debe mostrar 2 lista, la primera donde todava no sea ingreso el
nombre y la segunda cuando el nombre de haya ingresado.
188

rupo

d it o r ia l

egabyte

Captulo 4: Arreglos - Arrays


Pseudocdigo:
Iniciar proceso
Declarar Variables
INSERTAR: Carcter
MOSTRAR : Carcter
NOMBRES : Arreglo
Desde

NOMBRES como MOSTRAR Hacer


Escribir: MOSTRAR

F in D e sd e
Hacer INSERTAR
Desde
NOMBRES como MOSTRAR Hacer
Escribir: MOSTRAR
Fin_Desde
Terminar proceso

D iagram a de flujo

rupo

d ito r ia l

egabyte

189

Algoritmos y Diagramas de Flujo aplicados en PHP

Resultado PHP en WEB

Codificacin en PHP
<?
Sinsertar = "Joel";

190

rupo

d ito r ia l

egabyte

Captulo 4: Arreglos - Arrays


Snombres = array ("Juan", "Pepe", "Mara", "Carol", "Luis");

foreach (Snombres as Smostrar)


echo "Smostrar <br>";
echo "<p>";

array_push($nombres, Sinsertar);

foreach (Snombres as Smostrar)


echo "Smostrar <br>";
?>

E je m p lo 16
Construya un pseudocdigo, que busque en un arreglo el ao actual y lo resalte.
Pseudocdigo:

Iniciar proceso
Declarar Variables
ANIO: Real
VARANIOS : Real
MOSTRAR : Real
Desde
VARANIOS como MOSTRAR Hacer
Si MOSTRAR =f ANIO
Escribir: M O STRA R
S in o
Escribir: MOSTRAR
Fin Si
F in D e sd e
Terminar proceso

rupo

d it o r ia l

egabyte

191

Algoritmos y Diagramas de Flujo aplicados en PHP


Diagrama de flujo

Codificacin en PHP
<?
Sanio = "20".date("y");
Svaranios = array ("2005", "2006", "2007","2008", "2009");
foreach (Svaranios as Smostrar)

if (Smostrar == $anio){
echo "<b>$mostrar</b><br>";
} else {
echo "Smostrar <br>";
}
?>
192

rupo

d it o r ia l

egabyte

Captulo 4: Arreglos - Arrays


Resultado PHP en WEB

E je m p lo 17
Construya un pseudocdigo, seleccione un arreglo desde una condicin, utilizando
IF... else...
Pseudocdigo:
Iniciar proceso
Declarar Variables
CONDICION: Real
NOMBRES : cadena
TELEFONOS : cadena
PAIS : cadena
Hacer CONDICION = 2
Si condicin = 1
Desde
NOMBRES como MOSTRAR Hacer
Escribir: MOSTRAR
Fin_Desde
S in o
Si condicin = 2

rupo

d ito r ia l

egabyte

1 93

Algoritmos y Diagramas de Flujo aplicados en PHP

Desde

TELEFONOS como MOSTRAR Hacer

Escribir: MOSTRAR
F in D e sd e
Fin Si
S in o
Si condicin = 3
Desde
PAIS como MOSTRAR Hacer
Escribir: MOSTRAR
F in D e sd e
Fin_ Si
F in S i
Terminar proceso

Diagrama de flujo

194

rupo

d ito r ia l

egabyte

Captulo 4: Arreglos - Arrays

Codificacin en PHP
<?
Scondicion = 2;
SNombres = array ("Mary", "Carol", "Luis", "Juan", "Markus");
STelefonos = array ("234-5467", "897-2345", "123-4357", "2784532", "120-3234");
SPais = array ("Per", "Brasil", "Chile", "Ecuador", "Bolivia");

if (Scondicion == 1){
foreach (SNombres as Smostrar)
echo "Smostrar <br>";
}elseif (Scondicion ==2){
foreach (STelefonos as Smostrar)
echo "Smostrar <br>";

rupo

d it o r ia l

egabyte

195

Algoritmos y Diagramas de Flujo aplicados en PHP

}elseif ($condicion ==3){


foreach (SPais as Smostrar)
echo "Smostrar <br>";
}
?>

Resultado PHP en WEB

E je m p lo 18
Construya un pseudocdigo, seleccione un arreglo desde una condicin, utilizando
CASE
Pseudocdigo:
Iniciar proceso
Declarar Variables
OPCION: Real
NOMBRES : cadena

196

rupo

d it o r ia l

egabyte

Captulo 4: Arreglos - Arrays


TELEFONOS : cadena
PAIS : cadena
Hacer OPCION = 3
Caso = 1
Desde
NOMBRES como MOSTRAR Hacer
Escribir: MOSTRAR
F in D e sd e
Caso = 2
Desde

TELEFONOS como MOSTRAR Hacer


Escribir: MOSTRAR
F in D e sd e
Fin_ Si

Caso = 3
Desde

PAIS como MOSTRAR Hacer


Escribir: MOSTRAR
F in D e sd e

Terminar proceso
D iagram a de flujo

rupo

d it o r ia l

egabyte

197

Algoritmos y Diagramas de Flujo aplicados en PHP

Codificacin en PHP
<?
$opcion = 3;
SNombres = array ("Mary", "Carol", "Luis", "Juan", "Markus");
STelefonos = array ("234-5467", "897-2345", "123-4357", "2784532", "120-3234");
SPais = array ("Per", "Brasil", "Chile", "Ecuador", "Bolivia");

switch (Sopcion) {

case "1":
foreach (SNombres as $mostrar)
echo "Smostrar <br>";
case "2":
foreach (STelefonos as Smostrar)
echo "Smostrar <br>";
case "3":

198

rupo

d it o r ia l

egabyte

Captulo 4: Arreglos - Arrays


foreach (SPais as Smostrar)
echo "Smostrar <br>";
}
?>

Resultado PHP en WEB

E je m p lo 19
Construya un pseudocdigo, que calcule el tipo de cambio en dlares euros,
utilizando un arreglo.
Pseudocdigo:
Iniciar proceso
Declarar Variables
TIPO: Real
CANTIDAD : Real
MONEDAS : Cadena
Hacer CANTIDAD = 250
G

rupo

d ito r ia l

egabyte

199

Algoritmos y Diagramas de Flujo aplicados en PHP

Desde

MONEDAS como INDICE -> MOSTRAR Hacer


Si INDICE = TIPO
TOTAL = MOSTRAR * CANTIDAD
Escribir: MOSTRAR
F in S i

F in D e sd e
Terminar proceso

D iagram a de flujo

200

rupo

d it o r ia l

egabyte

Captulo 4: Arreglos - Arrays


Codificacin en PHP
<?
Stipo

= "Dolar";

$canti(lad

= 250;

$monedas = array ("Dolar" =>"3.215", "EURO" =>"3.315");


foreach (Smonedas as $indice=>$mostrar)

if (Sindice == $tipo){
Stotal = Smostrar * Scantidad;
echo "Total Stipo: Stotal";
}
?>

Resultado PHP en WEB

Ejemplo 20
Construya un pseudocdigo, que muestre las notas de los alumnos seleccionando
un cdigo.
G

rupo

d it o r ia l

egabyte

201

Algoritmos y Diagramas de Flujo aplicados en PHP


P seudocdigo:
Iniciar proceso
Declarar Variables
CODIGO: Real
NOTAS : cadena
MOSTRAR : Real
Hacer CODIGO = 1
Caso = 1
Hacer NOTAS
Caso = 2
Hacer NOTAS
Caso = 3
Hacer NOTAS
Desde

NOTAS como INDICE -> MOSTRAR Hacer


Escribir: INDICE MOSTRAR

F in D e sd e
Terminar proceso
Diagrama de flujo

202

rupo

d it o r ia l

egabyte

Captulo 4: Arreglos - Arrays

Codificacin en PHP
<?
$codigo = 1;
switch (Scodigo) {

case "1":
Snotas = array ("NT1" =>"12", "NT2" =>"15", "NT3" =>"10",
"NT4" =>"9");
case "2":
$notas = array ("NT1" =>"16", "NT2" =>"3", "NT3" =>"18",
"NT4" =>"4");
case "3":
$notas = array ("NT1" =>"4", "NT2" =>"11", "NT3" =>"19",
"NT4" =>"20");
}

rupo

d it o r ia l

ecabvtf

203

Algoritmos y Diagramas de Flujo aplicados en PHP


foreach ($notas as $indice=>$mostrar)
echo "Sindice $mostrar<br>";
?>

R esultado PH P en WEB

Ejem plo 21
Construya un pseudocdigo, que genere un arreglo con datos personales y luego
que se muestren.
Pseudocdigo:
Iniciar proceso
Declarar Variables
NOMBRES: Carcter
APELLIDOS: Carcter
TELEFONO: Carcter
EMAIL: Carcter
DATOS: Cadena
MOSTRAR: Carcter
Hacer DATOS = NOMBRES, APELLIDOS, TELEFONO, EMAIL
G

rupo

d ito r ia l

egabyte

Captulo 4: Arreglos - Arrays


Desde

DATOS como INDICE -> MOSTRAR Hacer


Escribir: INDICE MOSTRAR

F in D e sd e
Terminar proceso

Diagrama de flujo

Codificacin en PHP
<?

$Nom bres

= "Joel";

SApeidos

= "De la Cruz";

STelefono

= "241-5239";

$email

= "email@mymail.com";

rupo

d ito r ia l

egabyte

205

Algoritmos y Diagramas de Flujo aplicados en PHP


Sdatos = array ("Nom bres" =>"$Nom bres ", "Apellidos"
= > " $ A p elIid o s" , "T elefono" = > " $ T elefo n o " , "em ail"
=>"$email");

foreach ($datos as $indice=>$mostrar)


echo "Sindice $mostrar<br>";
?>

Resultado PHP en WEB

E je m p lo 22
Construya un pseudocdigo, que genere un arreglo desde un for y muestre los
resultados.
Pseudocdigo:
Iniciar proceso
Declarar Variables
VAR: Cadena
ANIO: Real
206

rupo

d it o r ia l

egabyte

Captulo 4: Arreglos - Arrays


MOSTRAR: Real
Desde

I = 1 Hasta 10 INC 1 = I + 1
Calcular ANIO = I + 1995
Hacer VAR = [ANIO]

Fin Desde
Desde

VAR como MOSTRAR Hacer


Escribir: MOSTRAR

F in D e sd e
Terminar proceso

Diagrama de flujo

rupo

d it o r ia l

egabyte

207

Algoritmos y Diagramas de Flujo aplicados en PHP

Resultado PHP en WEB

Prim eros pasos

<'

h ttp ://jo e l

'

Q Ir

m lt mas n oticias

<?php
1996
1997
$var = array ();
1998
for ($i=l; $i <= 10 ; $i++) {
1999
2000
2001 $anio = Si + 1995;
2002

2003
2004
208
2005

rupo

d it o r ia l

egabyte

Captulo 4: Arreglos - Arrays

array_push($var, Sanio);

}
foreach (Svar as Smostrar)
echo "Smostrar <br>;
echo "<p>";

?>

E je m p lo 23
Construya un pseudocdigo, que cuente los variables de un arreglo..
Pseudocdigo:
Iniciar proceso
Declarar Variables
PARTES: Cadena
NUMELENTQS: Real
Desde

I = 0*Hasta NUMELENTOS INC I = I' + 1


Escribir: La parte I es PARTES

FinJDesde
Terminar proceso
Diagrama de flujo

rupo

d it o r ia l

egabyte

209

Algoritmos y Diagramas de Flujo aplicados en PHP

Resultado PHP en WEB

Primeros pasos

La parte
La parte
La parte
La parte

[0

h ttp ://jo e l v :

Ir j [ C L

ltimas no t cias

0 es Teclado
1 es Monitor
2 es Mouse
3 es Webcam

Listo

Codificacin en PHP
<?php
S p artes = a rra y (" T ecla d o " ,
"Webcam");

" M on itor" ,

Snumelentos
= count(Spartes);
210
for ($i=0; Si < Snumelentos; $i++) {

rupo

" M ouse",

d ito r ia l

egabyte

Esta impresin se realizo


en los talleres grficos de
Grupo editorial Megabyte
L IM A - P E R

El libro de algoritmos esta compuesto de 4 captulos que


contiene teora y ejemplos bsicos de programacin, el
algoritmo es el inicio de la programacin porque esta
conformado de pseudocdigos y diagramas de flujo que dan
una visin amplia de como debe iniciarse y finalizar una
programacin basada en operadores, estructuras selectivas,
estructuras repetitivas y manejo de arreglos.
El pseudocdigo no es directamente un lenguaje de
programacin que se pueda ejecutar en un computador y
probar su correcto funcionamiento y tampoco indica si esta
correctamente colocado los bloques de cdigo, ya que cada
lenguaje de programacin como C, C++, JavaScript, entre
otros, trabaja sus funciones distintamente a otros, pero
siempre manteniendo la lgica inicial de algoritmos. Por esta
razn el libro contiene ejemplos aplicados en PHP, dado que
PHP es un lenguaje que se ejecuta desde un servidor este
trabaja muy bien cuando se le indica lo que tiene que hacer
desde las variables.

Вам также может понравиться