algoritmos y diagramas de flujo aplicados en php - megabyte-freelibros.org

212

Upload: balder61

Post on 26-Dec-2015

262 views

Category:

Documents


12 download

DESCRIPTION

computacion

TRANSCRIPT

Page 1: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org
Page 2: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Megabyte

Page 3: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

MegabyteG R U P O E D I T O R T A L

Primera Edición, Octubre 2006

Á rea : C o m p u ta c ió n e In fo rm á ticaH e c h o e l D e p ó s ito L e g a l en la B ib lio te ca N a c io n a l de l P erú

N 9 2 0 0 6 - 9 7 8 6 (L ey N 9 2 6 9 0 5 / D .S . N 9 0 1 7 -9 8 -E D ) R .U .C . N9 2 0 5 0 7 9 9 3 4 4 4 IS B N : 9 9 7 2 - 821 - 85 - 4

© E d w a rd A b u rto C o rre aG e re n te G e n e ra l___________

© Jo e l d e la C ru z V illa rA u to r ______________

© G e a n C a r io 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 PHPDerechos Reservados / 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 ia l d e e s te l i b r o , su t r a t a m ie n t o in f o r m á t ic o la t ra 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 lq u ie r o t r o m e d io y a se a e le c t r ó n ic o , m e c á n ic o , p o r f o to c o p ia , p o r re g is t r o u o t r o s m é to d o s s in p e rm is o p re v io y p o r e s c r i to d e lo s t i t u la r e s d e C o p y r ig h t .

D is tr ib u c ió n y V e n ta sJr. R u fin o T o rrico 8 8 9 o f. 20 8 - C e rca d o d e L im a Te le fa x : 3 3 2 -4 1 1 0 N ex te l: 4 0 7 *4 5 1 5

w w w .g r u p o m e g a b y te . c o m v e n ta s @ g r u p o m e g a b y te .c o m w w w .e d i to 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 itoS/. 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

Page 4: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Dedicatoria

D edicatoria

En memoria de un gran Amigo E.B.A. C. y a

Carmen Rosa por su apoyo en la realización de esta

obra

G r u p o E d i t o r i a l M e g a b y t e 5

Page 6: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Contenido de CD

Contenido del CDEl CD incluye todos los ejemplos explicados en libro en formato Web, cada ejemplo esta en un archivo con extensión PHP que tiene que ser ejecutado desde un servidor LIN UX, UNIX ó Windows que soporte paginas PHP desde la versión 4.x a superior, también es recomendable utilizar Intente Explorer 6 a superior ó Firefox, para poder ser apreciados sin problemas.

Usted puede cambiar los valores de las variables que están en la parte superior de cada archivo y probarlos, no es recomendable editar el código al menos que tenga el conocimiento para realizarlo.

Los ejemplos no requieren dependencias como base de datos u otros programas, también puede ejecutarse desde cualquier directorio Web.

Page 8: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Indice

/

IndiceIntroducción............................................................................................................... 15

Capítulo I Conceptos BásicosAlgoritmos.................................................................. 19

Programa........................................................................................................... 19Heurística.......................................................................................................... 20Diagrama de flujo.............................................................................................20Variables............................................................................................................ 22Constantes........................................................................................................ 22Expresiones.......................................................................................................22

Operadores...............................................................................................................22Aritméticos........................................................................................................ 22Relaciónales.....................................................................................................23Lógicos............................................................................................................... 23AND (Y)..............................................................................................................23OR (O)................................................................................................................24

NOT (NO).................................................................................................................. 24Prioridad de los O peradores....................................................................... 24

ENTRADA / SALIDA de datos.............................................................................. 24LEER.................................................................................................................. 25

G r u p o E d i t o r i a l M e g a b y t e 9

Page 9: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

ESCRIBIR...................................................'...................................................... 25Tipos de datos escalares.......................................................................................25Asignaciones............................................................................................................ 26Declaración de variables........................................................................................26Técnicas de desarrollo de algoritmos.................................................................26Pseudocódigo............................................................................................................28Ejemplo 1: Imprimir el área de un triángulo....................................................... 28Ejemplo 2: Formando una o ra c ió n ..................................................................... 31Ejemplo 3: Escriba el resultado de la siguiente expresión Aritmética 33Ejemplo 4: Promedio de sus calificaciones....................................................... 35Ejemplo 5: Calcular peso expresado en kilogramos y su altura expresada en metros............................................. 37Ejemplo 6: Convertir Euros a nuevos soles.......................................................39Ejemplo 7: Mostrar la fecha y hora actual..........................................................41Ejemplo 8: Convertir en Euros y Dólares 2 cantidades................................... 43Ejemplo 9: Calcular el área de un triangulo.......................................................45Ejemplo 10: Calcular el área y volumen de una pelota................................... 48Ejemplo 11: Calcularla distancia entre dos postes de alumbrado público 50Ejemplo 12: Calcular el porcentaje de una encuesta....................................... 53Ejemplo 13: Calcular el radio y la altura de un c ilind ro ................................... 55

Capítulo II Estructuras lógicas selectivasEstructura Si...Entonces (Selección simple)......................................................... 62Ejemplo 1: Buscar un c o lo r ..................................................................................62Ejemplo 2: Mostrar nota menor igual.................................................................. 64Ejemplo 3: calcular cantidad menor igual.......................................................... 66Ejemplo 4: Aplicar aumento de sueldo................................................................68

10 G r u p o E d i t o r i a l M e g a b y t e

Page 10: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

índice

Estructura Si...Entonces...Si no (Alternativa doble).........................................70Ejemplo 5: Mostrar mensaje de acuerdo a una condición................................ 71Ejemplo 6: Mostrar mensaje de acuerdo a una nota aprobatoria........................ 73Ejemplo 7: Realizar tipo de cambio de acuerdo al valor de la moneda 75Ejemplo 8: Aplicar aumento de acuerdo al sueldo......................................... 77Anidamiento de Estructuras condicionales......................................................... 80Ejemplo 9: Validar el aumento de un empleado................................................. 81Ejemplo 10: Aplicar y validar aumentos.............................................................85Ejemplo 11: ordenar cantidades.......................................................................... 89Ejemplo 12: Mostrar mensaje de acuerdo a una nota................................... 93Ejemplo 13: validar y mostrar un mensaje si el número es par/impar. 96Ejemplo 14: Validar edades de niños................................................................ 99Ejemplo 15: Mostrar mensaje si existe un numero repetido......................... 103Ejemplo 16: Ordenar números de menor a mayor........................................... 106La estructura de selección múltiple....................................................................109Ejemplo 17: calcular 2 valores en un menú de selección.............................. 109Ejemplo 18: Validar fecha de nacimiento.......................................................... 113

Capítulo III Estructuras Lógicas RepetitivasEstructura Hacer Mientras.................................................................................... 122Ejemplo 1: Obtener el total de su e ldo s ........................................................... 124Ejemplo 2: Listar a ñ o s .........................................................................................127Ejemplo 3: Contar números divisibles...............................................................130Estructura Mientras.................................................................................................133Ejemplo 4: Obtener el total de sueldos de 10 obreros................................. 134

Ejemplo 5. Lista los años del 2000 al 2010......................................................138

G r u p o E d i t o r i a l M e g a b y t e 11

Page 11: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Ejemplo 6: Mostrar cuantos números NO son divisibles entre 2 ...................141Estructura Desde................................................................................................... 144Ejemplo 7: Mostrar el total de números divisibles y no div isib les.................145Ejemplo 8: Generar la tabla de multiplicar del 5.............................................. 148Ejemplo 9: Generar la tabla de multiplicar del 1 al 9......................................150Ejemplo 10: hallar el número de término para la progresión siguiente: 1, 2,4 ,....... ,*20000.......................................................................................................... 153

Capítulo IV Arreglos- Arrays¿Que es un array?.................................................................................................159

Ejemplo 1: Almacenar nombres de ciudades.............................................. 159arrays asociativos.................................................................................................. 161

Ejemplo 2: Ejemplo asociativos.................................................................. 161arrays Multidimensionales.................................................................................... 162

Ejemplo 3: Ejemplo Multidimensionales.....................................................162array_s lice()............................................................................................................163

Ejemplo 4: Ejemplo array_slice()............................................................... 163array_sh ift()............................................................................................................ 166

Ejemplo 5: Ejemplo array_shift()................................................................. 166unset().......................................................................................................................168

Ejemplo 6: Ejemplo u n se t()........................................................................ 168a rray_push()...........................................................................................................170

Ejemplo 7: Ejemplo array_push()............................................................... 170Finalizando Arrays PHP........................................................................................ 173En que caso se utiliza array PHP?.................................................................... 174Ejemplo 9: Busque el nombre de una persona en un arreglo.........................174

12 G r u p o E d i t o r i a l M e c a b y t e

Page 12: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Indice

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

G r u p o E d i t o r i a l M e g a b y t e 13

Page 13: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org
Page 14: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Introducción

IntroducciónEl libro de algoritmos esta compuesto de 4 capítulos que contiene teoría y ejemplos básicos de programación, el algoritmo es el Inicio de la programación porque esta conformado de pseudocódigos y diagramas de flujo que dan una visión amplia de como debe iniciarse y finalizar una programación basada en operadores, estructuras selectivas, estructuras repetitivas y manejo de arreglos.

El pseudocódigo no es directamente un lenguaje de programación que se pueda ejecutar en un computador y probar su correcto funcionamiento y tampoco indica si esta correctamente colocado los bloques de código, ya que cada lenguaje de programación como C, C++, JavaScript, entre otros, trabaja sus funciones distintamente a otros, pero siempre manteniendo la lógica inicial de algoritmos. Por esta razón 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.

G rl p o E d i t o r i a l M e g a b y t e 15

Page 15: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org
Page 16: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo IConceptosBásicos

O b j e t i v e s :

En este capitu lo usted a p r e n d e r a d es arro l la r Algori tmos Bás ico s b asad o s en o p e ra d o re s a r i tm é t ic o s , pa ra luego p l a s m a r lo en un D i a g r a m a s de f lu jo y a p l i c a r lo en el l e n g u a je PHP.

C o n t e n d i ó :A lg o r i tm o sO p erad o resE N T R A D A /S A L ID A de datosTipos de datos esca laresA s i g n a c io n e sD ec larac ión de variablesTécn icas de desarro l lo de a lgor i tm osP s e u d o c ó d ig oE je m p lo s

Page 17: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org
Page 18: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 1: Conceptos básicos

Los algoritmosConstituyen un listado de instrucciones que indican el camino a seguir para dar solución a un problema.

Se puede decir que un algoritmo es la suma de una parte lógica, mas una parte de control, en donde la parte lógica especifica el conocimiento en la solución del problema y la parte de control es la estrategia para solucionar el problema.

Características de los algoritmos- 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 solución al problema o de lo contrario mostrar un mensaje que diga "Sin solución"

ProgramaUn programa esta definido por un "algoritmo", porque forma el conjunto de instrucciones que forman el algoritmo (codificados en un lenguaje de programación) y que se procesa en una computadora para solucionar un problema específico.

G r u p o E d i t o r i a l M e g a b y t e 19

Page 19: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

HeurísticaL'n algoritmo que da o produce una solución a un problema planteado aunque esta solución no sea la óptima es llamado "Heurístico".

Diagrama de flujoEl diagrama de flujo es una representación gráfica 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 Gráfico 1)

Algoritmos v Diagramas de Flujo aplicados en PHP

Gráfico 1

2 0 G r u p o E d i t o r i a l M e g a b y t e

Page 20: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 1: Conceptos básicos

Los símbolos del diagrama mas comunes son:

Terminal: Se usa para indicar el inicio o fin de un diagrama de flujo

Proceso: Cualquier tipo de operación que pueda originar cambio de valor, operaciones aritméticas, de transformaciones, etc.

Entrada/Salida: Se usa para indicar el ingreso o salida de datos.

Salida: Se utiliza para mostrar datos, será el símbolo usado en este texto.

Conector: Sirve para enlazar dos partes cualesquiera de un diagrama a través de un conector en la salida y otro conector en la entrada.

Salida: Indica operaciones lógicas o de comparación entre datos y en función del resultado determina cual camino alternativo del programa se debe seguir.

En caso de: Usado para indicar varias acciones posibles según sea un dato de entrado al control.

Desde: Estructura repetitiva q indica un ciclo de N repeticiones de una o mas acciones.

G r u p o E d i t o r i a l M e g a b y t e 21

Page 21: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

VariablesSe utilizan para contener datos de distintos tipos: números, letras, cadenas de caracteres, valores lógicos, etc. El valor contenido en una variable puede cambiar a lo largo de la ejecución de un programa.

ConstantesSon elementos que contienen datos, el valor asignado a una constante es fijo y no se puede cambiar durante toda la ejecución de un programa.

ExpresionesLas expresiones son combinaciones de constantes, variables, simbolos de operación, paréntesis y nombres de funciones especiales.

Por ejemplo:

A + ( B + 3 ) / C

Cada expresión toma un valor que se determina tomando los valores de las variables y constantes implicadas y la ejecución de las operaciones implicadas.

Una expresión consta de operadores y operandos. Según sea el tipo de datos que manipulan, se clasifican las expresiones en:

AritméticasRelaciónales

Lógicas

Operadores

A ritm éticos

Los operadores aritméticos permiten realizar cualquier operación aritmética (suma, resta, multiplicación y división).

En la siguiente tabla se muestran los operadores.

2 2 G r u p o E d i t o r i a l M e c a b y t e

Page 22: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 1: Conceptos básicosO p e ra d o r A c c ió n E je m p lo R e s u lta d o

- Resta x = 5 - 3 2+ Suma x = 2 + 3 5* Multiplicación x = 2 * 3 6/ División x = 6 / 2 3A Potencia x = 3 A 2 9

MOD Módulo x = 5 MOD 2 1DIV División entera x= 5 DIV 2 2

El operador MOD devuelve el residuo de una división entera, mientras que el operador DIV permite realizar una división entre dos números enteros, alli rádica la diferencia con el operador «/».

R elaciónalesPermiten evaluar las relaciones entre un par de operandos. Los operadores relaciónales son:

Operador Acción> M ayor que

>= M ayor o igual que< M enor que

<= M enor o igual que= Igual

!= o o Distinto

L ógicosLos operadores lógicos producen un resultado booleano, y sus operandos son también valores lógicos o asimilables a ellos (los valores numéricos son asimilados a cierto o falso según su valor sea cero o distinto de cero).

Los operadores lógicos son tres; dos de ellos son binarios, el último (negación) 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 r u p o E d i t o r i a l M e g a b y t e 23

Page 23: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

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 OperadoresLos operadores deben ser evaluados según la siguiente prioridad

1 - 0 2 .- A

3.- *, /, Mod, Not

4.- +, And

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

ENTRADA / SALIDA de datosLos dispositivos de entrada / salida permiten que el usuario interactúe 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 básicas de estos dispositivos, permitiéndole 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 G r u p o E d i t o r i a l M e g a b y t e

Page 24: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 1: Conceptos básicos

LEERPermite 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, también se usa para enviar un mensaje al operador. La sintaxis es la siguiente:

ESCRIBIR Variable

ESCRIBIR ‘Texto’ESCRIBIR Expresión

Veamos unos ejemplos, según sean las sintaxis anteriores respectivamente

ESCRIBIR ResultadoEsta instrucción devuelve el contenido de la variable Resultado

ESCRIBIR ‘Prepárese para el ingreso de datos’Esta instrucción muestra al usuario el contenido de los apostrofes, nótese que para poder mostrar un texto este debe ir encerrado en apostrofes o comillas según el lenguaje que utilice.

ESCRIBIR 4*n

Esta instrucción primero calcula la expresión 4*n y luego muestra ese resultado.

Tipos de datos escalaresSon aquellos tipos de datos cuyos miembros están compuestos por un solo ítem (dato). Los tipos de datos escalares nativos son aquellos tipos de datos escalares que ya están implementados en el lenguaje junto a sus respectivas operaciones.

Entre estos tipos de datos tenemos Entero, Real, Carácter, Booleano; más adelante veremos otros tipos de datos.

G r u p o E d i t o r i a l M e g a b y t e 2 5

Page 25: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

AsignacionesUna asignación 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 = 5De manera similar podemos tener la siguiente asignación

A = 4 + (3 * Y A2)

vemos que una expresión a sido asignada a la variable A

Algunos autores usan el símbolo en vez de igual ( = ) para una asignación.

Declaración de variablesMediante la declaración de variables describimos las características de las mismas. La sintaxis que usaremos es la siguiente:

N om b red evariab le : TipoEntiéndase por tipo, al tipo de dato de la variable.

Técnicas de desarrollo de algoritmosExisten dos principales técnicas de diseño de algoritmos de programación, el Top Down y el Bottom Up.

Top Down

También conocida como de arriba-abajo y consiste en establecer una serie de niveles de mayor a menor complejidad (arriba-abajo) que den solución al problema. Consiste en efectuar una relación entre las etapas de la estructuración de forma que una etapa jerárquica y su inmediato inferior se relacionen mediante entradas y salidas de información. Este diseño 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 utilización de la técnica de diseño Top-Down tiene 3 objetivos básicos:

- Simplificación del problema y de los subprogramas de cada descomposición.

2 6 G r u p o E d i t o r i a l M e g a b y t e

Page 26: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 1: Conceptos básicos

- 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 módulos lo que hace mas sencilla su lectura y mantenimiento.

Bottom UpEl diseño ascendente se refiere a la identificación de aquellos procesos que necesitan computarizarse conforme vayan apareciendo, su análisis como sistema y su codificación, o bien, la adquisición de paquetes de software para satisfacer el problema inmediato.

Cuando la programación se realiza internamente y haciendo un enfoque ascendente, es difícil llegar a integrar los subsistemas al grado tal de que el desempeño global, sea fluido. Los problemas de integración entre los subsistemas son sumamente costosos y muchos de ellos no se solucionan hasta que la programación alcanza la fecha limite para la integración 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 duplicación de esfuerzos para acceder el software y mas aún 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 organización no fueron considerados y en consecuencia no se satisfacen.

Entonces...La diferencia entre estas dos técnicas de programación 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 solución basada en un enfoque ascendente (Bottom Up): creando programas que satisfacían sólo 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 r u p o E d i t o r i a l M e g a b y t e 27

Page 27: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

soluciones presentadas no era compatible la una con la otra, no representaba una globalidad, característica principal de los sistemas.

Como no hubo un previo análisis, diseño de una solución a nivel global en todos sus provincias, centralización de información, que son características propias de un diseño Descendente (Top Down) y características fundamentales de los sistemas; el pais no puede satisfacer su necesidad a nivel global.

La creación de algoritmos es basado sobre la técnica descendente, la cual brinda el diseño ideal para la solución de un problema.

PseudocódigoDiremos que una notación es un pseudocódigo si mediante ella podemos describir el algoritmo, utilizando palabras y frases del lenguaje natural sujetas a unas determinadas reglas.

Todo pseudocódigo debe posibilitar la descripción de:

- Instrucciones de entrada / salida.

- Instrucciones de proceso.

- Sentencias de control del flujo de ejecución.

- Acciones compuestas, a refínar posteriormente.

Para entender mejor estos conceptos veamos algunos ejemplos.

Ejemplo 1

Elabore un algoritmo y su pseudocósigo para calcular e imprimir el área de un triángulo.

Solución:

Declarar Variables

B,H : real

Entrada: (datos a introducir al computador)

Base = B

Altura = H

2 8 G r u p o E d i t o r i a l M e g a b y t e

Page 28: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 1: Conceptos básicos

Operación: Calcular área del triángulo (Base x Altura)/2

Salida: (Resultado que mostrará el computador)

Pseudocódigo:

1. Iniciar proceso2. Declarar variables

H : real B : real A : real

3. LEER B4. LEER H5. A = ( B * H ) / 26. ESCRIBIR A7. Terminar el proceso

Explicación Pseudocódigo:

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 operación entre estas dos variables también sea del tipo real, por eso "A" también es del tipo real.

3.- Leemos el valor de la variables "B", por ejemplo digamos el valor introducidosea "6"4.- Leemos el valor de la variable "H", para este ejemplo ingresemos "10".

5.- Calculamos la expresión (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 operación, 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 r u p o E d i t o r i a l M e g a b y t e 2 9

Page 29: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

A continuación crearemos el diagrama de flujo de este ejercicio y luego su codificación en Lenguaje PHP:

Diagrama de flujo Codificación en PHP

<?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

3 0 G r u p o E d i t o r i a l M e g a b y t e

Page 30: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 1: Conceptos básicos

Explicación 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 línea y de esta manera evitara que se vea todo en una línea.

Ejemplo 2Construya un pseudocódigo, que dados los datos A, B y C que representan palabras, escriba los mismos formando una oración.

Pseudocódigo:

1. Iniciar proceso

2. Declarar variables

A, B, C: Carácter

3. LEERA, B, C

4. ESCRIBIRA, B, C

5. Terminar el proceso

G r u p o E d i t o r i a l M e g a b y t e 31

Page 31: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Diagrama de flujo

Resultado PHP en WEB

Codificación en PHP

<?PHP

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

$C = "Blanca";

print "Resultado: <BR>";

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

?>

32 G r u p o E d i t o r i a l M e g a b v t e

Page 32: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 1: Conceptos básicos

Explicación:

Primero almacenamos las palabras en cada variable, luego lo imprimimos en una cadena para formar la oración

Ejemplo 3Construya un pseudocódigo, que dado los datos enteros A, B y C, escriba el resultado de la siguiente expresión:

(A + B - C) 3

5

Pseudocódigo:

1. Iniciar proceso2. Declarar variables

A, B y C : Entero R : Real

3. LEER A, B y C4. Calcular R = ((A + B - C)A3)/54. ESCRIBIR R5. Terminar el proceso

Diagrama de flujo Codificación en PHP

<?PHP

$A = 3

$B = 6

$C = 4;

$R = pow(($A+$B-$C),3)/5;

print "Resultado: <BR>";

print $R;

?>

G r u p o E d i t o r i a l M e g a b y t e 33

Page 33: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Resultado PHP en WEB

Explicación 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 numérico, 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 línea y de esta manera evitara que se vea todo en una línea.

3 4 G r u p o E d i t o r i a l M e g a b y t e

Page 34: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 1: Conceptos básicos

Ejemplo 4Construya un pseudocódigo, que dado el código del carnet universitario y 4 notas de un alumno obtenidas a lo largo del semestre; construya un pseudocódigo imprima la codigo del carnet del alumno y el promedio de sus calificaciones.

Pseudocódigo:

1. Iniciar proceso2. Declarar variables

CODIGO : Entero largo N I, N2, N3, N4, PRO : Real

3. LEER Mat, N I, N2, N3, N44. Calcular PRO = (NI + N2 + N3 + N4)/44. ESCRIBIR MAT, PRO5. Terminar el proceso

Diagrama de flujo Codificación en PHP

<?PHP

SCODIGO = "AB-2006";

$N1 = 16

$N2 = 11

$N3 = 18

$N4 = 15

SPRO = ($Nl+$N2+$N3+$N4)/4;

print "Codigo: SCODIGO <br>";

print "Promedio: SPRO

?>

G r u p o E d i t o r i a l M e g a b y t e

Page 35: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Resultado PHP en WEB

Explicación 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 = ($Nl+$N2+$N3+$N4)/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

3 6 G r u p o E d i t o r i a l M e g a b y t e

Page 36: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 1: Conceptos básicos

Si solo imprimirá el resultado no es necesario encerarlo entre comillas, ejemplo:

print $PRO;

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

Ejemplo 5Construya un pseudocódigo, 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.

Conversiones:- Para convertir de libras a kilogramos, multiplica por 0.4535924

- Para convertir de pies a metros, multiplicar por 0.3048006

Pseudocódigo:

1. Iniciar proceso2. Declarar variables

NOM : Cadena de caracteres PES, ALT : Real

3. LEER NOM, PES, ALT4. Calcular PESO = PES * 0.45359245. Calcular ALTURA = ALT * 0.30480066. ESCRIBIR NOM, PESO, ALTURA7. Terminar el proceso

G r u p o E d i t o r i a l M e g a b y t e 37

Page 37: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Codificación en PHP

<?PHP

$NOM = "Víctor";$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

Explicación 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:

3 8 G r u p o E d i t o r i a l M e g a b y t e

Page 38: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 1: Conceptos básicos

$NOM = "Víctor";

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: SALTURAla etiqueta html <br> es para dar un salto de línea y de esta manera evitara que se vea todo en una línea.

Ejemplo 6Construya un pseudocódigo, que dado como dato una cantidad expresada en Euros, convierta esa cantidad a nuevos soles.

Conversiones:

- El tipo de cambio establecido en : 1 Euro = 4.11 soles

Pseudocódigo:

1. Iniciar proceso2. Declarar variables

EURO, SOLES : Real3. Calcular SOLES = EURO * 4.114. ESCRIBIR SOLES5. Terminar el proceso

G r u p o E d i t o r i a l M e g a b y t e 3 9

Page 39: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Codificación en PHP

<?PHP

$EURO = 50;SSOLES = SEURO * 4.11;

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

print SSOLES;

?>

Resultado PHP en WEB

Explicación 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:

4 0 G r u p o E d i t o r i a l M e g a b y t e

Page 40: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 1: Conceptos básicos

$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 línea y de esta manera evitara que se vea todo en una línea.

Ejemplo 7Escriba un pseudocódigo, que muestre automáticamente la fecha y hora actual

Pseudocódigo:

1. Iniciar proceso2. Declarar variables

FECHA, HORA: Cadena de caracteres3 FECHA = DATE4 HORA = TIME5. ESCRIBIR FECHA, HORA6. Terminar el proceso

Diagrama de flujo

G r u p o E d i t o r i a l M e g a b y t e 41

Page 41: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Codificación en PHP

<?PHP

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

print "Fecha: $FECHA<br>";

print "Hora: $HORA";

?>

Resultado PHP en WEB

Explicación 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");

4 2 G r u p o E d i t o r i a l . M e g a b y t e

Page 42: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 1: Conceptos básicos

En PHP la fecha y hora se captura con date, seguidamente indicando el dia "d", m es"m ", año "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 línea y de esta manera evitara que se vea todo en una línea.

Ejemplo 8Escriba un pseudocódigo, que ingresado 2 cantidades, los sume y luego el resultado lo convierta en Euros y Dólares dependiendo del tipo de cambios de cada moneda.

Conversiones:- El tipo de cambio establecido en : 1 Euro =4.11 soles

- El tipo de cambio establecido en : 1 Dolares = 3.21 soles

Pseudocódigo:

1. Iniciar proceso2. Declarar variables

CANTl: Real CANT2: Real EURO : Real DOLAR : Real TOTAL: Real

3. Calcular TOTAL = CANTl + CANT24. Calcular EURO = TOTAL / 4.115. Calcular DOLAR = TOTAL / 3.216. ESCRIBIR EURO, DOLAR7. Terminar el proceso

G r u p o E d i t o r i a l M e g a b y t e 4 3

Page 43: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Diagrama de flujo Codificación en PHP

Resultado PHP en WEB

<?PHP

$CANT1 = 50;$CANT2 = 60;

$TOTAL = SCANT1 + $CANT2;

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

print "EURO: $EURO <br>";

print "DOLAR: SDOLAR <br>";

?>

Explicación 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 r u p o E d i t o r i a l M e c a b y t e

Page 44: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 1: Conceptos básicos

$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 línea y de esta manera evitara que se vea todo en una línea.

Ejemplo 9Escriba un pseudocódigo, que dados los tres lados de un triángulo, determine su área.

Formula:

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

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

Nota:Sacar la raíz cuadrada de un número es igual elevar número a la potencia 0.5

Pseudocódigo:

1. Iniciar proceso2. Declarar variables

L1,L 2,L 3, S, Área: Real3. Calcular S = ( L1 + L2 + L3) / 24. Calcular Área = (S*(S-L1)*(S-L2)*(S-L3))A0.55. ESCRIBIR Área7. Terminar el proceso

G r u p o E d i t o r i a l M e g a b y t e 4 5

Page 45: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Diagrama de flujo

Codificación 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";?>

4 6 G r u p o E d i t o r i a l M e c a b y t e

Page 46: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 1: Conceptos básicos

Resultado PHP en WEB

Explicación 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.

SÁREA = 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: SÁREA";

G r u p o E d i t o r i a l M e g a b y t e 4 7

Page 47: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Ejemplo 10Construya un pseudocódigo, 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

Pseudocódigo:

1. Iniciar proceso2. Declarar Variables

RADIO, ÁREA, VOLUMEN : Real3. Declarar constante Pi = 3.141592 : Real4. Leer RADIO5. Calcular ÁREA = 4 * Pi * (RAD10A2)6. Calcular VOLUMEN = 4/3 * Pi * (RADIOA3)7. ESCRIBIR ÁREA, VOLUMEN8. Terminar el proceso

Diagrama de flujo

4 8 G r u p o E d i t o r i a l M e g a b y t e

Page 48: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 1: Conceptos básicos

Codificación en PHP

<?PHP

$ RADIO = 20;$PI = "3.141592";

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

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

print "Área: SÁREA <br>";

print "Volumen: SVOLUMEN";

?>

Resultado PHP en WEB

Explicación 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 r u p o E d i t o r i a l M e g a b y t e 4 9

Page 49: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

SRADIO = 20;SPI = "3.141592";

Calculamos el área.

SÁREA = 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: SÁREA <br>";

print "Volumen: SVOLUMEN";

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

Ejemplo 11Construya un pseudocódigo que calcule la distancia entre dos postes de alumbrado público 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

Pseudocódigo:

1. Iniciar proceso2. Declarar Variables X I, Y l, X2, Y2, DISTANCIA : Real3. Leer X I, Y l, X2, Y23. Calcular DISTANCIA =((X1 - X2)A2 + (Yl - Y2)A2)A0.54. ESCRIBIR DISTANCIA5. Terminar el proceso

5 0 G r u p o E d i t o r i a l M e g a b y t e

Page 50: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 1: Conceptos básicos

Diagrama de flujo

Codificación 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>";

G r u p o E d i t o r i a l M e g a b y t e 51

Page 51: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PFIP

Resultado PHP en WEB

Explicación 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(($Xl-$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 G r u p o E d i t o r i a l M e g a b y t e

Page 52: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 1: Conceptos básicos

Ejemplo 12Construya un pseudocódigo que calcule el porcentaje del resultado de una encuesta si esta a favor (Si) o en contra (No) de una pregunta formulada.

Pseudocódigo:

1. Iniciar proceso2. Declarar Variables SI, NO, PSI, PNO : Real3. Leer SI, NO4. Calcular PSI = (SI * 100) / (SI + NO)5. Calcular PNI = (NO * 100) / (SI + NO)6. ESCRIBIR PSI, PNO7. Terminar el proceso

Diagrama de flujo Codificación en PHP

<?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 %";

•?>

G r u p o E d i t o r i a l M e g a b y t e 53

Page 53: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Resultado PHP en WEB

Explicación 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 %";

5 4 G r u p o E d i t o r i a l M e g a b y t e

Page 54: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 1: Conceptos básicos

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

Ejemplo 13Construya 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:

Volúmen = pi * radio2 * altura

La área del cilindro:

Área = 2 * pi * radio * altura

Pseudocódigo:

1. Iniciar proceso2. Declarar variables

RADIO, ALTURA, ÁREA, VOLUMEN : Real3. Declarar constante

P I= 3.14164. LEER RADIO,ALTURA5. Calcular ÁREA = 2 * Pi * RADIO * ALTURA6. Calcular VOLUMEN = Pi * RADIOA2 * ALTURA7. ESCRIBIR ÁREA, VOLUMEN7. Terminar el proceso

G r u p o E d i t o r i a l M e g a b y t e 55

Page 55: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Codificación en PHP

<?PHP

SRADIO = 5;SALTURA = 30;SPI = "3.1416";

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

print "Área: SÁREA <br>";

print "Volumen: SVOLUMEN

?>

Resultado PHP en WEB

Explicación 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 G r u p o E d i t o r i a l M e g a b y t e

Page 56: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 1: Conceptos básicos

$ RADIO = 5;SALTURA = 30;

SPI = "3.1416";

Calculamos el Area y Volumen:

SÁREA = 2 * $PI * $ RADIO * SALTURA;

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

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

print "Área: SÁREA <br>";

print "Volumen: SVOLUMEN

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

G r u p o E d i t o r i a l M e g a b y t e 57

Page 57: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org
Page 58: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo IIEstructuras

lógicas selectivas

O b j e t i v o s :

En este capitu lo usted a p r e n d e r a des arro l la r Algori tmos A v a n z a d o b a s a d o s en l ó g ic a s s e le c t i v a s , p a r a lu e g o p la s m a r lo en un D ia g ra m a s de f lu jo y a p l ic a r lo en el l e n g u a je PHP

C o n t e n d i ó :

Estructura S L . E n t o n c e s (S e lecc ió n s im p le )Estructura S i . . .Entonces. . .S i no (A l te rna t iva dob le ) A n id a m ie n to de Estructuras c o n d ic io n a le s Ea estructura de se le cc ió n múltiple E je m p lo s

Algoritmos y Diagramas de flujo Aplicados en PHP

Page 59: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org
Page 60: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 2: Estructuras lógicas selectivas

Las estructuras lógicas selectivas se encuentran en la solución algorítmica de casi todo tipo de problemas. La utilizamos cuando en el desarrollo de la solución de un problema debemos tomar una decisión, para establecer un proceso o señalar un camino alternativo a seguir.

Esta toma de decisión se basa en la evaluación de una o más condiciones que nos señalarán 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 decisión, se marca la rama correspondiente a seguir, se vuelve a tomar otra decisión y así sucesivamente. Por lo que para alcanzar la solución de este problema o subproblema debemos aplicar prácticamente un árbol de decisión.

Las estructuras algorítmicas selectivas que se utilizan para la toma de decisiones lógicas las podemos clasificar de la siguiente forma:

1. SI...ENTONCES (Estructura selectiva simple)

2. SI...ENTONCES...SINO (Estructura selectiva doble)

Cabe señalar que cuando a la estructura selectiva las aplicamos en cascada, podemos utilizar una combinación de las estructuras señaladas anteriormente en la clasificación.

G r u p o E d i t o r i a l M e g a b y t e 61

Page 61: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Estructura Si...Entonces (Selección simple)La estructura selectiva Si...Entonces permite que el flujo del diagrama siga por

un camino específico si se cumple una condición o conjunto de condiciones. Si al evaluar la condición (o condiciones) el resultado es verdadero, entonces se ejecuta(n) cierta(s) operación(es). Luego se continúa 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 entonces H a c e r o p e r a c ió n

Fin_Si

La condición es una expresión lógica. Y operación puede ser una operación simple o un grupo de operaciones.

El diagrama de flujo de la condicional Si es:

Si la condición es falsa no hace ninguna acción. Veamos unos ejemplos de una sentencia selectiva simple.

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

6 2 G r u p o E d i t o r i a l M e g a b y t e

Page 62: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 2: Estructuras lógicas selectivas

Algoritmo:

1. Iniciar proceso2. Declarar Variables

COLOR : Entero largo3. LEER COLOR4. Si COLOR = BLANCO Entonces

4.1. Escribir "COLOR ENCONTRADO"5. Fin Si6. Terminar el proceso

Diagrama de flujo Codificación en PHP

<?PHP

SCOLOR = "Blanco";

if (SCOLOR == "Blanco") {

print "Color Encontrado";

}

?>

Explicación 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 r u p o E d i t o r i a l M e g a b y t e 63

Page 63: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

SCOLOR = "Blanco";IF iniciamos la condición luego encerramos entre paréntesis () 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

Ejemplo 2Construya un pseudocódigo, que ingresada la nota de un alumno si esta es menor ó igual que 10 muestre DESAPROBADO.

Algoritmo:

1. Iniciar proceso2. Declarar Variables

6 4 G r u p o E d i t o r i a l M e g a b y t e

Page 64: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 2: Estructuras lógicas selectivas

NOTA : Real3. LEER Nota4. Si Nota <= 10 Entonces

4.1. Escribir "DESAPROBADO"5. Fin Si6. Terminar el proceso

Diagrama de flujo Codificación en PHP

<?PHP

SNOTA = 9;

if (SNOTA <= 10) {

print "Desaprobado";

}

?>

Resultado PHP en WEB

G r u p o E d i t o r i a l M e g a b y t e 65

Page 65: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Explicación 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 condición luego encerramos entre paréntesis () 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";

Ejemplo 3Construya un pseudocódigo, que ingresado una cantidad, que sea menor o igual a 100 dólares realice el tipo de cambio a soles.

Conversiones:

- El tipo de cambio establecido en : 1 Dolares =3.21 soles

Algoritmo:

1. Iniciar proceso2. Declarar Variables

CANTIDAD, TOTAL : Entero3. LEER CANTIDAD4. Si CANTIDAD <= 100 Entonces

4.1 TOTAL = CANTIDAD * 3.214.2 ESCRIBIR TOTAL

5. Fin Si6. Terminar el proceso

6 6 G r u p o E d i t o r i a l M e g a b y t e

Page 66: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 2: Estructuras lógicas selectivas

Diagrama de flujo Codificación en PHP

<?PHP

«CANTIDAD = 80;

if («CANTIDAD <= 100) {«TOTAL = «CANTIDAD * 3.21; print «TOTAL;

}

?>

Resultado PHP en WEB

Explicación 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 r u p o E d i t o r i a l M e g a b y t e 67

Page 67: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

$CANTIDAD = 80;IF iniciamos la condición luego encerramos entre paréntesis () la variable y comparamos si es menor igual <= con el valor 100, si coincide realizamos la operación:

$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;

Ejemplo 4Construya un pseudocódigo que, al sueldo de un empleado se le aplíquele un aumento del 2.5 si su sueldo es menor ó igual a S/ 500.

Algoritmo:

1. Iniciar proceso2. Declarar Variables

SUELDO : Entero NSUELDO : Entero

3. LEER SUELDO4. Si SUELDO <= 500 Entonces

4.1 NSUELDO = SUELDO * 2.54.2 ESCRIBIR NSUELDO

5. Fin Si6. Terminar el proceso

6 8 G r u p o E d i t o r i a l M e g a b y t e

Page 68: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capitulo 2: Estructuras lógicas selectivas

Diagrama de flujo Codificación en PHP

<?PHP

$SUELDO = 410;

if («SUELDO <= 500) {

«NSUELDO = «SUELDO * 2.5;

print "Nuevo Sueldo: ";

print «NSUELDO;

}?>

Resultado PHP en WEB

Explicación 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 r u p o E d i t o r i a l M e g a b y t e 6 9

Page 69: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

SSUELDO = 410;IF iniciamos la condición luego encerramos entre paréntesis 0 Ia variable y comparamos si es menor igual <= con el valor 410, si coincide realizamos la operación:

$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 selección 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 comparación sea verdadero o cuando sea falso, en otras palabras cuando la respuesta de la comparación sea verdadera se ejecutarán una o más acciones, así mismo si la respuesta es falsa se ejecutarán acciones diferentes. Veamos el pseudocódigo el cual explica mejor el concepto de alternativa doble.

S i Condición Entonces Acciones 1

sinoAcciones2

Fin Si {

7 0 G r u p o E d i t o r i a l M e c a b y t e

Page 70: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 2: Estructuras lógicas selectivas

Donde:

Condición expresa la condición o conjunto de condiciones a evaluarse.

Acciones 1 expresa la operación o conjunto de operaciones que se van a realizar si la condición resulta verdadera.

Acciones2 expresa la operación o conjunto de operaciones que se van a realizar si la condición resulta falsa.

Ejemplo 5Construya un pseudocódigo, 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 proceso2. Declarar Variables

COLOR : Entero largo3. LEER COLOR4. Si COLOR = BLANCO Entonces

4.1. Escribir "COLOR ENCONTRADO"5. Si no

5.1. Escribir "COLOR NO ENCONTRADO"6. Fin_Si7. Terminar el proceso

G r u p o E d i t o r i a l M e g a b y t e 71

Page 71: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Diagrama de flujo Codificación en PHP

<?PHP

SCOLOR = "Negro";

if (SCOLOR == "Blanco") {

print "Color Encontrado";

}else{print "Color NO Encontrado";

}

?>

Resultado PHP en WEB

Explicación 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:

7 2 G r u p o E d i t o r i a l M e g a b y t e

Page 72: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 2: Estructuras lógicas selectivas

SCOLOR = "Blanco";

IF iniciamos la condición luego encerramos entre paréntesis () 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 pseudocódigo, que ingresada la nota de un alumno si esta es menor ó igual que 10 muestre DESAPROBADO, sino APROBADO

Algoritmo:

1. Iniciar proceso2. Declarar Variables

NOTA : Real3. LEER Nota4. Si Nota <= 10 Entonces

4.1. Escribir "DESAPROBADO"5. Si no

5.1 Escribir "APROBADO"6. Fin Si7. Terminar el proceso

G r u p o E d i t o r i a l M e g a b y t e 73

Page 73: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Diagrama de flujo Codificación en PHP

<?PHP

$NOTA =12;

if (SNOTA <= 10) {

print "Desaprobado";

}else{print "Aprobado";

}

?>

Resultado PHP en WEB

Explicación 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 G r u p o E d i t o r i a l M e g a b y t e

Page 74: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 2: Estructuras lógicas selectivas

SNOTA =12;

IF iniciamos la condición luego encerramos entre paréntesis () 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

else{print "Aprobado";

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

print "Desaprobado";

print "Aprobado";

Ejemplo 7Construya un pseudocódigo, que ingresado una cantidad, que sea menor o igual a 50 dólares realice el tipo de cambio a EUROS, sino mostrar un mensaje que diga "Cambio como máximo 50".

Conversiones:- El tipo de cambio establecido en : 1 Dólares =3.21 soles

Algoritmo:

1. Iniciar proceso2. Declarar Variables

CANTIDAD, TOTAL : Entero3. LEER CANTIDAD4. Si CANTIDAD <= 50 Entonces

4.1 TOTAL = CANTIDAD *4.114.2 ESCRIBIR TOTAL

G r u p o E d i t o r i a l M e g a b y t e 7 5

Page 75: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

5. Si no5.1 ESCRIBIR "Cambio como máximo 50"

6. Fin_Si7. Terminar el proceso

Diagrama de flujo Codificación en PHP

<?PHP

«CANTIDAD = 80;

if («CANTIDAD <= 50) {«TOTAL = «CANTIDAD * 4.11;

print «TOTAL;

}else{print "Cambio como máximo 50";

}?>

Resultado PHP en WEB

Archivo Editar Ver Ir Marcadores Herramientas A&jda

- [7yS> • J h ttp ://joe l v @ i r Q L

Primeros pasos m Últimas noticias

Cambio como máximo 50

G r u p o E d i t o r i a l M e g a b y t e

Page 76: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 2: Estructuras lógicas selectivas

Explicación 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:

SCANTIDAD = 80;IF iniciamos la condición luego encerramos entre paréntesis () 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 máximo 50";

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

print STOTAL;

prin t "Cambio como máximo 50";

Ejemplo 8Construya un pseudocódigo que, al sueldo de un empleado se le aplíquele 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 proceso2. Declarar Variables

SUELDO : Entero NSUELDO : Entero

G r u p o E d i t o r i a l M e g a b y t e 77

Page 77: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

3. LEER SUELDO4. Si SUELDO <= 500 Entonces

4.1 NSUELDO = SUELDO * 2.54.2 ESCRIBIR NSUELDO

5. Si no SUELDO >= 600 Entonces5.1 NSUELDO = SUELDO * 1.75.2 ESCRIBIR NSUELDO 1

5. Fin Si6. Terminar el proceso

Diagrama de flujo

G r u p o E d i t o r i a l M e g a b y t e

Page 78: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 2: Estructuras lógicas selectivas

Codificación 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

Explicación 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 r u p o E d i t o r i a l M e g a b y t e 7 9

Page 79: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

SSUELDO = 700;IF iniciamos la condición luego encerramos entre paréntesis () 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 condición 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 condicionalesA menudo tendrá la necesidad de anidar una o más estructuras condicionales, ya sean simples o dobles, o combinaciones de ellas.

Se dice que las estructuras están anidadas, cuando hay unas dentro de ellas, esto lo veremos muy a menudo. Por ejemplo veamos el siguiente pseudocódigo.

Si Condiciónl EntoncesSi Condición2 Entonces

Acciones 1 Fin si

Fin Si

8 0 G r u p o E d i t o r i a l M e g a b y t e

Page 80: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 2: Estructuras lógicas selectivas

Aquí observamos que primero se debe cumplir la Condición 1, para luego evaluar la Condición2, solo al cumplirse esta última, se procederá a la ejecución de Acciones 1.

Si Condición 1 EntoncesAcciones 1Si Condición2 Entonces

Acciones2Si no

Acciones3F in s i

Fin Si

En este ejemplo, una vez cumplida la Condición 1, realizamos la Acciónl y luego evaluamos la Condición2, dependiendo el resultado de la Condición2, se procederá a realizar Acciones2 o Acciones3.

Ejemplo 9Construya un pseudocódigo que, al sueldo de un empleado se le aplíquele 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 proceso2. Declarar Variables

SUELDO : Entero NSUELDO : Entero

3. LEER SUELDO4. Si SUELDO >= 1000 Entonces

4.1 ESCRIBIR "Cantidad NO Aceptada"5. Si no

G r i j p o E d i t o r i a l M e g a b y t e 81

Page 81: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

5.1 Si SUELDO <= 500 Entonces5.1.1 NSUELDO = SUELDO * 2.55.1.2 ESCRIBIR NSUELDO

5.2 Si no SUELDO >= 600 Entonces5.2.1 NSUELDO = SUELDO * 1.75.2.2 ESCRIBIR NSUELDO

5.3 F in S i6. Fin Si7. Terminar el proceso

Diagrama de flujo

G r u p o E d i t o r i a l M e g a b y t e

Page 82: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 2: Estructuras lógicas selectivas

Codificación en PHP

<?PHP

$SUELDO = 700;

if ($SUELDO >= 1000) {

prin 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 PH P en WEB

G r u p o E d i t o r i a l M e g a b y t e 83

Page 83: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Explicación 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 condición luego encerramos entre paréntesis 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 condición y si coincide procesamos la cantidad ingresada:

if (SSUELDO <= 500) {

SNSUELDO = SSUELDO * 2.5;

print "Nuevo Sueldo:";

print SNSUELDO;

}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;

8 4 G r u p o E d i t o r i a l M e g a b y t e

Page 84: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 2: Estructuras lógicas selectivas

E jem p lo 10

Basado en el ejemplo anterior construya un pseudocódigo que, al sueldo de un trabajador se le aplíquele 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.

Véase que en este ejemplo se esta utilizando 3 tipos de aumentos.

Algoritmo:

1. Iniciar proceso2. Declarar Variables

SUELDO : EnteroNSUELDO : Entero

3. LEER SUELDO4. Si SUELDO >= 1500 Entonces

4.1 ESCRIBIR "Aumento No Aplicado 1»

5. Si no5.1 Si SUELDO <= 100 Entonces

5.1.1 NSUELDO = SUELDO * 8.05.1.2 ESCRIBIR NSUELDO

5.2 Si no SUELDO <= 600 Entonces5.1.1 NSUELDO = SUELDO * 3.05.1.2 ESCRIBIR NSUELDO

5.3 Si no SUELDO > 600 Entonces5.2.1 NSUELDO = SUELDO * 4.05.2.2 ESCRIBIR NSUELDO

5.4 Fin Si6. Fin Si7. Terminar el proceso

G r u p o E d i t o r i a l M e g a b y t e 85

Page 85: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Diagrama de flujo

Codificación en PHP

<?PHP

SSUELDO = 100;

if (SSUELDO >= 1500) {

print "Aumento No Aplicado";

} else {if (SSUELDO <= 100) {

G r u p o E d i t o r i a l M e g a b y t e

Page 86: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 2: Estructuras lógicas 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

Explicación 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 r u p o E d i t o r i a l M e g a b y t e 87

Page 87: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

IF iniciamos la condición luego encerramos entre paréntesis () 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 condición 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 SNSUELDO;

8 8 G r u p o E d i t o r i a l M e c a b y t e

Page 88: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 2: Estructuras lógicas selectivas

E jem plo 11

Construya un pseudocódigo, donde se ingresen tres cantidades y estas se ordenen de mayor a menor.

Algoritmo:

1. Iniciar proceso2. Declarar Variables

A, B, C : Entero3. Leer A, B. C4. Sí A B Entonces

Si A > C EntoncesSi B > C Entonces

Escribir A, B, CSino

Escribir A, C, BF inS i

SinoEscribir C, A, B

Fin_Si5. Si no

Si B > C EntoncesSi A ^ C Entonces

Escribir B, A y CSino

Escribir B, C y AF inS i

SinoEscribir C, B y A

F inS i6. Fin7. Terminar el proceso

G r u p o E d i t o r i a l M e g a b y t e 8 9

Page 89: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Codificación en PHP

<?PHP

$A = 4;

$B = 9;

$C = 6;

if ($A > $B) {

if ($A > $C) {

9 0 G r u p o E d i t o r i a l M e g a b y t e

Page 90: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 2: Estructuras lógicas 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 r u p o E d i t o r i a l M e g a b y t e 91

Page 91: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

?>

Resultado PHP en WEB

Explicación 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 condición luego encerramos entre paréntesis () la variable y comparamos si A es mayor > que B

ELSE sino coincide calculamos con la segunda condición y si coincide procesamos el valor ingresado, de esta manera se trata de comparar cual es mayor.

if ($A > $B) {

II...} else {

II.

G r u p o E d i t o r i a l M e g a b y t e

Page 92: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 2: Estructuras lógicas 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 jem p lo 12

Construya un pseudocódigo, 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 proceso2. Declarar Variables

Nota : Entero3. Leer Nota4. Si Nota <=10 Entonces

Escribir Descalificado.5. Si no

Si Nota >= 11 y Nota <= 14 EntoncesEscribir Aprobado

FinSi6. Si no

Si Nota >= 15 y Nota <= 17 EntoncesEscribir Bueno

FinSi

G r u p o E d i t o r i a l M e g a b y t e 93

Page 93: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

9 4 G r u p o E d i t o r i a l M e c a b y t e

Page 94: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 2: Estructuras lógicas selectivas

Codificación 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

G r u p o E d i t o r i a l M e g a b y t e 9 5

Page 95: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Explicación 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 condición luego encerramos entre paréntesis () la variable y comparamos si Nota es menor > igual = que 10.

if ($NOTA >= 10) {

/ / .....

} else {/ / .....

}

ELSE sino coincide calculamos con la segunda condición y si coincide procesamos la cantidad ingresada, nótese que estamos utilizando AND para verificar si la nota esta en un rango de numérico.

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 jem p lo 13

Construya un pseudocódigo, 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 proceso2. Declarar Variables

NUMERO : Entero

9 6 G r u p o E d i t o r i a l M e g a b y t e

Page 96: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 2: Estructuras lógicas selectivas

3. LEER NUMERO4. Si NUMERO > 0 Entonces

Si (NUMERO MOD 2)=0 EntoncesEscribir ‘Número ingresado es Par’

SinoEscribir ‘Número ingresado es Impar’

Fin_Si5. Sino6. Escribir ‘Ingrese un Numero’7. F in S i8. Terminar el proceso

Diagrama de flujo

G r u p o E d i t o r i a l M e g a b y t e 97

Page 97: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Codificación 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

Explicación 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:

9 8 G r u p o E d i t o r i a l M e g a b y t e

Page 98: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 2: Estructuras lógicas selectivas

«NUMERO = 18;

IF iniciamos la condición luego encerramos entre paréntesis () la variable y comparamos si NUMERO es mayor > que 0, si el valor ingresa no es numérico mostrara un mensaje de alerta.

if («NUMERO > 0) {

/ / .....

} else {

/ / .....

}

Si coincide calculamos el resto de la división % entre 2 y lo comparamos = a 0, si el resto de la división 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 jem p lo 14

Construya un pseudocódigo que lea las edades de 2 niños y determine cuál es el mayor y cual es el menor. Debe validar que si la edad es mayor que 10 no es considerado niño.

Algoritmo:

Iniciar proceso Declarar Variables

EDAD1, EDAD2 : Entero

G r u p o E d i t o r i a l M e g a b y t e 99

Page 99: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Leer EDAD 1, EDAD2 Si EDAD1< 10 or EDAD2 < 10 Entonces

Si EDAD1 <> EDAD2 EntoncesSi EDAD1 > EDAD2 Entonces

Escribir Él mayor es EDAD 1 Escribir El menor es EDAD2

SinoEscribir El mayor es EDAD2 Escribir El menor es EDAD1

Fin SiSino

Escribir ‘Las edades son iguales’Fin_Si

SinoEscribir ‘Una de la edades es mayor a 10’

F inS iTerminar el proceso

Diagrama de flujo

100 G r u p o E d i t o r i a l M e g a b y t e

Page 100: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 2: Estructuras lógicas selectivas

Codificación 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>";

G r u p o E d i t o r i a l M e g a b y t e 101

Page 101: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

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

Explicación 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 condición luego encerramos entre paréntesis () la variable y comparamos si algunas de las edades es mayor a 10.

102 G r u p o E d i t o r i a l M e g a b y t e

Page 102: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 2: Estructuras lógicas 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>";

Ejemplo 15Construya un pseudocódigo que permita ingresar 3 números y mostrar un mensaje cuando unos de ellos se repitan y otro mensaje si no existen repetidos.

Algoritmo:

Iniciar proceso Declarar Variables

NUM1 : Carácter NUM2 : Carácter NUM3 : Carácter

Leer NUM1, NUM2, NUM3'Si NUM1 = NUM2 O NUM1 = NUM3 O NUM2 = NUM3 Entonces

Escrbir ‘Existe un par de números iguales’Si no

Escrbir ‘Ninguno Repetido’Fin SiTerminar el proceso

G r u p o E d i t o r i a l M e g a b y t e 103

Page 103: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Diagrama de flujo

Codificación en PHP

< ?P H P

SNUM1 = 5;

$NUM2 = 3;

$NUM3 = 3;

if ($NUM1 == $NUM2 OR $NUM1 == $NUM3 OR $NUM3 == $NUM2) {

print "Existe un par de números repetidos";

}else{

print "Ninguno Repetido";

}?>

104 G r u p o E d i t o r i a l M e g a b y t e

Page 104: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 2: Estructuras lógicas selectivas

Resultado PHP en WEB

Explicación 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 condición luego encerramos entre paréntesis () la variable y comparamos si algunos de los números son iguales.

if ($NUMI == $NUM2 OR $NUM1 == $NUM3

OR $NUM3 == $NUM2) {

/ / .....

} else {/ / .....

}

Utilizamos OR para verificar si unos de los pares de números son iguales

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

OR $NUM3 == SNUM2

G r u p o E d i t o r i a l M e g a b y t e 105

Page 105: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

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 números repetidos";

E jem p lo 16

Construya un pseudocódigo que lea tres números enteros por teclado y emita un mensaje indicando si están o no ordenados de menor a mayor y validar que solo ingresen números.

Algoritmo:

Iniciar proceso Declarar Variables

NU M 1, NUM2, NUM3: Entero Leer NUM1, NUM2, NUM3 Si NUM 1 > 0 y NUM2 > 0 y NUM3 > 0 Entonces

Si NUM1 < NUM2 Y NUM2 < NUM3 EntoncesEscribir ‘Ordenados de menor a mayor’

Si noEscribir ‘No están ordenados’

Fin SiSi no

Escribir ‘Ingrese solo números’Fin SiTerminar el proceso

Diagrama de flujo

G r u p o E d i t o r i a l M e g a b y t e

Page 106: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capitulo 2: Estructuras lógicas selectivas

Codificación en PHP

<?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";

G r u p o E d i t o r i a l M e g a b y t e 107

Page 107: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

}else{print "Ingrese solo números";

}?>

Resultado PHP en WEB

Explicación 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 condición luego encerramos entre paréntesis () la variable y comparamos si algunos de los números son mayores a 0.

G r u p o E d i t o r i a l M e g a b y t e

Page 108: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 2: Estructuras lógicas selectivas

if ($NUM1 > O and SNUM2 > O and $NUM2 >0) {/ / .....

} else {/ / .....

}

Utilizamos AND para verificar que todos cumplan la condición caso contrario mostrara un mensaje, sino realizara la segunda condición y verificara si están ordenados de menor a mayor comparando si el último número 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 selección múltipleLa estructura de selección múltiple permite que el flujo del programa se bifurque por varias ramas en el punto de la toma de decisión(es), esto en función del valor que tome el selector. Así, si el selector toma el valor 1 se ejecutará la accción 1, si toma el valor 2 se ejecutará la acción 2, si toma el valor N se realizará la acción N, y si toma un valor distinto de los valores comprendidos entre 1 y N, se continuará con el flujo normal del diagrama realizándose la acción N +1.

Ejemplo 17Construya un pseudocódigo que pida dos números enteros y muestre por pantalla el siguiente menú:

G r u p o E d i t o r i a l M e g a b y t e 109,,

Page 109: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

MENÚ

1. Sumar

2. Restar3. Multiplicar

4. Dividir

Elija una opción:

El usuario deberá elegir una opción y el programa deberá mostrar el resultado y finalizar.

Algoritmo:

Iniciar proceso Declarar Variables

A, B, Opción : Entero R : Real

Leer A,BEscribir MENU

1. Sumar2. Restar3. Multiplicar4. Dividir Elija opción:

Leer Opción Leer A, B En caso de Opción

Caso 1: R = A + B Caso 2: R = A - B Caso 3: R = A * B Caso 4: R = A / B

Fin_Caso Escribir R Terminar el proceso

110 G r u p o E d i t o r i a l M e g a b y t e

Page 110: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 2: Estructuras lógicas selectivas

Diagrama de flujo

Codificación en PHP

<?PHP

$A = 5;

$B = 6;

$MENU = 3;

switch (SMENU) {

G r u p o E d i t o r i a l M e g a b y t e 1 1 1 /

Page 111: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

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 G r u p o E d i t o r i a l M e g a b y t e

Page 112: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 2: Estructuras lógicas selectivas

Explicación 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 evalúa y compara cada expresión 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 jem p lo 18

Construya un pseudocódigo , qué valide la fecha de nacimiento de una persona, considere que el año válido sea mayor a 1900.

Algoritmo:

Iniciar proceso Declarar Variables

DD, MM, AA, NDias : Entero

G r u p o E d i t o r i a l M e g a b y t e 111,

Page 113: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Leer DD, MM, AAEn 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

F inS 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 inC asoSi AA>1900 Y (MM>0 Y MM<=12) Y (DD>0 Y DD<=TDias)

Hacer TDias = 29Sino

Hacer TDias = 28

Escribir ‘Fecha válida’Si no

Escribir ‘Fecha no válida’Fin SiTerminar el proceso

Diagrama de flujo

c INICIO

/:DD, MM, AA

T

114 G r u p o E d i t o r i a l M e g a b y t e

Page 114: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 2: Estructuras lógicas selectivas

Codificación en PHP

<?PHP

$DD = 16;

$MM = 5;$AA = 1778;

switch ($MM) {case 1: $TD1AS = 31;

break;

G r u p o E d i t o r i a l M e g a b y t e 115

Page 115: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

case

case

case

case

case

case

case

case

case

case

case

if (($AA % 4 = O and $AA % 400 == 0) or ($AA % 400==0)){

STDias = 29;

}else{

STDias = 28;

}break;

3: STDIAS = 31;

break;

4: STDIAS = 30;

break;

5: STDIAS = 31;

break;

6: STDIAS = 30;

break;

7: STDIAS = 31;

break;

8: STDIAS = 31;

break;

9: STDIAS = 30;

break;

10:STDIAS = 31;

break;

U:$TD IA S = 30;

break;

12:STDIAS = 31;

break;

116 G r u p o E d i t o r i a l M e g a b y t e

Page 116: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 2: Estructuras lógicas selectivas

if($AA > 1900 and ($MM > 0 and $MM <= 12) and ($DD > 0 and $DD <= $TDIAS)){

print "Fecha válida";

}else{print "Fecha no válida";

}?>

Resultado PHP en WEB

Explicación 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 evalúa y compara cada expresión de la sentencia case:

switch ($MM) {

G r u p o E d i t o r i a l M e g a b y t e 117

Page 117: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

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 válida";

print "Fecha no válida";

Para febrero tratamos de definir cuantos días tiene el mes con la siguiente condición:

if (($AA % 4 == 0 and $AA % 400 == 0) or ($AA % 400==0)){STDias = 29;

}e lse {

STDias = 28;

}

Al final validamos si el año es mayor de 1900 con la siguiente condición, nótese que también estamos validando el mes y el día:if($AA > 1900 and ($MM > 0 and $MM <= 12) and ($DD > 0 and $DD <= $TDIAS)){

print "Fecha válida";

}else{

prin t "Fecha no válida";

}

118 G r u p o E d i t o r i a l M e g a b y t e

Page 118: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo IIIEstructuras

LógicasRepetitivas

O b j e t i v o s :

En este cap itu lo usted a p r e n d e r a d e s a rro l la r Algori tmos A v a n z a d o b a s a d o s en l ó g i c a s r e p e t i t i v a s , p a r a l u e g o p l a s m a r lo en un D i a g r a m a s d e f lu jo y a p l i c a r lo en el l e n g u a je PHP

Contendió:

Estructura H ac er M ie n tras Estructura M ie n t ra sEstructura Desde E je m p lo s

Algoritmos y Diagramas de flojo Aplicados en PHP

Page 119: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org
Page 120: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 3: Estructuras lógicas repetitivas

Es muy común encontrar en los algoritmos operaciones que se deben ejecutar un número repetido de veces. Si bien las instrucciones son las mismas, los datos sobre los que se opera varían. El conjunto de instrucciones que se ejecuta repetidamente se llama ciclo.

Todo ciclo debe terminar de ejecutar luego de un número finito de veces, por lo que es necesario en cada interacción del mismo, evaluar las condiciones necesarias para decidir si debe seguir ejecutándose o debe detenerse. En todo ciclo, siempre debe existir una condición de parada o fin de ciclo.

En algunos algoritmos podemos establecer a priori que el ciclo se repetirá un número definido de veces. Es decir, el número de repeticiones no dependerá de las proposiciones dentro del ciclo. Llamaremos Desde a la escritura algorítmica repetitiva que se ejecuta un núméro definido de veces.

Por otra parte, en algunos algoritmos no podemos establecer a priori el número de veces que ha de ejecutar el ciclo, sino que este número dependerá de las proposiciones dentro del mismo. Llamaremos mientras a la estructura algorítmica repetitiva que se ejecuta mientras la condición evaluada resulta verdadera. TambiéN tenemos la estructura Hacer Mientras.

En la práctica tanto la estructura Hacer Mientras como la estaictura Mientras se pueden usar indistintamente para obtener un resultado.

G r u p o E d i t o r i a l M e g a b y t e fiBBI

Page 121: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Estructura Hacer MientrasLa estructura Hacer Mientras como lo señalamos anteriormente, es la estructura algorítmica adecuada para utilizar en un ciclo que se ejecutará un número definido de veces. Por ejemplo cuando necesitamos calcular la nómina 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 cuántas veces tenemos que repetir una determinada operación, acción o tárea. El número de repeticiones no depende de las proposiciones dentro del ciclo. El número de veces se obtiene del planteamiento del problema o de una lectura que indica que el número de iteraciones se debe realizar para N ocurrencias.

La sintaxis para esta estructura es la siguiente:

H acer

{Proceso}

M ientras (Condición)

{Fin del ciclo}

Proceso, es cualquier operación o conjunto de operaciones que deban ejecutarse mientras se repita el ciclo. El ciclo se repetirá siempre que la Condición sea verdadera, es decir se cumplirá hasta que la Condición sea falsa.

Esta estructura garantiza por lo menos una iteración del bloque de proceso, debido a que primero realiza el proceso y al final evalúa la condición.

122 G r u p o E d i t o r i a l M e g a b y t e

Page 122: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 3: Estructuras lógicas repetitivas

Muchas veces usaremos esta estructura con el uso de un contador, y la condición estará ligada a dicho contador, obteniendo así la siguiente sintaxis:

V = Vi

H acer

{proceso}

Calcular V = V + INC

M ientras que (Condición)

{Fin del ciclo}

Donde V : 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 condición. El ciclo se ejecuta hasta que la condición sea verdadera. El valor de V se incrementa en cada iteración.

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 número 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 tendrán 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 pequeño cambio, como mostramos a continuación.

V=Vi

H acer

G r u p o E d i t o r i a l M e g a b y t e 123

Page 123: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos v Diagramas de Flujo aplicados en PHP

{proceso}Calcular V = V - INC

M ientras (Condición)

{Fin del ciclo}

E je m p lo 1

Escriba un pseudocódigo, donde ingresado los sueldos de 10 obreros de una fabrica, obtenga el total de los sueldos de la misma.

Pseudocódigo:

Iniciar proceso Declarar Variables

I : EnteroTOTAL,SUELDO : Real

Hacer 1 = 0TOTAL = 0

HacerLeer SUELDO

Calcular TOTAL = TOTAL + SUELDO 1 = 1 + 1

Mientras 1 < 10 Escribir TOTAL Terminar el proceso

Codificación en PHP

<?php

SSUELDO = 600;

SI = 0;

STOTAL = 0;

124 G r u p o E d i t o r i a l M e g a b y t e

Page 124: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 3: Estructuras lógicas repetitivas

do {

STOTAL = STOTAL + SSUELDO;

SI = SI + 1;

} while (SI < 10);

echo "Total de sueldos <br>";

echo STOTAL;

?>

Diagram a de flujo

G r u p o E d i t o r i a l M k g a b y t e 125

Page 125: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Resultado PH P en WEB

Explicación 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 código 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:

SSUELDO = 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 línea y de esta manera evitara que se vea todo en una línea.

1 26 G r u p o E d i t o r i a l M e g a b y t e

Page 126: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 3: Estructuras lógicas 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, también 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 plo 2

Escriba un pseudocódigo, que muestre la lista de años desde 1995 hasta el 2005, y al finalizar muestre un mensaje de lista finalizada.

Pseudocódigo:

Iniciar proceso Declarar Variables

I : Entero ANIO: Real

HacerLeer ANIO

Calcular ANIO= ANIO + 1 1 = 1+1

Escribir ANIO Mientras I < 10 Escribir Lista Fianlizada Terminar el proceso

G r u p o E d i t o r i a l M e g a b y t e 127

Page 127: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Diagrama de flujo

Codificación en PHP

<?php ,

SANIO = 1995;

OII

do {

SANIO = SANIO + 1;

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

128 G r u p o E d i t o r i a l M e g a b y t e

Page 128: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 3: Estructuras lógicas repetitivas

} while ( $ 1 < 10);echo "Lista Finalizada";

? >

Explicación PHPPHP 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;

G r u p o E d i t o r i a l M e g a b y t e 129

Page 129: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

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 línea y de esta manera evitara que se vea todo en una línea.

El do ... while permite repetir una secuencia mientras $1 sea menor que < 10, dentro de este bucle sumara los años hasta 10 veces y los ira mostrando uno por uno echo "SANIO <br>";, también 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);

Ejemplo 3Escriba un pseudocódigo, que cuente del 1 al 20 cuantos números son divisibles entre 2 y muestre cuales son los números.

Pseudocódigo:

Iniciar proceso Declarar Variables

I : Entero N: Entero CONT: Entero

1 3 0 G r u p o E d i t o r i a l M e g a b y t e

Page 130: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 3: Estructuras lógicas repetitivas

HacerSi N MOD 2 = 0 entonces

Escribir NCONT = CONT + 1

F in si 1 = 1+ 1 N = N + 1

Mientras I < 20Escribir Total de números divisibles entre 2: CONT Terminar el proceso

D iagram a de flujo

G r u p o E d i t o r i a l M e g a b y t e 131

Page 131: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Resultado PHP en WEB

Codificación en PHP

<?php

$1 = 0;$N = 1;

do {

if ($N % 2 == 0){

echo "$N <br>";

$CONT = $CONT + 1;

}$1 = $1 + 1;

SN = $N + 1;

m s m G r u p o E d i t o r i a l M e g a b y t e

Page 132: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 3: Estructuras lógicas repetitivas

} while ($1 < 20);echo "Total de números divisibles entre 2: SCONT";

?>

Explicación 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>";

echo "Total de números divisibles entre 2: SCONT";la etiqueta html <br> es para dar un salto de línea y de esta manera evitara que se vea todo en una línea.

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

Para esto utilizamos un $N % 2 == 0, que cuando cumpla la condición muestre el numero divisible y cuente SCONT = SCONT + 1, también 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 MientraEs muy similar a la anterior Hacer.. Mientras, solo que en este caso primero evaluamos la condición y luego evaluamos el bloque de código.

G r u p o E d i t o r i a l M e g a b y t e 133

Page 133: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PFIP

En la estructura mientras se distinguen dos partes:

- Ciclo: Conjunto de instrucciones que se ejecutarán repetidamente.

- Condición de terminación: La evaluación de esta condición pennite decidir cuando finalizará la ejecución del ciclo. La condición se evalúa al inicio del mismo.

Esta estructura se ejecuta mientras que la condición es verdadera, en caso contrario terminará el ciclo.

Debe existir también un anunciado dentro del ciclo que afecte la condición, para evitar que el ciclo se ejecute indefinidamente. En lenguaje algorítmico de la estructura mientras la expresamos de esta forma:

Mientras Condición{PROCESO}

Fin Mientras

Ejemplo 4Escriba un pseudocódigo, donde ingresado los sueldos de 20 obreros de una fábrica, obtenga el total de los sueldos de solo 10 obreros y muestre el sueldo por cada obrero.

1 34 G r u p o E d i t o r i a l M e g a b y t e

Page 134: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 3: Estructuras lógicas repetitivas

Pseudocódigo:

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

breakFin_siNUM = NUM + 1

Fin Mientras Escribir TOTAL Terminar proceso

Codificación en PHP

<?php

SNUM = 1;

SSUELDO = 500;

while ($NUM < 20) {STOTAL = STOTAL + SSUELDO;

echo "SNUM = SSUELDO <br>";

if (SNUM == 10){

break;

}

G r u p o E d i t o r i a l M e g a b y t e 135

Page 135: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

SNUM ++;

}echo "Total de sueldos a la mitad: STOTAL";

?>

D iagram a de flujo

Explicación 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:

136 G r u p o E d i t o r i a l M e g a b y t e

Page 136: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 3: Estructuras lógicas 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 línea y de esta manera evitara que se vea todo en una línea.

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 condición automáticamente se detendrá con break, y mostrara la suma STOTAL de sueldos. En SNUM++ es igual que SNUM = SNUM + 1.Resultado PHP en WEB

G r u p o E d i t o r i a l M e g a b y t e 137

Page 137: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Ejemplo 5Escriba un pseudocódigo, que muestre la lista de años desde 2000 hasta el 2010, y que se detenga cuando en la lista encuentre el año actual.

Pseudocódigo:

Iniciar proceso Declarar Variables

NUM: Entero ANIO: Real

Hacer NUM = 1 Mientras NUM < 10

Calcular ANIO = ANIO + 1 Escribir ANIO Si ANIO = YEAR entonces

breakF in siNUM = NUM + 1

FinM ientras Terminar proceso

Codificación en PHP

<?php

$NUM = 1;

SANIO = 2000;

while (SNUM < 10) {

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

if (SANIO == date("Y")){

break;

G r u p o E d i t o r i a l M e g a b y t e

Page 138: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 3: Estructuras lógicas repetitivas

}$NUM ++;

}

?>

Resultado PHP en WEB

Explicación PHPPHP 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;

$AN10 = 2000;

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

G r u p o E d i t o r i a l M e g a b y t e 139

Page 139: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

echo "SANIO <br>";la etiqueta html <br> es para dar un salto de línea y de esta manera evitara que se vea todo en una línea.

El while permite repetir una secuencia mientras SNUM sea menor que < 10, dentro de este bucle sumara los años y los ira mostrando echo "SANIO <br>"; Note que solo debe mostrara hasta el años actual y para esto utilizamos SANIO == date("Y"), para cuando cumpla la condición automáticamente se detendrá con break.

Diagrama de flujo

140 G r u p o E d i t o r i a l M e g a b y t e

Page 140: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 3: Estructuras lógicas repetitivas

Ejemplo 6Escriba un pseudocódigo, que cuente del 1 al 20 cuantos números NO son divisibles entre 2 y muestre cuales son los números, y al finalizar debe sumar todos los números y mostrar un Total.

Pseudocódigo:

Iniciar proceso Declarar Variables

I: Entero N : Entero SUM:Real

Hacer N = 1 Mientras I < 20

Si N MOD % 2 <> 0 entonces Escribir NCalcular SUM = SUM + N

Fin_si N = N + 1 1 = 1+ 1

Fin MientrasEscribir Suma de números NO divisibles entre 2: SUM Terminar proceso

Codificación en PHP

<?php

$1 = 0;$N = 1;

while ($1 < 20) {

if ($N % 2 <> 0){

G r u p o E d i t o r i a l M e g a b y t e 141

Page 141: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

echo "$N < br>";

$SUM = $SUM + $N;

}

$I++;

$N++;

}echo "Sum a de núm eros NO divisibles entre 2: $SUM ";

?>

D iagram a de flujo

142 G r u p o E d i t o r i a l M e g a b y t f

Page 142: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 3: Estructuras lógicas repetitivas

Resultado PHP en WEB

Explicación PHPPHP 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 línea y de esta manera evitara que se vea todo en una línea.

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

G r u p o E d i t o r i a l M e g a b y t e 143

Page 143: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Para esto utilizamos un $N % 2 o 0, que cuando cumpla la condición muestre el numero NO divisible y cuente $N++, también 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 DesdeCuando se sabe el número de interacciones que tendrán que ejecutarse cierta cantidad de acciones, es recomendable usar la estructura Desde, esta estructura no solo ejecuta un número de acciones, además cuenta internamente el número de interaciones, esto elimina la necesidad de un contador, lo que no sucede con las estructuras Mientras y Hacer Mientras.

A continuación veremos el pseudocódigo de flujo con su respectivo algoritmo para la estructura:

Desde I = Vi Hasta V f INC

Hacer

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: Expresión de tipo entero. Representa el incremento/decremento de la variable de control, cuando se omite esta expresión se supone que el incremento es en una unidad.

ümm G r u p o E d i t o r i a l M e g a b y t e

Page 144: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 3: Estructuras lógicas repetitivas

Cualquier bucle FOR puede ser sustituido por otro WHILE. Sin embargo, el bucle FOR resulta muy útil cuando debemos ejecutar un bloque de código a condición de que una variable se encuentre entre un valor mínimo y otro máximo.

E jem p lo 7

Escriba un pseudocódigo, que muestre el total de números divisibles y no divisibles entre 3 en un rango del 1 al 50.

Pseudocódigo:

Iniciar proceso Declarar Variables

NUM : Entero SD : Real ND: Real

Hacer S = 0Desde NUM = 1 Hasta 50 INC NUM = NUM + 1 Hacer

SI NUM % 3 = 0 entonces Calcular: SD = SD + 1

SinoCalcular: ND = ND + 1

F inS iFin Desde Escribir SD, SD Terminar proceso

Codificación en PH P

<?phpfor ($num = 1; $num <=50; $num++){

if ($num % 3 == 0){

$SD = $SD + 1;

G r u p o E d i t o r i a l M e g a b y t e 145

Page 145: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

} else {

$ND = $ND + 1;

}

}echo "Si Divisible $SD <br>";

echo "No Divisible $ND <br>";

?>

1 46 G r u p o E d i t o r i a l M e g a b y t e

Page 146: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 3: Estructuras lógicas repetitivas

Resultado PHP en WEB

S É r a f c f c j l

| A rch ivo "Editar V er I r M arca d o re s H e rra m ie n ta s A j/u d a 0

3 b ’ h t tp : / / jo e l v <Q \r Q l_

^ P rim eros p asos , Ú ltim as n o tic ia s

Si Divisible 16 No Divisible 34

L is to

Explicación 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 línea y de esta manera evitara que se vea todo en una línea.

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 r u p o E d i t o r i a l M e g a b y t e 147

Page 147: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Con if creamos la condicioón 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 jem p lo 8

Escriba un pseudocódigo, que genere la tabla de multiplicar del 5 y muestre los resultados línea por línea.

Pseudocódigo:

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 inD esde Terminar proceso

Codificación en PHP

<?phpfor ($num = 1; $num <=10; $num++){

SR = $num * 5;

1 48 G r u p o E d i t o r i a l M e g a b y t e

Page 148: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 3: Estructuras lógicas repetitivas

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

}?>

Diagrama de flujo

Resultado PHP en WEB

G r u p o E d i t o r i a l M e g a b y t e 149

Page 149: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Explicación PHPPHP 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 línea y de esta manera evitara que se vea todo en una línea.

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.

Ejemplo 9Escriba un pseudocódigo, que genere la tabla de multiplicar del 1 al 9 y muestre los resultados línea por línea.

Pseudocódigo:

Iniciar proceso Declarar Variables

NUM : Entero TABLA : Entero R : Real

1 50 G r u p o E d i t o r i a l M e g a b y t e

Page 150: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 3: Estructuras lógicas 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 inD esde

Fin_Desde Terminar proceso

Diagrama de flujo

G r u p o E d i t o r i a l M e g a b y t e 151

Page 151: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Codificación en PHP

<?phpfor (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 G r u p o E d i t o r i a l M e g a b y t e

Page 152: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 3: Estructuras lógicas repetitivas

Explicación 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 línea y de esta manera evitara que se vea todo en una línea.

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 jem p lo 10

Escriba un pseudocódigo, que halle el número de término para la progresión siguiente: 1 ,2 ,4 ,....... ,20000

Pseudocódigo:

Iniciar proceso Declarar Variables

G r u p o E d i t o r i a l M e g a b y t e 153

Page 153: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Finjo aplicados en PHP

I: Entero C : Entero

hacer: C = 0Desde I = 1 Hasta 20000 INC I = I * 2

C = C + 1 F inD esde Escribir C Terminar proceso

Codificación en PHP

<?php

$c = 0;

for ($1 = 1; $1 <= 20000; $I*=2){

$c++;echo "Números: $c <br>";

}?>

Diagrama de flujo

154 G r u p o E d i t o r i a l M e g a b y t e

Page 154: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 3: Estructuras lógicas repetitivas

Resultado PHP en WEB

Explicación PHPPHP 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 "Números: $c <br>";

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

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 progresión en bucle $ I *= 2

G r u p o E d i t o r i a l M e g a b y t e 155

Page 155: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org
Page 156: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo IVArreglos Arrays

O b j e t i v o s :

En este cap itu lo usted a p r e n d e r a d es arro l la r Algori tmos Avanzado basad o s en Arreg los, para luego p lasm ar lo en un D iagram as de f lujo y ap l icar lo en el l en g u a je PHP

C o n t e n d i ó :

¿Que es un array?Arrays asociativosarrays M u l t id im e n s io n a le sarray_slice ()

a r ra y sh ift f )

u n s e t f )a r r a y _ p u s h ( )E je m p lo s

Algoritmos y Diagramas de flujo Aplicados en PHP

Page 158: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 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 programación.

NOTA: En este capitulo explicaremos primero como trabajar el arrays en PHP posteriormente se explicara algunos ejemplos mas avanzados donde se aplicara con algoritmos y diagramas de fujo.

Existen dos formas de crear arrays, estática o dinámicamentePara crear arrays de forma estática usamos php array() con la siguiente sintaxis:

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

Ejemplo 1Para almacenar nombres de ciudades. Podríamos usar variables simples, ejemplo:

G r u p o E d i t o r i a l M e g a b y t e 159

Page 159: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

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 específico refiriéndonos a su índice escribir simplemente el siguiente código:

<?php

echo $ciudades|3];

?>

También se puede crear arrays dinámicamente, solo agregando nuevos valores. Por ejemplo:

<?php

$eiudades|4| = "Trujillo";

?>

1 60 G r u p o E d i t o r i a l M e g a b y t e

Page 160: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 4: Arreglos - Arrays

Resultado PHP en WEB

Agregando el valor al array. También por este mismo sistema se puede modificar el valor de un array, e incluso añadir valores sin asignar índice, que será agregado automáticamente por PHP:

<?php

$ciudades[] = "Piura";

?>

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

arrays asociativosPermite usar strings como índices, es decir, cadenas de texto como índices. Este tipo de array es conocido como array asociativo:

E jem p lo 2

<?php

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

G r u p o E d i t o r i a l M e g a b y t e 161

Page 161: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

"Arequipa"=>"Camana",

"Loreto"=>" Amazonas");

echo $ciudades[Arequipa|;

?>

Resultado PHP en WEB

Listo

arrays MultidimensionalesUn array multidimensional puede almacenar a su vez otro arrays:

Ejemplo 3

<?php

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

"telefono" => Stelefonos,"email" => "[email protected]");

162 G r u p o E d i t o r i a l M e g a b y t e

Page 162: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 4: Arreglos - Arrays

Stelefonos = array("trabajo" => "2306440", "casa" => "2459512","móvil" => "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 número de casillas de un arreglo, teniendo en cuenta los índices de las casillas que deseamos conservar.

G r u p o E d i t o r i a l M e g a b y t e 163

Page 163: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Ejemplo 4

<?Sfrutas = array ("Manzana", "Pera", "Plátano", "Ciruela", "Fresa");

Ssalida = arrayslice (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>";

?>

Explicación:

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

Sfrutas = array ("Manzana", "Pera", "Plátano", "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.

1 64 G r u p o E d i t o r i a l M e g a b y t e

Page 164: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 4: Arreglos - Arrays

Resultado PHP en WEB

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

Ssalida = arrayslice (Sfrutas, 0, 3);foreach (Ssalida as Smostrar)

echo "Smostrar <br>";

echo "<p>";

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

Ssalida = arrayslice (Sfrutas, 3, 5);

foreach (Ssalida as Smostrar)

echo "Smostrar <br>";

echo "<p>";

G r u p o E d i t o r i a l M e g a b y t e 165

Page 165: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Para reste tercer bloque solo le indicamos que muestre solo un nombre basándose en el segundo bloque.

Ssalida = arrayslice ($salida, 1);foreach (Ssalida as Smostrar)

echo "Smostrar <br>";

echo "<p>";

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

Ejemplo 5

<?

Sfrutas = array ("Manzana", "Pera", "Plátano", "Ciruela", "Fresa");

Ssalida = arraysh ift (Sfrutas);

echo "La función devuelve: " . Ssalida . "<br>";

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

echo "<p>";

Ssalida = array shift (Sfrutas);

echo "La función devuelve: " . Ssalida . "<br>";

foreach (Sfrutas as Smostrar)

echo "Smostrar <br>";?>

166 G r u p o E d i t o r i a l M e g a b y t e

Page 166: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 4: Arreglos - Arrays

Resultado PHP en WEB

Explicación:

Primero creamos el array con nombres de frutas y lo almacenamos en una variable Sfrutas:Sfrutas = array ("Manzana", "Pera", "Plátano", "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 función devuelve: " . Ssalida . "<br>";

Luego con foreach encerramos la variable Sfrutas, donde están 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 r u p o E d i t o r i a l M e g a b y t e 167

Page 167: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

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 función 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 jem p lo 6

<?

$frutas = array ("frutal" => "Manzana", "fruta2" => "Pera", "fruta3" => "Plátano", "fruta4" => "Ciruela", "frutaS" => "Fresa");

foreach (Sfrutas as Smostrar)

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

unset ($frutas("fruta3"]);

1 68 G r u p o E d i t o r i a l M e g a b y t e

Page 168: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capitulo 4: Arreglos - Arrays

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

?>

Resultado PH P en WEB

Explicación:

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" => "Plátano", "fruta4" => "Ciruela", "fruta5" => "Fresa");

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

G r u p o E d i t o r i a l M e g a b y t e 169

Page 169: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

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 número de casillas del array aumentará de acuerdo a la cantidad de elementos que se haya ingresado.

E jem p lo 7

<?

Sfrutas = array ("Manzana", "Pera", "Plátano", "Ciruela", "Fresa");

array_push($frutas, "Papaya", "Cereza", "Melón");

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

?>

1 7 0 G r u p o E d i t o r i a l M e g a b y t e

Page 170: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 4: Arreglos - Arrays

Resultado PH P en WEB

Explicación:

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

Sfrutas = array ("Manzana", "Pera", "Plátano", "Ciruela", "Fresa");

Ahora con array_push encerramos la variable Sfrutas y a continuación añadimos los demás nombres que se agregaran el arrays.

array push($frutas, "Papaya", "Cereza", "Melón");

Ahora mostramos el nuevo arreglo con los nombres añadidos:

foreach (Sfrutas as Smostrar)

echo "Smostrar <br>";

G r u p o E d i t o r i a l M e g a b y t e 171

Page 171: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

array _merge()La función array_merge(). Permite unir unos ó más arrays y devuelve un arreglo con todos los campos de los vectores pasados.

Ejemplo 8

<?

Sfrutas = array ("Manzana", "Pera", "Plátano", "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>";

?>

Explicación:

Primero creamos los arrays y lo almacenamos en variables:

Sfrutas = array ("Manzana", "Pera", "Plátano", "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 G r u p o E d i t o r i a l M e g a b y t e

Page 172: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 4: Arreglos - Arrays

Resultado PHP en WEB

Ahora mostramos todos los arreglos:

foreach (Sresultado as Smostrar)

echo "Smostrar <br>";

Finalizando Arrays PHPEn este capitulo se ha explicado el manejo de arrays en PHP, esta es una forma fácil 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 capítulos anteriores, habrá notado que para almacenar una palabra o numero en una variable se realizaba lo siguiente:

G r u p o E d i t o r i a l M e g a b y t e

Page 173: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

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 utilizaría? ... Array!!! Correcto, entonces haríamos lo siguiente:

Snombres = array ("Joel De la Cruz "Carmen Mejia", "Karol Mejia", “Cristhian De la Cruz”);

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 línea por línea 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 añaden en un arrays, que luego puede mostrar al usuario los productos que esta comprando.

Otro caso también es cuando se desea borrar una lista de registros, ejemplo: cuando borrar sus correos en Hotmail o Yahoo seleccionando varios checkbok.

Ejemplo 9Construya un pseudocódigo, que busque el nombre de una persona en un arreglo que contega 5 datos personas.

Pseudocódigo:

Iniciar proceso Declarar Variables

BUCAR : Carácter MOSTRAR : Carácter NOMBRES: Arreglo

174 G r u p o E d i t o r i a l M e g a b y t e

Page 174: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 4: Arreglos - Arrays

Desde NOMBRES como MOSTRAR Hacer SI MOSTRAR = BUSCAR entonces

Escribir: Nombre EncontradoFin si

F inD esde Terminar proceso

D iagram a de flujo

G r u p o E d i t o r i a l M e g a b y t e 175

Page 175: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Codificación en PHP

<?

Sbuscar = "Carmen";

Snom bres = array ("Joel", "Carm en", "Carol", "Cristhian", "Mary");

foreach (Snombres as Smostrar)

if (Smostrar == $buscar){

echo "Nombre Encontrado: Smostrar";

}?>

Resultado PHP en WEB

Ejemplo 10Construya un pseudocódigo, que inserte el nombre de una persona en un arreglo y luego muestre el nombre insertado..

176 G r u p o E d i t o r i a l M e g a b y t e

Page 176: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 4: Arreglos - Arrays

Pseudocódigo:

Iniciar proceso Declarar Variables

INSERTAR : Carácter MOSTRAR : Carácter NOMBRES: Arreglo

Hacer NOMBRES, INSERTAR Desde NOMBRES como MOSTRAR Hacer

SI MOSTRAR = INSERTAR entonces Escribir: Nombre Insertado

Fin_siF inD esde Terminar proceso

G r u p o E d i t o r i a l M e g a b y t e 177

Page 177: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

v

Resultado PHP en WEB

< ^ 3 - h t tp : / / jo e l. '* ' © I r i d

^ Prim eros pasos Ú ltimas notic ias

Nombre Insertado: Sagi

Listo

Codificación en PHP

<?

Sinsertar = "Sagi";

Snombres = array ("Joel", "Carm en", "Carol", "Cristhian", "Mary");

array_push($nombres, Sinsertar);

178 G r u p o E d i t o r i a l M e g a b y t e

Page 178: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 4: Arreglos - Arrays

foreach (Snombres as Smostrar)

if (Smostrar == $insertar){

echo "Nombre Insertado: Smostrar";

}?>

E jem p lo 11

Construya un pseudocódigo, que elimine el nombre de una persona en un arreglo y luego busque en el arreglo para comprobar si el nombre ha sido eliminado.

Pseudocódigo:

Iniciar proceso Declarar Variables

ELIMINAR : Carácter MOSTRAR : Carácter NOMBRES, INDICE: Arreglo

Hacer NOMBRES, ELIMINARDesde NOMBRES como INDICE -AMOSTRAR Hacer

SI MOSTRAR o ELIMINAR entonces Escribir: Nombre Eliminado

F in s iF inD esde Terminar proceso

Diagrama de flujo s-----------( INICIO

G r i j p o E d i t o r i a l M e g a b y t e 1 79

Page 179: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Codificación en PHP

<?

Seliminar = "NI";

Snombres = array ("NI" =>"JoeI", "N2" =>"Carm en", "N3" =>"Carol", "N4" =>"Cristhian", "N5" =>"Mary");

unset ($nombres[$eliminarj);

foreach (Snombres as $indice=>$mostrar)

if (Smostrar <> $indice){

1 8 0 G r u p o E d i t o r i a l M e g a b y t e

Page 180: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 4: Arreglos - Arrays

echo "Nom bre eliminado <br>";

}?>

Resultado PH P en WEB

Ejemplo 12Construya un pseudocódigo, que busque a un empleado por su código y le aumente el sueldo en 2.5 y muestre el nuevo sueldo.

Pseudocódigo:

Iniciar proceso Declarar Variables

CODIGO : Carácter MOSTRAR : Carácter SUELDOS, INDICE: Arreglo NSUELDO: Real

G r u p o E d i t o r i a l M e g a b y t e 181

Page 181: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

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 insiF inD esde Terminar proceso

D iagram a de flujo

Page 182: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 4: Arreglos - Arrays

Codificación en PHP

<?

Scodigo = "CD-278";

$sueldos = array ("AB-234" =>"600", "CD-278" =>"500", "SD- 120" =>"300");foreach (Ssueldos as $indice=>$mostrar)

if ($codigo == $indice){

$nsueIdo = $mostrar * 2.5;

echo "Nuevo Sueldo Scodigo — Snsueldo <br>";

}

?>

Resultado PHP en WEB

Ejemplo 13Construya un pseudocódigo, 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 r u p o E d i t o r i a l M e g a b y t e 183

Page 183: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Pseudocódigo:

Iniciar proceso Declarar Variables

INDICE: Carácter MOSTRAR : Carácter A, B, RESULTADO : Arreglo

Hacer RESULTADO = A, BDesde RESULTADO como INDICE A MOSTRAR Hacer

SI MOSTRAR > 13 entoncesEscribir: INDICE, MOSTRAR

Fin siF inD esde Terminar proceso

Diagrama de flujo

18 4 G r u p o E d i t o r i a l M e g a b y t e

Page 184: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 4: Arreglos - Arrays

Resultado PH P en WEB

Codificación 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 r u p o E d i t o r i a l M e g a b y t e 185

Page 185: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

foreach (Sresultado as $indice=>$mostrar) if (Smostrar > 13){

echo "Sindice -- Smostrar <br>";

}?>

E jem p lo 14

Construya un pseudocódigo, 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.Pseudocódigo:

Iniciar proceso Declarar Variables

INDICE: Carácter MOSTRAR : Carácter A, B, RESULTADO : Arreglo

Hacer RESULTADO = A, BDesde RESULTADO como INDICE -> MOSTRAR Hacer

SI MOSTRAR > 13 entonces Eliminar: INDICE

F in s iF inD esdeDesde RESULTADO como INDICE -> MOSTRAR Hacer

Escribir: INDICE, MOSTRARFinD esde Terminar proceso

Diagrama de flujo

^ INICIO ^

1 86 G r u p o E d i t o r i a l M e g a b y t e

Page 186: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 4: Arreglos - Arrays

Codificación en PHP

<?

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

G r u p o E d i t o r i a l M e g a b y t e 187

Page 187: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

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

Ejemplo 15Construya un pseudocódigo, donde se pueda ingresar el nombre de un persona en un arreglo, al final debe mostrar 2 lista, la primera donde todavía no sea ingreso el nombre y la segunda cuando el nombre de haya ingresado.

1 8 8 G r u p o E d i t o r i a l M e g a b y t e

Page 188: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 4: Arreglos - Arrays

Pseudocódigo:

Iniciar proceso Declarar Variables

INSERTAR: Carácter MOSTRAR : Carácter NOMBRES : Arreglo

Desde NOMBRES como MOSTRAR HacerEscribir: MOSTRAR

FinD esde Hacer INSERTARDesde NOMBRES como MOSTRAR Hacer

Escribir: MOSTRARFin_Desde Terminar proceso

D iagram a de flujo

G r u p o E d i t o r i a l M e g a b y t e 189

Page 189: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Resultado PHP en WEB

Codificación en PHP

<?

Sinsertar = "Joel";

1 90 G r u p o E d i t o r i a l M e g a b y t e

Page 190: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 4: Arreglos - Arrays

Snombres = array ("Juan", "Pepe", "María", "Carol", "Luis");

foreach (Snombres as Smostrar) echo "Smostrar <br>";

echo "<p>";

array_push($nombres, Sinsertar);

foreach (Snombres as Smostrar) echo "Smostrar <br>";

?>

E jem p lo 16

Construya un pseudocódigo, que busque en un arreglo el año actual y lo resalte.

Pseudocódigo:

Iniciar proceso Declarar Variables

ANIO: Real VARANIOS : Real MOSTRAR : Real

Desde VARANIOS como MOSTRAR Hacer Si MOSTRAR =f ANIO

Escribir: MOSTRARS in o

Escribir: MOSTRARFin Si

F inD esde Terminar proceso

G r u p o E d i t o r i a l M e g a b y t e 191

Page 191: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Diagrama de flujo

Codificación 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>";

}?>

19 2 G r u p o E d i t o r i a l M e g a b y t e

Page 192: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 4: Arreglos - Arrays

Resultado PHP en WEB

E jem p lo 17

Construya un pseudocódigo, seleccione un arreglo desde una condición, utilizando IF... else...

Pseudocódigo:

Iniciar proceso Declarar Variables

CONDICION: Real NOMBRES : cadena TELEFONOS : cadena PAIS : cadena

Hacer CONDICION = 2 Si condición = 1

Desde NOMBRES como MOSTRAR Hacer Escribir: MOSTRAR

Fin_DesdeS in o

Si condición = 2

G r u p o E d i t o r i a l M e g a b y t e 193

Page 193: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Desde TELEFONOS como MOSTRAR HacerEscribir: MOSTRAR

F inD esde Fin Si

S in o Si condición = 3

Desde PAIS como MOSTRAR HacerEscribir: MOSTRAR

F inD esde Fin_ Si

F inS i Terminar proceso

Diagrama de flujo

1 94 G r u p o E d i t o r i a l M e g a b y t e

Page 194: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 4: Arreglos - Arrays

Codificación en PHP

<?

Scondicion = 2;SNombres = array ("Mary", "Carol", "Luis", "Juan", "Markus");STelefonos = array ("234-5467", "897-2345", "123-4357", "278- 4532", "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>";

G r u p o E d i t o r i a l M e g a b y t e 195

Page 195: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

}elseif ($condicion ==3){foreach (SPais as Smostrar)

echo "Smostrar <br>";

}?>

Resultado PHP en WEB

E jem p lo 18

Construya un pseudocódigo, seleccione un arreglo desde una condición, utilizando CASE

Pseudocódigo:

Iniciar proceso Declarar Variables

OPCION: Real NOMBRES : cadena

1 9 6 G r u p o E d i t o r i a l M e g a b y t e

Page 196: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 4: Arreglos - Arrays

TELEFONOS : cadena PAIS : cadena

Hacer OPCION = 3 Caso = 1

Desde NOMBRES como MOSTRAR HacerEscribir: MOSTRAR

F inD esde Caso = 2

Desde TELEFONOS como MOSTRAR HacerEscribir: MOSTRAR

F inD esde Fin_ Si

Caso = 3Desde PAIS como MOSTRAR Hacer

Escribir: MOSTRAR F inD esde

Terminar proceso

Diagram a de flujo

G r u p o E d i t o r i a l M e g a b y t e 197

Page 197: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Codificación en PHP

<?

$opcion = 3;

SNombres = array ("Mary", "Carol", "Luis", "Juan", "Markus");STelefonos = array ("234-5467", "897-2345", "123-4357", "278- 4532", "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 G r u p o E d i t o r i a l M e g a b y t e

Page 198: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 4: Arreglos - Arrays

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

}?>

Resultado PHP en WEB

E jem p lo 19

Construya un pseudocódigo, que calcule el tipo de cambio en dólares ó euros, utilizando un arreglo.

Pseudocódigo:

Iniciar proceso Declarar Variables

TIPO: Real CANTIDAD : Real MONEDAS : Cadena

Hacer CANTIDAD = 250

G r u p o E d i t o r i a l M e g a b y t e 199

Page 199: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Desde MONEDAS como INDICE -> MOSTRAR Hacer Si INDICE = TIPO

TOTAL = MOSTRAR * CANTIDAD Escribir: MOSTRAR

FinS iF inD esde Terminar proceso

D iagram a de flujo

200 G r u p o E d i t o r i a l M e g a b y t e

Page 200: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 4: Arreglos - Arrays

Codificación 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 20Construya un pseudocódigo, que muestre las notas de los alumnos seleccionando un código.

G r u p o E d i t o r i a l M e g a b y t e 201

Page 201: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Pseudocódigo:

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 inD esde Terminar proceso

Diagrama de flujo

202 G r u p o E d i t o r i a l M e g a b y t e

Page 202: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 4: Arreglos - Arrays

Codificación 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");

}

G r u p o E d i t o r i a l M e c a b v t f 2 0 3

Page 203: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

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

?>

Resultado PH P en WEB

Ejemplo 21Construya un pseudocódigo, que genere un arreglo con datos personales y luego que se muestren.

Pseudocódigo:

Iniciar procesoDeclarar Variables

NOMBRES: Carácter APELLIDOS: Carácter TELEFONO: Carácter EMAIL: Carácter DATOS: Cadena MOSTRAR: Carácter

Hacer DATOS = NOMBRES, APELLIDOS, TELEFONO, EMAIL

G r u p o E d i t o r i a l M e g a b y t e

Page 204: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 4: Arreglos - Arrays

Desde DATOS como INDICE -> MOSTRAR Hacer Escribir: INDICE MOSTRAR

FinD esde Terminar proceso

Diagrama de flujo

Codificación en PHP

<?

$Nombres = "Joel";

SApeüidos = "De la Cruz";

STelefono = "241-5239";

$email = "[email protected]";

G r u p o E d i t o r i a l M e g a b y t e 2 0 5

Page 205: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Sdatos = array ("Nombres" =>"$Nombres ", "Apellidos" =>"$A pelIidos" , "Telefono" =>"$T elefono", "em ail" =>"$email");

foreach ($datos as $indice=>$mostrar)echo "Sindice — $mostrar<br>";

?>

Resultado PHP en WEB

E jem p lo 22

Construya un pseudocódigo, que genere un arreglo desde un for y muestre los resultados.

Pseudocódigo:

Iniciar proceso Declarar Variables

VAR: Cadena ANIO: Real

2 0 6 G r u p o E d i t o r i a l M e g a b y t e

Page 206: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 4: Arreglos - Arrays

MOSTRAR: Real

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

Fin Desde

Desde VAR como MOSTRAR HacerEscribir: MOSTRAR

FinD esdeTerminar proceso

Diagrama de flujo

G r u p o E d i t o r i a l M e g a b y t e 2 07

Page 207: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Resultado PHP en WEB

” i ■ • <■' h t tp : / / jo e l ' Q I r

¡ Prim eros pasos m Ú lt mas notic ias

19961997199819992000 2001 2002200320042005

Listo

Codificación en PHP

<?php$var = array ();for ($i=l; $i <= 10 ; $i++) {

$anio = Si + 1995;

2 0 8 G r u p o E d i t o r i a l M e g a b y t e

Page 208: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Capítulo 4: Arreglos - Arrays

4

array_push($var, Sanio);

}foreach (Svar as Smostrar)

echo "Smostrar <br>”;

echo "<p>";

?>

E jem p lo 23

Construya un pseudocódigo, que cuente los variables de un arreglo..

Pseudocódigo:

Iniciar proceso Declarar Variables

PARTES: Cadena NUMELENTQS: Real

Desde I = 0*Hasta NUMELENTOS INC Escribir: La parte I es PARTES

FinJDesde Terminar proceso

I = I' + 1

Diagrama de flujo

G r u p o E d i t o r i a l M e g a b y t e 2 0 9

Page 209: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Algoritmos y Diagramas de Flujo aplicados en PHP

Resultado PHP en WEB

^ ^ [ 0 h ttp : // jo e l v : © Ir j [C L

Primeros pasos © Últimas no t cias

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

Listo

Codificación en PHP

<?php

Spartes = array("T eclado", "M onitor", "M ouse", "Webcam");

Snumelentos = count(Spartes);

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

echo "La parte Si es $partes[$i| <BR>";

. }?>

210 G r u p o E d i t o r i a l M e g a b y t e

Page 211: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

Esta impresión se realizo en los talleres gráficos de Grupo editorial Megabyte

L IM A -P E R Ú

Page 212: Algoritmos y Diagramas de Flujo Aplicados en PHP - Megabyte-FREELIBROS.org

El libro de algoritmos esta compuesto de 4 capítulos que contiene teoría y ejemplos básicos de programación, el algoritmo es el inicio de la programación porque esta conformado de pseudocódigos y diagramas de flujo que dan una visión amplia de como debe iniciarse y finalizar una programación basada en operadores, estructuras selectivas, estructuras repetitivas y manejo de arreglos.

El pseudocódigo no es directamente un lenguaje de programación que se pueda ejecutar en un computador y probar su correcto funcionamiento y tampoco indica si esta correctamente colocado los bloques de código, ya que cada lenguaje de programación como C, C++, JavaScript, entre otros, trabaja sus funciones distintamente a otros, pero siempre manteniendo la lógica inicial de algoritmos. Por esta razón 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.