Megabyte
Megabyte G R U P O
E D I T O R T A L
Prim era Edición, O ctubre 2006
Á re a : C o m p u ta c ió n e In fo rm á tic a H e c h o el D e p ó s ito L e g a l e n la B ib lio te c a N a c io n a l d e l P e rú N9 2006 - 9786 (L e y N 9 2 6 9 0 5 / D .S . N 9 0 1 7 -9 8 -E D ) R .U .C . N 9 2 0 5 0 7 9 9 3 4 4 4 IS B N : 9 9 7 2 - 821 - 8 5 - 4 © E d w a rd A b u rto C o rre a G e r e n te G e n e ra l___________ © J o e l d e la C ru z V illa r ______________ A u to r © G e a n C a rio A p o lin a rio G a rc ía D is e ñ o d e C a rá tu la
Algoritmos y Diagramas de Flujo aplicados en PHP D erech os R eservado s / Decreto Ley 822 P r o h ib id a la r e p r o d u c c ió n t o t a l o p a r c i a l d e e s t e l i b r o , su t r a t a m i e n t o in f o r m á t ic o la t r a n s m is ió n d e n in g u n a o t r a fo r m a o p o r c u a l q u i e r o t r o m e d io y a s e a e le c t r ó n i c o , m e c á n ic o , p o r f o t o c o p ia , p o r r e g is tr o u o tr o s m é to d o s sin p e rm is o p r e v io y p o r e s c r ito d e lo s t it u la r e s d e C o p y rig h t.
D is trib u c ió n y V e n ta s Jr. R u fin o T o rric o 8 8 9 of. 2 0 8 - C e rc a d o d e L im a T e le fa x : 3 3 2 -4 1 1 0 N e x te l: 4 0 7 *4 5 1 5 w w w .g ru p o m e g a b y te .c o m v e n ta s @ g ru p o m e g a b y te .c o m w w w . e d ito r ia lm e g a b y te .c o m v e n ta s @ e d ito r ia lm e g a b y te .c o m C ta . B a n c o d e C ré d ito S/. 1 9 1 -1 2 5 9 1 0 0 5 -0 -8 6 $. 1 9 1 -1 2 5 9 1 0 0 6 -1 -8 7
D edicatoria
D edicatoria En memoria de un gran Amigo E.B.A. C. y a Carmen Rosa por su apoyo en la realización de esta obra
G
rupo
E
d it o r ia l
M
egabyte
5
Contenido de CD
Contenido del CD El CD incluye todos los ejemplos explicados en libro en formato Web, cada ejemplo esta en un archivo con extensión PHP que tiene que ser ejecutado desde un servidor LIN U X , 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 ejem plos no requieren dependencias como base de datos u otros programas, también puede ejecutarse desde cualquier directorio Web.
Indice
/
Indice Introducción............................................................................................................... 15
Capítulo I Conceptos Básicos Algoritm os..................................................................
19
Programa........................................................................................................... 19 Heurística.......................................................................................................... 20 Diagrama de flujo.............................................................................................20 Variables............................................................................................................ 22 Constantes........................................................................................................ 22 Expresiones.......................................................................................................22 Operadores...............................................................................................................22 Aritméticos........................................................................................................ 22 Relaciónales.....................................................................................................23 Lógicos............................................................................................................... 23 AND (Y)..............................................................................................................23 OR (O)................................................................................................................24 NOT (NO).................................................................................................................. 24 Prioridad de los O p erad ores....................................................................... 24 ENTRADA / SALIDA de datos.............................................................................. 24 LEER.................................................................................................................. 25 G
rupo
E
d it o r ia l
M
egabyte
9
Algoritmos y Diagramas de Flujo aplicados en PHP
ESCRIBIR...................................................'...................................................... 25 Tipos de datos escalares.......................................................................................25 Asignaciones............................................................................................................ 26 Declaración de variables........................................................................................26 Técnicas de desarrollo de algoritmos.................................................................26 Pseudocódigo............................................................................................................28 Ejemplo 1: Imprimir el área de un triángulo....................................................... 28 Ejemplo 2: Formando una o ra c ió n ..................................................................... 31 Ejemplo 3: Escriba el resultado de la siguiente expresión Aritmética
33
Ejemplo 4: Promedio de sus calificaciones....................................................... 35 Ejemplo 5: Calcular peso expresado en kilogramos y su altura expresada en m etros............................................. 37 Ejemplo 6: Convertir Euros a nuevos soles.......................................................39 Ejemplo 7: Mostrar la fecha y hora actual..........................................................41 Ejemplo 8: Convertir en Euros y Dólares 2 cantidades................................... 43 Ejemplo 9: Calcular el área de un triangulo.......................................................45 Ejemplo 10: Calcular el área y volumen de una pelota................................... 48 Ejemplo 11: Calcularla distancia entre dos postes de alumbrado público
50
Ejemplo 12: Calcular el porcentaje de una encuesta....................................... 53 Ejemplo 13: Calcular el radio y la altura de un cilin d ro ................................... 55
Capítulo II Estructuras lógicas selectivas Estructura Si...Entonces (Selección simple)......................................................... 62 Ejemplo 1: Buscar un c o lo r ..................................................................................62 Ejemplo 2: Mostrar nota menor igual.................................................................. 64 Ejemplo 3: calcular cantidad menor igual.......................................................... 66 Ejemplo 4: Aplicar aumento de sueldo................................................................68 10
G
rupo
E
d it o r ia l
M
egabyte
ín dice
Estructura Si...Entonces...Si no (Alternativa
doble).........................................70
Ejemplo 5: Mostrar mensaje de acuerdo auna condición................................ 71 Ejemplo 6: Mostrar mensaje de acuerdo auna notaaprobatoria........................ 73 Ejemplo 7: Realizar tipo de cambio de acuerdoal valor dela moneda
75
Ejemplo 8: Aplicar aumento de acuerdo al sueldo......................................... 77 Anidamiento de Estructuras condicionales......................................................... 80 Ejemplo 9: Validar el aumento de unempleado................................................. 81 Ejemplo 10: Aplicar y validar aumentos.............................................................85 Ejemplo 11: ordenar cantidades.......................................................................... 89 Ejemplo 12: Mostrar mensaje de acuerdo a una nota................................... 93 Ejemplo 13: validar y mostrar un mensaje si el númeroespar/impar.
96
Ejemplo 14: Validar edades de niños................................................................ 99 Ejemplo 15: Mostrar mensaje si existe un numero repetido......................... 103 Ejemplo 16: Ordenar números de menor amayor........................................... 106 La estructura de selección múltiple....................................................................109 Ejemplo 17: calcular 2 valores en un menú deselección.............................. 109 Ejemplo 18: Validar fecha de nacimiento.......................................................... 113
Capítulo III Estructuras Lógicas Repetitivas Estructura Hacer Mientras.................................................................................... 122 Ejemplo 1: Obtener el total de su e ld o s........................................................... 124 Ejemplo 2: Listar a ñ o s .........................................................................................127 Ejemplo 3: Contar números divisibles...............................................................130 Estructura Mientras.................................................................................................133 Ejemplo 4: Obtener el total de sueldos de
10obreros................................. 134
Ejemplo 5. Lista los años del 2000 al 2010......................................................138 G
rupo
E
d ito r ia l
M
egabyte
11
Algoritmos y Diagramas de Flujo aplicados en PHP
Ejemplo 6: Mostrar cuantos números NO son divisibles entre 2 ................... 141 Estructura Desde................................................................................................... 144 Ejemplo 7: Mostrar el total de números divisibles y no divisibles.................145 Ejemplo 8: Generar la tabla de multiplicar del 5.............................................. 148 Ejemplo 9: Generar la tabla de multiplicar del 1 al 9......................................150 Ejemplo 10: hallar el 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.............................................. 159 arrays asociativos.................................................................................................. 161 Ejemplo 2: Ejemplo asociativos.................................................................. 161 arrays Multidimensionales.................................................................................... 162 Ejemplo 3: Ejemplo Multidimensionales.....................................................162 a rra y_slice()............................................................................................................163 Ejemplo 4: Ejemplo array_slice()............................................................... 163 a rra y_ sh ift()............................................................................................................ 166 Ejemplo 5: Ejemplo array_shift()................................................................. 166 unset().......................................................................................................................168 Ejemplo 6: Ejemplo u n s e t()........................................................................ 168 a rra y_p ush ()...........................................................................................................170 Ejemplo 7: Ejemplo array_push()............................................................... 170 Finalizando Arrays PHP........................................................................................ 173 En que caso se utiliza array PHP?.................................................................... 174 Ejemplo 9: Busque el nombre de una persona en un arreglo.........................174
12
G
rupo
E
d it o r ia l
M
ecabyte
Indice
Ejemplo 10: Inserte el nombre de una persona en un arreglo...................... 176 Ejemplo 11: Elimine el nombre de una persona en un arreglo...................... 179 Ejemplo 12: Busque a un empleado por su código y le aumente el sueldo en 2.5.......................................................................................................................181 Ejemplo 13: Muestre los nombres y notas aprobatorias de 5 alumnos del aula A y 5 alumnos del aula B................................ 183 Ejemplo 14: Utilizando 2 arreglos Alumnos, Nota, tome como nota desaprobatoria menor a 13..............................................................................................................186 Ejemplo 15: Ingresar el nombre de un persona en un arreglo y mostrarlo el arreglo.......................................................................................................................188
G
rupo
E
d it o r ia l
M
egabyte
13
Introducción
Introducción 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.
G
rl p o
E
d it o r ia l
M
egabyte
15
Capítulo I Conceptos Básicos Objetives:
En este capitulo usted aprender a desarrollar Algoritmos Básicos basados en operadores aritméticos, para luego plasmarlo en un Diagramas de flujo y aplicarlo en el lenguaje PHP. C o n te n d ió : Algoritmos Operadores ENTRADA/SALIDA de datos Tipos de datos escalares Asignaciones Declaración de variables Técnicas de desarrollo de algoritmos Pseudocódigo Ejemplos
Capítulo 1: Conceptos básicos
Los algoritmos Constituyen 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.
C aracterísticas de los algoritm os - Un algoritmo no debe de ser ambiguo. - Debe de tener una secuencia inicial y Final - Cada paso deberá tener una secuencia sucesiva y única. - El algoritmo debe de ser siempre eficiente y dar una solución al problema o de lo contrario mostrar un mensaje que diga "Sin solución"
Programa Un 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
rupo
E
d ito r ia l
M
egabyte
19
Algoritmos v Diagramas de Flujo aplicados en PHP
H eurística L'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".
Diagram a de flujo El 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)
Gráfico 1 20
G
rupo
E d ito r ia l M
egabyte
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. C onector: 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 o p eracio n es lógicas o de com paració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
rupo
E
d it o r ia l
M
egabyte
21
Algoritmos y Diagramas de Flujo aplicados en PHP
Variables Se 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.
Constantes Son 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.
Expresiones Las 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 éticas Relació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. 22
G
rupo
E
d ito r ia l
M
ecabyte
Capítulo 1: Conceptos básicos O p e ra d o r +
A c c ió n Resta Suma Multiplicación División Potencia Módulo División entera
*
/ A
MOD DIV
E je m p lo x = 5-3 x = 2 + 3 x = 2* 3 x = 6 /2 x = 3 A2 x = 5 MOD 2 x= 5 DIV 2
R e s u lta d o 2 5 6 3 9 1 2
El operador MOD devuelve el residuo de una 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ón ales Permiten evaluar las relaciones entre un par de operandos. Los operadores relaciónales son: Operador > >= < <= = != o
o
Acción M ayor que M ayor o igual que M en o r que M enor o igual que Igual D istinto
L ógicos Los operadores 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
rupo
E
d it o r ia l
M
egabyte
23
Algoritmos y Diagramas de Flujo aplicados en PHP OR (O) Produce un resultado con valor de falso false cuando ambos operadores tienen valores falsos; en cualquier otro caso el resultado tendrá un valor de verdad true. Sintaxis: variable 1 OR variable2
NOT (NO) Invierte el valor de verdad de operando. Sintaxis: NOT operando
Ejemplo : Si operando tiene un valor de verdad true, not operando produce un resultado con valor falso false.
Prioridad de los Operadores Los operadores deben ser evaluados según la siguiente prioridad
1 -0 2 .- A 3.- *, /, Mod, Not 4.- +,
And
5.- >, < , > = , < = , < >, =, Or
EN TRA D A / SALIDA de datos Los dispositivos de entrada / salida permiten que el usuario 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
rupo
E
d it o r ia l
M
egabyte
Capítulo 1: Conceptos básicos LEER Permite el ingreso de datos al computador, el dato leido debe ser almacenado en una variable, la sintaxis es la siguiente: LEER variable
ESCRIBIR Permite reportar resultados de un proceso, 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 Resultado Esta 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 escalares Son 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
rupo
E
d it o r ia l
M
egabyte
25
Algoritmos y Diagramas de Flujo aplicados en PHP
Asignaciones Una 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= 5 De 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 variables Mediante la declaración de variables describimos las características de las mismas. La sintaxis que usaremos es la siguiente: N o m b r e d e v a r ia b le : Tipo Entiéndase por tipo, al tipo de dato de la variable.
Técnicas de desarrollo de algoritmos Existen 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. 26
G
rupo
E
d it o r ia l
M
egabyte
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 Up El 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.
E n ton ces... 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
rupo
E
d it o r ia l
M
egabyte
27
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ódigo Diremos 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 determ inadas 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.
Ejem plo 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 28
G
rupo
E
d it o r ia l
M
egabyte
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 proceso 2. Declarar variables H : real B : real A : real 3. LEER B 4. 5. 6. 7.
LEER H A=(B *H )/2 ESCRIBIR A Terminar el proceso
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 introducido sea "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
rupo
E
d it o r ia l
M
egabyte
29
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: Codificación en PHP
Diagrama de flujo
$B = "6"; $H = "10";
print "Área de un Triangulo
"; print "Base = $B
"; print "Altura = $H
";
$A = ($B * $H / 2);
print "Resultado: print $A; ?> Resultado PHP en WEB
30
G
rupo
E
d it o r ia l
M
egabyte
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 , 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
"; print "Base = $B
"; print "Altura = $H
"; print "Resultado: Si solo imprimirá el resultado no es necesario encerarlo entre comillas, ejemplo: print $A; la etiqueta html
es para dar un salto de línea y de esta manera evitara que se vea todo en una línea.
Ejemplo 2 Construya 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
rupo
E
d it o r ia l
M
egabyte
31
Algoritmos y Diagramas de Flujo aplicados en PHP Diagrama de flujo
Codificación en PHP
$A = "La"; SB = "Casa"; $C = "Blanca";
print "Resultado:
"; print $A." ".SB." ".SC ;
?>
Resultado PHP en WEB
32
G
rupo
E
d ito r ia l
M
egabvte
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 3 Construya 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 proceso 2. Declarar variables A, B y C : Entero R : Real 3. LEER A, B y C 4. Calcular R = ((A + B - C)A3)/5 4. ESCRIBIR R 5. Terminar el proceso Diagrama de flujo
Codificación en PHP
print "Resultado:
"; print $R;
?>
G
rupo
E
d it o r ia l
M
egabyte
33
Algoritmos y Diagramas de Flujo aplicados en PHP Resultado PHP en WEB
Explicación PHP PHP inicia con la etiqueta , 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:
"; Si solo imprimirá el resultado no es necesario encerarlo entre comillas, ejemplo: print $R; la etiqueta html
es para dar un salto de línea y de esta manera evitara que se vea todo en una línea. 34
G
rupo
E
d it o r ia l
M
egabyte
Capítulo 1: Conceptos básicos
Ejemplo 4 Construya 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 proceso 2. Declarar variables CODIGO : Entero largo N I, N2, N3, N4, PRO : Real 3. LEER Mat, N I, N2, N3, N4 4. Calcular PRO = (NI + N2 + N3 + N4)/4 4. ESCRIBIR MAT, PRO 5. Terminar el proceso
Diagrama de flujo
Codificación en PHP
SCODIGO = "AB-2006"; $N1 = 16 $N2 = 11 $N3 = 18 $N4 = 15
SPRO = ($N l+$N 2+$N 3+$N 4)/4; print "Codigo: SCODIGO
"; print "Promedio: SPRO
?>
G
rupo
E
d ito r ia l
M
egabyte
Algoritmos y Diagramas de Flujo aplicados en PHP
Resultado PHP en WEB
Explicación PHP PHP inicia con la etiqueta , cuando escribimos las variables le anteponemos el signo y luego ingresamos el valor para cada variable entre comillas y finalizando con ejemplo: SCODIGO = "AB-2006"; $N1 = 16; $N2 = 11; $N3 = 18; $N4 = 15; Sumamos y dividimos las variables y almacenamos el resulto en $PRO, ejemplo:: $PRO = ($N l+$N 2+$N 3+$N 4)/4; El print permite imprimir los valores ó comentarios encerrados entre comillas, que desea mostrar en la pantalla, ejemplo: print "Codigo: SCODIGO
"; print "Promedio: $PRO 36
G
rupo
E
d ito r ia l
M
egabyte
Capítulo 1: Conceptos básicos Si solo imprimirá el resultado no es necesario encerarlo entre comillas, ejemplo: print $PRO; la etiqueta html
es para dar un salto de línea y de esta manera evitara que se vea todo en una línea.
Ejemplo 5 Construya 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. C onversiones: - Para convertir de libras a kilogramos, multiplica por 0.4535924 - Para convertir de pies a metros, multiplicar por 0.3048006 Pseudocódigo: 1. Iniciar proceso 2. Declarar variables NOM : Cadena de caracteres 3. 4. 5. 6.
PES, ALT : Real LEER NOM, PES, ALT Calcular PESO = PES * 0.4535924 Calcular ALTURA = ALT * 0.3048006 ESCRIBIR NOM, PESO, ALTURA
7. Terminar el proceso
G
rupo
E
d it o r ia l
M
egabyte
37
Algoritmos y Diagramas de Flujo aplicados en PHP Codificación en PHP
= 140;
SALT = 80;
$PESO
= $PES * 0.4535924;
5ALTURA = $ALT * 0.3048006;
print "Nombre: $NOM
"; print "Peso: $PESO
"; print "Altura: SALTURA"; ?> Resultado PHP en WEB
Explicación PHP PHP inicia con la etiqueta , cuando escribimos las variables le anteponemos el signo y luego ingresamos el valor para cada variable entre comillas y finalizando con ejemplo: 38
G
rupo
E
d it o r ia l
M
egabyte
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
"; print "Peso: SPESO
"; print "Altura: SALTURA la etiqueta html
es para dar un salto de línea y de esta manera evitara que se vea todo en una línea.
Ejemplo 6 Construya un pseudocódigo, que dado como dato una cantidad expresada en Euros, convierta esa cantidad a nuevos soles. C onversiones: - El tipo de cambio establecido en : 1 Euro = 4.11 soles Pseudocódigo:
1. Iniciar proceso 2. Declarar variables EURO, SOLES : Real 3. Calcular SOLES = EURO * 4.11 4. ESCRIBIR SOLES 5. Terminar el proceso
G
rupo
E
d it o r ia l
M
egabyte
39
Algoritmos y Diagramas de Flujo aplicados en PHP Codificación en PHP
$EURO = 50; SSOLES = SEURO * 4.11;
print "Tipo de Cambios en Soles:
"; print SSOLES;
?>
Resultado PHP en WEB
Explicación PHP PHP inicia con la etiqueta , cuando escribimos las variables le anteponemos el signo y luego ingresamos el valor para cada variable entre comillas y finalizando con ejemplo: 40
G
rupo
E
d it o r ia l
M
egabyte
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:
"; Si solo imprimirá el resultado no es necesario encerarlo entre comillas, ejemplo: print SSOLES; la etiqueta html
es para dar un salto de línea y de esta manera evitara que se vea todo en una línea.
Ejemplo 7 Escriba un pseudocódigo, que muestre automáticamente la fecha y hora actual Pseudocódigo:
1. Iniciar proceso 2. Declarar variables FECHA, HORA: Cadena de caracteres 3 FECHA = DATE 4 HORA = TIME 5. ESCRIBIR FECHA, HORA 6. Terminar el proceso
Diagrama de flujo
G
rupo
E
d it o r ia l
M
egabyte
41
Algoritmos y Diagramas de Flujo aplicados en PHP Codificación en PHP
$FECHA = date("d-m-Y"); $HORA = date("H:i:s");
print "Fecha: $FECHA
"; print "Hora: $HORA";
?> Resultado PHP en WEB
Explicación PHP PHP inicia con la etiqueta , cuando escribimos las variables le anteponemos el signo y luego ingresamos el valor para cada variable entre comillas y finalizando con ejemplo: SFECHA = date("d-m-Y"); $HORA = date("H:i:s"); 42
G
rupo
E
d ito r ia l.
M
egabyte
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
"; print "Hora: $HORA"; la etiqueta html
es para dar un salto de línea y de esta manera evitara que se vea todo en una línea.
Ejemplo 8 Escriba 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. C onversiones: - 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 proceso 2. Declarar variables CANTl: Real CANT2: Real EURO : Real DOLAR : Real TOTAL: Real 3. Calcular TOTAL = CANTl + CANT2 4. Calcular EURO = TOTAL / 4.11 5. Calcular DOLAR = TOTAL / 3.21 6. ESCRIBIR EURO, DOLAR 7. Terminar el proceso
G
rupo
E
d it o r ia l
M
egabyte
43
Algoritmos y Diagramas de Flujo aplicados en PHP Diagrama de flujo
Codificación en PHP
$TOTAL = SCANT1 + $CANT2; $EURO = STOTAL / 4.11; SDOLAR = STOTAL / 3.21;
print "EURO: $EURO
"; print "DOLAR: SDOLAR
"; ?>
Resultado PHP en WEB
Explicación PHP PHP inicia con la etiqueta , cuando escribimos las variables le anteponemos el signo y luego ingresamos el valor para cada variable entre comillas y finalizando con ejemplo: G
rupo
E
d it o r ia l
M
ecabyte
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
"; print "DOLAR: $DOLAR
"; la etiqueta html
es para dar un salto de línea y de esta manera evitara que se vea todo en una línea.
Ejemplo 9 Escriba un pseudocódigo, que dados los tres lados de un triángulo, determine su área. Formula: A rea =
* (S - L l) * (S - L2) * (S - L3)
En donde S es: S = (Ll + L2 + L3) / 2 Nota: Sacar la raíz cuadrada de un número es igual elevar número a la potencia 0.5 Pseudocódigo: 1. Iniciar proceso 2. Declarar variables L 1,L 2 ,L 3 , S, Á rea: Real 3. Calcular S = ( L 1 + L 2 + L3) / 2 4. Calcular Área = (S*(S-L1)*(S-L2)*(S-L3))A0.5 5. ESCRIBIR Área 7. Terminar el proceso G
rupo
E
d ito r ia l
M
egabyte
45
Algoritmos y Diagramas de Flujo aplicados en PHP Diagrama de flujo
Codificación en PHP
$S = ($L1 + $L2 + $L3) / 2; $ÁREA = pow ($S*($S-$Ll)*($S-$L2)*($S-$L3),0.5);
print "Área del Triangulo: $ÁREA"; ?>
46
G
rupo
E
d ito r ia l
M
ecabyte
Capítulo 1: Conceptos básicos Resultado PHP en WEB
Explicación PHP PHP inicia con la etiqueta , 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
rupo
E
d ito r ia l
M
egabyte
47
Algoritmos y Diagramas de Flujo aplicados en PHP
Ejem plo 10 Construya 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 proceso 2. Declarar Variables RADIO, ÁREA, VOLUMEN : Real 3. Declarar constante Pi = 3.141592 : Real 4. Leer RADIO 5. 6. 7. 8.
Calcular ÁREA = 4 * Pi * (RAD10A2) Calcular VOLUMEN = 4/3 * Pi * (RADIOA3) ESCRIBIR ÁREA, VOLUMEN Terminar el proceso
Diagrama de flujo
48
G
rupo
E
d it o r ia l
M
egabyte
Capítulo 1: Conceptos básicos Codificación en PHP
$ÁREA = 4 * $PI * pow ($RADIO,2); SVOLUMEN = 4/3 * $PI * pow($RADIO,3) ;
print "Área: SÁREA
"; print "Volumen: SVOLUMEN"; ?> Resultado PHP en WEB
Explicación PHP PHP inicia con la etiqueta , cuando escribimos las variables le anteponemos el signo y luego ingresamos el valor para cada variable entre comillas y finalizando con ejemplo: G
rupo
E
d it o r ia l
M
egabyte
49
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
"; print "Volumen: SVOLUMEN"; la etiqueta html
es para dar un salto de línea y de esta manera evitara que se vea todo en una línea.
Ejem plo 11 Construya 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 proceso 2. 3. 3. 4.
Declarar Variables X I, Y l, X2, Y2, DISTANCIA : Real Leer X I, Y l, X2, Y2 Calcular DISTANCIA =((X1 - X2)A2 + (Yl - Y2)A2)A0.5 ESCRIBIR DISTANCIA
5. Terminar el proceso
50
G
rupo
E
d ito r ia l
M
egabyte
Capítulo 1: Conceptos básicos Diagrama de flujo
Codificación en PHP
$X1 = 20; «X2 = 30; $Y1 = 34; «Y2 = 10;
«DISTANCIA = pow(pow((«Xl-«X2),2) + pow(($Yl-$Y2),2),0.5);
print "Distancia: «DISTANCIA
";
G
rupo
E
d it o r ia l
M
egabyte
51
Algoritmos y Diagramas de Flujo aplicados en PFIP Resultado PHP en WEB
Explicación PHP PHP inicia con la etiqueta , cuando escribimos las variables le anteponemos el signo "$ " y luego ingresamos el valor para cada variable entre comillas y finalizando con ejemplo: $X1 = 20; $X2 = 30; $Y1 = 34; $Y2 = 10;
Calculamos la distancia. SDISTANCIA = pow(pow (($X l-$X2),2) + pow(($Yl-$Y2),2),0.5);
El print permite imprimir los valores ó comentarios encerrados entre comillas, que desea mostrar en la pantalla, ejemplo:
print "Distancia: SDISTANCIA"; 52
G
rupo
E
d ito r ia l
M
egabyte
Capítulo 1: Conceptos básicos
Ejem plo 12 Construya 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 proceso 2. Declarar Variables SI, NO, PSI, PNO : Real 3. 4. 5. 6.
Leer SI, NO Calcular PSI = (SI * 100) / (SI + NO) Calcular PNI = (NO * 100) / (SI + NO) ESCRIBIR PSI, PNO
7. Terminar el proceso
Codificación en PHP
Diagrama de flujo
$SI = 798; $NO = 21;
$PSI = round(($SI * 100) / ($SI + $NO),2); $PNO = round(($NO * 100) / ($SI + $NO),2);
print "SI: $PSI %
"; print "No: $PNO %"; •?>
G
rupo
E d it o r ia l M
egabyte
53
Algoritmos y Diagramas de Flujo aplicados en PHP Resultado PHP en WEB
Explicación PHP PHP inicia con la etiqueta , 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%
"; print "No: SPNO %"; 54
G
rupo
E
d it o r ia l
M
egabyte
Capítulo 1: Conceptos básicos la etiqueta html
es para dar un salto de línea y de esta manera evitara que se vea todo en una línea.
Ejemplo 13 Construya un algoritmo, que dado el radio y la altura de un cilindro, calcule e imprima el área y su volumen.
Formulas: El volumen de un cilindro: Volúmen = pi * radio2 * altura La área del cilindro: Área = 2 * pi * radio * altura Pseudocódigo: 1. Iniciar proceso 2. Declarar variables RADIO, ALTURA, ÁREA, VOLUMEN : Real 3. Declarar constante P I = 3.1416 4. LEER RADIO,ALTURA 5. Calcular ÁREA = 2 * Pi * RADIO * ALTURA 6. Calcular VOLUMEN = Pi * RADIOA2 * ALTURA 7. ESCRIBIR ÁREA, VOLUMEN 7. Terminar el proceso
G
rupo
E
d ito r ia l
M
egabyte
55
Algoritmos y Diagramas de Flujo aplicados en PHP Codificación en PHP
= 5;
SALTURA = 30; SPI = "3.1416";
SÁREA
= 2 * SPI * $ RADIO * SALTURA;
SVOLUMEN = SPI * pow($RADIO,2) * SALTURA;
print "Área: SÁREA
"; print "Volumen: SVOLUMEN ?>
Resultado PHP en WEB
Explicación PHP PHP inicia con la etiqueta , cuando escribimos las variables le anteponemos el signo "$" y luego ingresamos el valor para cada variable entre comillas y finalizando con ejemplo: 56
G
rupo
E
d ito r ia l
M
egabyte
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 p rin t permite imprimir los valores ó comentarios encerrados entre comillas, que desea mostrar en la pantalla, ejemplo: print "Área: SÁREA
"; 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
rupo
E
d ito r ia l
M
egabyte
57
Capítulo II Estructuras lógicas selectivas Objetivos:
En este capitulo usted aprender a desarrollar Algoritmos Avanzado basados en lógicas selectivas, para luego plasmarlo en un Diagramas de flujo y aplicarlo en el lenguaje PHP Contendió:
Estructura SL.Entonces (Selección simple) Estructura Si...Entonces...Si no (Alternativa doble) Anidamiento de Estructuras condicionales Ea estructura de selección múltiple Ejemplos
Algoritmos y Diagramas de flujo Aplicados en PHP
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
rupo
E d it o r ia l M
egabyte
61
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 H acer
entonces 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 1 Construya 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. 62
G
rupo
E
d it o r ia l
M
egabyte
Capítulo 2: Estructuras lógicas selectivas Algoritm o: 1. Iniciar proceso 2. Declarar Variables COLOR : Entero largo 3. LEER COLOR 4. Si COLOR = BLANCO Entonces 4.1. Escribir "COLOR ENCONTRADO" 5. Fin Si 6. Terminar el proceso
Diagrama de flujo
Codificación en PHP
SCOLOR = "Blanco";
if (SCOLOR == "Blanco") { print "Color Encontrado"; } ?>
Explicación PHP PHP inicia con la etiqueta , cuando escribimos las variables le anteponemos el signo "$ " y luego ingresamos el valor para cada variable entre comillas y finalizando con ejemplo: G
rupo
E
d it o r ia l
M
egabyte
63
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
Ejem plo 2 Construya un pseudocódigo, que ingresada la nota de un alumno si esta es menor ó igual que 10 muestre DESAPROBADO. Algoritmo: 1. Iniciar proceso 2. Declarar Variables
64
G
rupo
E
d it o r ia l
M
egabyte
Capítulo 2: Estructuras lógicas selectivas NOTA : Real 3. LEER Nota 4. Si Nota <= 10 Entonces 4.1. Escribir "DESAPROBADO" 5. Fin Si 6. Terminar el proceso Diagrama de flujo
Codificación en PHP
SNOTA = 9;
if (SNOTA <= 10) { print "Desaprobado"; } ?>
Resultado PHP en WEB
G
rupo
E
d ito r ia l
M
egabyte
65
Algoritmos y Diagramas de Flujo aplicados en PHP Explicación PHP PHP inicia con la etiqueta , 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";
Ejem plo 3 Construya un pseudocódigo, que ingresado una cantidad, que sea menor o igual a 100 dólares realice el tipo de cambio a soles. C onversiones: - El tipo de cambio establecido en : 1 Dolares =3.21 soles Algoritmo: 1. Iniciar proceso 2. Declarar Variables CANTIDAD, TOTAL : Entero 3. LEER CANTIDAD 4. Si CANTIDAD <= 100 Entonces 4.1 TOTAL = CANTIDAD * 3.21 4.2 ESCRIBIR TOTAL 5. Fin Si 6. Terminar el proceso 66
G
rupo
E
d it o r ia l
M
egabyte
Capítulo 2: Estructuras lógicas selectivas Diagrama de flujo
Codificación en PHP
«CANTIDAD = 80;
if («CANTIDAD <= 100) { «TOTAL = «CANTIDAD * 3.21; print «TOTAL; } ?>
Resultado PHP en WEB
Explicación PHP PHP inicia con la etiqueta , cuando escribimos las variables le anteponemos el signo "«" y luego ingresamos el valor para cada variable entre comillas y finalizando con ejemplo: G
rupo
E
d it o r ia l
M
egabyte
67
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;
Ejem plo 4 Construya 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 proceso 2. Declarar Variables SUELDO : Entero NSUELDO : Entero 3. LEER SUELDO 4. Si SUELDO <= 500 Entonces 4.1 NSUELDO = SUELDO * 2.5 4.2 ESCRIBIR NSUELDO 5. Fin Si 6. Terminar el proceso
68
G
rupo
E
d it o r ia l
M
egabyte
Capitulo 2: Estructuras lógicas selectivas Diagrama de flujo
Codificación en PHP
$SU ELDO = 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 , cuando escribimos las variables le anteponemos el signo "« " y luego ingresamos el valor para cada variable entre comillas y finalizando con ejemplo: G
rupo
E
d ito r ia l
M
egabyte
69
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 sino Acciones2 Fin Si {
70
G
rupo
E
d it o r ia l
M
ecabyte
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 5 Construya 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 proceso 2. Declarar Variables COLOR : Entero largo 3. LEER COLOR 4. Si COLOR = BLANCO Entonces 4.1. Escribir "COLOR ENCONTRADO" 5. Si no 5.1. Escribir "COLOR NO ENCONTRADO" 6. Fin_Si 7. Terminar el proceso
G
rupo
E
d it o r ia l
M
egabyte
71
Algoritmos y Diagramas de Flujo aplicados en PHP Diagrama de flujo
Codificación en 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 , cuando escribimos las variables le anteponemos el signo y luego ingresamos el valor para cada variable entre comillas y finalizando con ejemplo: 72
G
rupo
E
d it o r ia l
M
egabyte
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 proceso 2. Declarar Variables NOTA : Real 3. LEER Nota 4. Si Nota <= 10 Entonces 4.1. Escribir "DESAPROBADO" 5. Si no 5.1 Escribir "APROBADO" 6. Fin Si 7. Terminar el proceso
G
rupo
E
d it o r ia l
M
egabyte
73
Algoritmos y Diagramas de Flujo aplicados en PHP Diagrama de flujo
Codificación en PHP
$NOTA =12;
if (SNOTA <= 10) { print "Desaprobado"; }else{ print "Aprobado"; } ?> Resultado PHP en WEB
Explicación PHP PHP inicia con la etiqueta , cuando escribimos las variables le anteponemos el signo y luego ingresamos el valor para cada variable entre comillas y finalizando con ejemplo: 74
G
rupo
E
d it o r ia l
M
egabyte
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 e lse{ print "Aprobado"; } El print permite imprimir los valores ó comentarios encerrados entre comillas, que desea mostrar en la pantalla, ejemplo: print "Desaprobado"; print "Aprobado";
Ejemplo 7 Construya un 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". C onversiones: - El tipo de cambio establecido en : 1 Dólares =3.21 soles Algoritmo: 1. Iniciar proceso 2. Declarar Variables CANTIDAD, TOTAL : Entero 3. LEER CANTIDAD 4. Si CANTIDAD <= 50 Entonces 4.1 TOTAL = CANTIDAD *4.11 4.2 ESCRIBIR TOTAL G
rupo
E
d it o r ia l
M
egabyte
75
Algoritmos y Diagramas de Flujo aplicados en PHP
5. Si no 5.1 ESCRIBIR "Cambio como máximo 50" 6. Fin_Si 7. Terminar el proceso Diagrama de flujo
Codificación en PHP
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
- [7yS> • Primeros pasos
J
Herramientas h ttp ://jo e l v
A&jda @ ir
QL
mÚltimas noticias
Cambio como máximo 50
G
rupo
E
d it o r ia l
M
egabyte
Capítulo 2: Estructuras lógicas selectivas Explicación PHP PHP inicia con la etiqueta , 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; p rin t "Cambio como máximo 50";
Ejemplo 8 Construya 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 proceso 2. Declarar Variables SUELDO : Entero NSUELDO : Entero G
rupo
E
d it o r ia l
M
egabyte
77
Algoritmos y Diagramas de Flujo aplicados en PHP 3. LEER SUELDO 4. Si SUELDO <= 500 Entonces 4.1 NSUELDO = SUELDO * 2.5 4.2 ESCRIBIR NSUELDO 5. Si no SUELDO >= 600 Entonces 5.1 NSUELDO = SUELDO * 1.7 5.2 ESCRIBIR NSUELDO 1 5. Fin Si 6. Terminar el proceso
Diagrama de flujo
G
rupo
E
d ito r ia l
M
egabyte
Capítulo 2: Estructuras lógicas selectivas Codificación en PHP
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 , cuando escribimos las variables le anteponemos el signo "$" y luego ingresamos el valor para cada variable entre comillas y finalizando con ejemplo: G
rupo
E
d it o r ia l
M
egabyte
79
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 condicionales A 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 Entonces Si Condición2 Entonces Acciones 1 Fin si Fin Si 80
G
rupo
E
d it o r ia l
M
egabyte
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 Entonces Acciones 1 Si Condición2 Entonces Acciones2 Si no Acciones3 F 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 9 Construya 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 proceso 2. Declarar Variables SUELDO : Entero NSUELDO : Entero 3. LEER SUELDO 4. Si SUELDO >= 1000 Entonces 4.1 ESCRIBIR "Cantidad NO Aceptada" 5. Si no
G
r ijpo
E
d it o r ia l
M
egabyte
81
Algoritmos y Diagramas de Flujo aplicados en PHP 5.1 Si SUELDO <= 500 Entonces 5.1.1 NSUELDO = SUELDO * 2.5 5.1.2 ESCRIBIR NSUELDO 5.2 Si no SUELDO >= 600 Entonces 5.2.1 NSUELDO = SUELDO * 1.7 5.2.2 ESCRIBIR NSUELDO 5.3 F in S i 6. Fin Si 7. Terminar el proceso
Diagrama de flujo
G
rupo
E
d ito r ia l
M
egabyte
Capítulo 2: Estructuras lógicas selectivas Codificación en PH P
if ($SUELDO >= 1000) { p rin t "Cantidad NO Aceptada"; } else { if ($SUELDO <= 500) { SNSUELDO = $SUELDO * 2.5; p rin t "Nuevo Sueldo:"; p rin t
SNSUELDO;
}else if (SSUELDO >= 600) { SNSUELDO = SSUELDO * 1.7; p rin t "Nuevo Sueldo:"; p rin t
SNSUELDO;
} }
Resultado P H P en W EB
G
rupo
E
d it o r ia l
M
egabyte
83
Algoritmos y Diagramas de Flujo aplicados en PHP Explicación PHP PHP inicia con la etiqueta , 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 S ueldo:"; print
SNSUELDO;
}else if (SSUELDO >= 600) { SNSUELDO = SSUELDO * 1.7; print "Nuevo S ueldo:"; print
SNSUELDO;
} El print permite imprimir los valores ó comentarios encerrados entre comillas, que desea mostrar en la pantalla, ejemplo: print "Nuevo Sueldo: "; print 84
SNSUELDO; G
rupo
E
d ito r ia l
M
egabyte
Capítulo 2: Estructuras lógicas selectivas E je m 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 proceso 2. Declarar Variables SUELDO : Entero NSUELDO : Entero 3. LEER SUELDO 4. Si SUELDO >= 1500 Entonces 4.1 ESCRIBIR "Aumento No Aplicado 1» 5. Si no 5.1 Si SUELDO <= 100 Entonces 5.1.1 NSUELDO = SUELDO * 8.0 5.1.2 ESCRIBIR NSUELDO 5.2 Si no SUELDO <= 600 Entonces 5.1.1 NSUELDO = SUELDO * 3.0 5.1.2 ESCRIBIR NSUELDO 5.3 Si no SUELDO > 600 Entonces 5.2.1 NSUELDO = SUELDO * 4.0 5.2.2 ESCRIBIR NSUELDO 5.4 Fin Si 6. Fin Si 7. Terminar el proceso
G
rupo
E
d it o r ia l
M
egabyte
85
Algoritmos y Diagramas de Flujo aplicados en PHP Diagrama de flujo
Codificación en PHP
if (SSUELDO >= 1500) { print "Aumento No Aplicado"; } else { if (SSUELDO <= 100) {
G
rupo
E
d it o r ia l
M
egabyte
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 , cuando escribimos las variables le anteponemos el signo "$" y luego ingresamos el valor para cada variable entre comillas y finalizando con ejemplo: G
rupo
E
d ito r ia l
M
egabyte
87
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 88
SNSUELDO; G
rupo
E
d ito r ia l
M
ecabyte
Capítulo 2: Estructuras lógicas selectivas E jem p lo 11 Construya un pseudocódigo, donde se ingresen tres cantidades y estas se ordenen de mayor a menor. Algoritmo:
1. Iniciar proceso 2. Declarar Variables A, B, C : Entero 3. Leer A, B. C 4. Sí A B Entonces Si A > C Entonces Si B > C Entonces Escribir A, B, C Sino Escribir A, C, B F in S i Sino Escribir C, A, B Fin_Si 5. Si no Si B > C Entonces Si A ^ C Entonces Escribir B, A y C Sino Escribir B, C y A F in S i Sino Escribir C, B y A F in S i 6. Fin 7. Terminar el proceso
G
rupo
E
d it o r ia l
M
egabyte
89
Algoritmos y Diagramas de Flujo aplicados en PHP
Codificación en PHP
if ($A > $B) { if ($A > $C) { 90
G
rupo
E
d it o r ia l
M
egabyte
Capítulo 2: Estructuras lógicas selectivas if ($B > $C) { print "$A
"; print "$B
"; print "$C
"; } else { print "$A
"; print "$C
"; print "$B
"; } } else { print "$C
"; print ’ $A
"; print "SB
"; } } else { if ($B > $ C ) { if ($A > $ C ) ■ print "$B
"; print "$A
"; print "$C
"; } else { print "$B
"; print "$C
"; print " $A
"; } } else { print "$C
"; print "$B
"; print "$A
"; G
rupo
E
d ito r ia l
M
egabyte
91
Algoritmos y Diagramas de Flujo aplicados en PHP
?> Resultado PHP en WEB
Explicación PHP PHP inicia con la etiqueta , 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
if ($A > $B) {
II... } else { II.
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. G
rupo
E
d it o r ia l
M
egabyte
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
"; print "$B
"; print "$C
"; E je m 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 proceso 2. Declarar Variables Nota : Entero 3. Leer Nota 4. Si Nota < = 1 0 Entonces Escribir Descalificado. 5. Si no Si Nota >= 11 y Nota <= 14 Entonces Escribir Aprobado FinSi 6. Si no Si Nota >= 15 y Nota <= 17 Entonces Escribir Bueno FinSi
G
rupo
E
d ito r ia l
M
egabyte
93
Algoritmos y Diagramas de Flujo aplicados en PHP
94
G
rupo
E
d ito r ia l
M
ecabyte
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
rupo
E
d ito r ia l
M
egabyte
95
Algoritmos y Diagramas de Flujo aplicados en PHP Explicación PHP PHP inicia con la etiqueta , 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 je m 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 proceso 2. Declarar Variables NUMERO : Entero 96
G
rupo
E
d it o r ia l
M
egabyte
Capítulo 2: Estructuras lógicas selectivas
3. LEER NUMERO 4. Si NUMERO > 0 Entonces Si (NUMERO MOD 2)=0 Entonces Escribir ‘Número ingresado es Par’ Sino Escribir ‘Número ingresado es Impar’ Fin_Si 5. Sino 6. Escribir ‘Ingrese un Num ero’ 7. F in S i 8. Terminar el proceso Diagrama de flujo
G
rupo
E
d ito r ia l
M
egabyte
97
Algoritmos y Diagramas de Flujo aplicados en PHP Codificación en PHP
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 , cuando escribimos las variables le anteponemos el signo y luego ingresamos el valor para cada variable entre comillas y finalizando con ejemplo: 98
G
rupo
E
d it o r ia l
M
egabyte
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 je m 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
rupo
E
d ito r ia l
M
egabyte
99
Algoritmos y Diagramas de Flujo aplicados en PHP Leer EDAD 1, EDAD2 Si EDAD1< 10 or EDAD2 < 10 Entonces Si EDAD1 <> EDAD2 Entonces Si EDAD1 > EDAD2 Entonces Escribir Él mayor es EDAD 1 Escribir El menor es EDAD2 Sino Escribir El mayor es EDAD2 Escribir El menor es EDAD1 Fin Si Sino Escribir ‘Las edades son iguales’ Fin_Si Sino Escribir ‘Una de la edades es mayor a 10’ F in S i Terminar el proceso
Diagrama de flujo
100
G
rupo
E
d it o r ia l
M
egabyte
Capítulo 2: Estructuras lógicas selectivas
Codificación en PHP
if (SEDAD1 < 10 OR SEDAD2 < 10) { if ( S E D A D l.o EDAD2) { if (SEDAD1 > EDAD2) { print "Edad mayor SEDAD1
"; print "Edad menor SEDAD2
"; }else{ print "Edad mayor SEDAD2
";
G
rupo
E
d it o r ia l
M
egabyte
101
Algoritmos y Diagramas de Flujo aplicados en PHP print "Edad menor SEDAD3
"; } }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 , 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
rupo
E
d ito r ia l
M
egabyte
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
"; print "Edad menor $EDAD2
";
Ejem plo 15 Construya 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 Si
Terminar el proceso G
rupo
E
d it o r ia l
M
egabyte
103
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 ($NUM 1 == $NUM 2 OR $NUM 1 == $NUM 3 OR $NUM3 == $NUM2) { print "Existe un par de números repetidos"; }else{ print "Ninguno Repetido"; } ?> 104
G
rupo
E
d it o r ia l
M
egabyte
Capítulo 2: Estructuras lógicas selectivas Resultado PHP en WEB
Explicación PHP PHP inicia con la etiqueta , 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 ($NUM I == $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
rupo
E
d ito r ia l
M
egabyte
1 05
Algoritmos y Diagramas de Flujo aplicados en PHP El print permite imprimir los valores ó comentarios encerrados entre comillas, que desea mostrar en la pantalla, ejemplo:
print "Existe un par de números repetidos"; E je m 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 N U M 1, NUM2, NUM 3: Entero Leer NUM1, NUM2, NUM3 Si NUM 1 > 0 y NUM2 > 0 y NUM3 > 0 Entonces Si NUM1 < NUM2 Y NUM2 < NUM3 Entonces Escribir ‘Ordenados de menor a mayor’ Si no Escribir ‘No están ordenados’ Fin Si Si no Escribir ‘Ingrese solo números’ Fin Si Terminar el proceso Diagrama de flujo
G
rupo
E
d it o r ia l
M
egabyte
Capitulo 2: Estructuras lógicas selectivas
Codificación en PH P
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
rupo
E
d it o r ia l
M
egabyte
107
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 , 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
rupo
E d it o r ia l M
egabyte
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últiple La 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 17 Construya un pseudocódigo que pida dos números enteros y muestre por pantalla el siguiente menú: G
rupo
E
d ito r ia l
M
egabyte
109,,
Algoritmos y Diagramas de Flujo aplicados en PHP MENÚ 1. Sumar 2. Restar 3. 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,B Escribir MENU 1. Sumar 2. Restar 3. Multiplicar 4. Dividir Elija opción: Leer Opción Leer A, B En caso de Opción Caso 1: Caso 2: Caso 3: Caso 4: Fin_Caso Escribir R
R R R R
=A+B =A-B =A *B =A/ B
Terminar el proceso 110
G
rupo
E
d it o r ia l
M
egabyte
Capítulo 2: Estructuras lógicas selectivas Diagrama de flujo
Codificación en PHP
G
rupo
E
d ito r ia l
M
egabyte
111/
Algoritmos y Diagramas de Flujo aplicados en PHP case 1: $R = $A + $B; echo "Resultado $R"; break; case 2: SR = SA - $B; echo "Resultado $R"; break; case 3: $R = $A * $B; echo "Resultado $R"; break; case 4: $R = $A / $B; echo "Resultado $R"; break;
Resultado PHP en WEB
112
G
rupo
E
d it o r ia l
M
egabyte
Capítulo 2: Estructuras lógicas selectivas Explicación PHP PHP inicia con la etiqueta , 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 je m 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
rupo
E
d it o r ia l
M
egabyte
111
,
Algoritmos y Diagramas de Flujo aplicados en PHP Leer DD, MM, AA En caso de MM Caso 1 : TDias = 31 Caso 2 : Si (AA Mod 4 =0 Y AA MOD 400 = 0) O (AA Mod 400 =0) Entonces Hacer TDias = 29 Sino Hacer TDias = 28 F in S i Caso 3 : TDias = 31 Caso 4 : TDias = 30 Caso 5 : TDias = 31 Caso 6 : TDias = 30 Caso 7 : TDias = 31 Caso 8 : TDias = 31 Caso 9 : TDias = 30 Caso 10 : TDias = 31 Caso 11 : TDias = 30 Caso 12 : TDias = 31 F in C a so Si AA>1900 Y (MM>0 Y MM<=12) Y (DD>0 Y DD<=TDias) Escribir ‘Fecha válida’ Si no Escribir ‘Fecha no válida’ Fin Si Terminar el proceso Diagrama de flujo
c
IN ICIO
/: 114
DD, MM, AA
T G
rupo
E
d it o r ia l
M
egabyte
Capítulo 2: Estructuras lógicas selectivas
Codificación en PHP
G
rupo
E
d it o r ia l
M
egabyte
115
Algoritmos y Diagramas de Flujo aplicados en PHP case if (($AA % 4 = O and $AA % 400 == 0) or ($AA % 400==0)){ STDias = 29; }else{ STDias = 28; } b rea k ; case 3:
STDIAS = 31; break;
case 4:
STDIAS = 30; b rea k ;
case 5:
STDIAS = 31; break;
case 6:
STDIAS = 30; break;
case 7:
STDIAS = 31; break;
case 8:
STDIAS = 31; break;
case 9:
STDIAS = 30; break;
case 10:STDIAS = 31; break; case U :$T D IA S = 30; break; case 12:STDIAS = 31; break;
116
G
rupo
E
d ito r ia l
M
egabyte
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 , 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
rupo
E
d ito r ia l
M
egabyte
117
Algoritmos y Diagramas de Flujo aplicados en PHP case 1:
11... case 2: 11... case 3: 11.. case 4: 11.... } El print permite imprimir los valores ó comentarios encerrados entre comillas, que desea mostrar en la pantalla, ejemplo: print "Fecha 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 ls e { 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{ p rin t "Fecha no válida"; }
1 18
G
rupo
E
d it o r ia l
M
egabyte
Capítulo III Estructuras Lógicas Repetitivas Objetivos:
En este capitulo usted aprender a desarrollar Algoritmos Avanzado basados en lógicas repetitivas, para luego plasmarlo en un Diagramas de flujo y aplicarlo en el lenguaje PHP Contendió:
Estructura Hacer Mientras Estructura Mientras Estructura Desde Ejemplos
Algoritmos y Diagramas de flojo Aplicados en PHP
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
rupo
E
d it o r ia l
M
egabyte
fiBBI
Algoritmos y Diagramas de Flujo aplicados en PHP
Estructura Hacer M ientras La 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úm ero 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
rupo
E
d it o r ia l
M
egabyte
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
rupo
E
d it o r ia l
M
egabyte
123
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 : Entero TOTAL,SUELDO : Real Hacer 1=0 TOTAL = 0 Hacer Leer SUELDO Calcular TOTAL = TOTAL + SUELDO 1= 1+1
Mientras 1 < 10 Escribir TOTAL Terminar el proceso
Codificación en PH P
124
G
rupo
E
d ito r ia l
M
egabyte
Capítulo 3: Estructuras lógicas repetitivas
do {
STOTAL = STOTAL + SSUELDO; SI = SI + 1;
} while (SI < 10);
echo "Total de sueldos
"; echo STOTAL; ?>
D iagram a de flujo
G
rupo
E
d it o r ia l
M
kgabyte
125
Algoritmos y Diagramas de Flujo aplicados en PHP R esultado PH P en WEB
Explicación PH P PHP trabaja con valores enviados desde un formulario en modo Get y Post ó por enlace URL, en este ejemplo usted colocara los valores en el código para que sea procesado. PHP inicia con la etiqueta < ?PH P y termina con ?>, cuando escribimos las variables le anteponemos el signo y luego ingresamos el valor para cada variable entre comillas y finalizando con ejemplo:
SSU ELD O = 600; SI = 0; STOTAL = 0;
El p rin t permite imprimir los valores ó comentarios encerrados entre comillas, que desea mostrar en la pantalla, ejemplo: echo "Total de sueldos
"; 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. 126
G
rupo
E
d it o r ia l
M
egabyte
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 p lo 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 Hacer Leer ANIO Calcular
ANIO= ANIO + 1 1= 1+1 Escribir ANIO
Mientras I < 10 Escribir Lista Fianlizada Terminar el proceso
G
rupo
E
d it o r ia l
M
egabyte
127
Algoritmos y Diagramas de Flujo aplicados en PHP Diagrama de flujo
Codificación en PHP
,
SANIO = 1995; O II do {
SANIO = SANIO + 1; echo "SANIO
"; SI = SI + i;
128
G
rupo
E
d it o r ia l
M
egabyte
Capítulo 3: Estructuras lógicas repetitivas
}
while
($ 1 <
10);
echo "Lista Finalizada"; ?>
Explicación PHP PHP inicia con la etiqueta , 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
rupo
E d ito r ia l M
egabyte
1 29
Algoritmos y Diagramas de Flujo aplicados en PHP El print permite imprimir los valores ó comentarios encerrados entre comillas, que desea mostrar en la pantalla, ejemplo: echo "SANIO
"; echo "Lista Finalizada"; la etiqueta html
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
";, 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
"; SI = SI + 1;
} while ($1 < 10);
Ejem plo 3 Escriba 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
130
G
rupo
E
d it o r ia l
M
egabyte
Capítulo 3: Estructuras lógicas repetitivas
H acer Si N MOD 2 = 0 entonces Escribir N CONT = CONT + 1 F in s i 1= 1+1 N=N+ 1 Mientras I < 20 Escribir Total de números divisibles entre 2: CONT Terminar el proceso D iagram a de flujo
G
rupo
E
d it o r ia l
M
egabyte
131
Algoritmos y Diagramas de Flujo aplicados en PHP Resultado PHP en WEB
Codificación en PHP
$N = 1;
do { if ($N % 2 == 0){ echo "$N
"; $CONT = $CONT + 1; } $1 = $1 + 1;
SN = $N + 1;
m
s m
G
rupo
E
d it o r ia l
M
egabyte
Capítulo 3: Estructuras lógicas repetitivas
} while ($1 < 20); echo "Total de números divisibles entre 2: SCONT"; ?>
Explicación PH P PHP inicia con la etiqueta < ?PH P y termina con ?>, cuando escribimos las variables le anteponemos el signo "$ " y luego ingresamos el valor para cada variable entre comillas y finalizando con ejemplo:
$1 = 0; $N = 1; El print permite imprimir los valores ó comentarios encerrados entre comillas, que desea mostrar en la pantalla, ejemplo: echo "$N
"; echo "Total de números divisibles entre 2: SCONT"; la etiqueta html
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
", 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 Mientra Es 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
rupo
E
d it o r ia l
M
egabyte
1 33
Algoritmos y Diagramas de Flujo aplicados en PFIP En la estructura mientras se distinguen dos partes:
- Ciclo: Conjunto de instrucciones que se 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:
M ientras Condición {PROCESO} Fin M ientras
Ejem plo 4 Escriba 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. 134
G
rupo
E
d it o r ia l
M
egabyte
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 break Fin_si NUM = NUM + 1 Fin Mientras Escribir TOTAL Terminar proceso
Codificación en PHP
= 1;
SSUELDO = 500;
while ($NUM < 20) { STOTAL = STOTAL + SSUELDO; echo "SNUM = SSUELDO
"; if (SNUM == 10){ break; } G
rupo
E
d it o r ia l
M
egabyte
1 35
Algoritmos y Diagramas de Flujo aplicados en PHP
SN U M ++; } echo "Total de sueldos a la mitad: STO TAL"; ?>
D iagram a de flujo
Explicación PH P PHP inicia con la etiqueta < ?PH P y termina con ?>, cuando escribimos las variables le anteponemos el signo "$" y luego ingresamos el valor para cada variable entre comillas y finalizando con ejemplo: 136
G
rupo
E
d ito r ia l
M
egabyte
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
"; echo "Total de sueldos a la mitad: STOTAL"; la etiqueta html
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
". 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
rupo
E
d it o r ia l
M
egabyte
137
Algoritmos y Diagramas de Flujo aplicados en PHP
Ejemplo 5 Escriba 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 break F in s i NUM = NUM + 1 FinM ientras Terminar proceso
Codificación en PHP
while (SNUM < 10) { SANIO = SANIO + 1; echo "SANIO
"; if (SANIO == date("Y")){ break; G
rupo
E
d it o r ia l
M
egabyte
Capítulo 3: Estructuras lógicas repetitivas } $N U M ++; } ?>
Resultado PHP en WEB
Explicación PHP PHP inicia con la etiqueta , cuando escribimos las variables le anteponemos el signo y luego ingresamos el valor para cada variable entre comillas y finalizando con ejemplo: $NUM = 1; $A N 10 = 2000; El print permite imprimir los valores ó comentarios encerrados entre comillas, que desea mostrar en la pantalla, ejemplo: G
rupo
E d it o r ia l M
egabyte
1 39
Algoritmos y Diagramas de Flujo aplicados en PHP
echo "SANIO
"; la etiqueta html
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
"; 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
rupo
E
d it o r ia l
M
egabyte
Capítulo 3: Estructuras lógicas repetitivas
Ejemplo 6 Escriba 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 N Calcular SUM = SUM + N Fin_si N=N + 1 1= 1+1 Fin Mientras Escribir 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
rupo
E
d ito r ia l
M
egabyte
141
Algoritmos y Diagramas de Flujo aplicados en PHP
echo "$N < b r> "; $SUM = $SUM + $N; } $I++; $N ++; } echo "S um a de núm eros NO divisibles entre 2: $SU M "; ?>
D iagram a de flujo
142
G
rupo
E
d it o r ia l
M
egabytf
Capítulo 3: Estructuras lógicas repetitivas Resultado PHP en WEB
Explicación PHP PHP inicia con la etiqueta , 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
"; la etiqueta html
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 < b r> ", solo los números NO divisibles entre 2. G
rupo
E
d it o r ia l
M
egabyte
143
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 Desde Cuando 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 H acer Acciones Fin Desde
I: Variable de tipo entero, representa la variable de control del ciclo. Vi: Variable de tipo entero, representa el inicio del ciclo. Vf: Variable de tipo entero, representa el final del ciclo. INC: 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
rupo
E
d ito r ia l
M
egabyte
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 je m 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 = 0 Desde NUM = 1 Hasta 50 INC NUM = NUM + 1 Hacer SI NUM % 3 = 0 entonces Calcular: SD = SD + 1 Sino Calcular: ND = ND + 1 F in S i Fin Desde Escribir SD, SD Terminar proceso
Codificación en PH P
$SD = $SD + 1;
G
rupo
E
d ito r ia l
M
egabyte
1 45
Algoritmos y Diagramas de Flujo aplicados en PHP
}e lse { $ND = $ND + 1; } } echo "Si Divisible $SD < b r> "; echo "No Divisible $ND < b r> "; ?>
146
G
rupo
E
d it o r ia l
M
egabyte
Capítulo 3: Estructuras lógicas repetitivas Resultado PHP en WEB S É | A rch ivo 3 b ^
r a f c f c jl "Editar
V er
Ir
M a rca d o re s
H e rra m ie n ta s h t t p :/ /jo e l v
’ P rim eros p a so s
A j/u d a
0 Q l_
, Ú ltim as n o tic ia s
Si Divisible 16 No Divisible 34
L isto
Explicación PHP PHP inicia con la etiqueta , 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
"; echo "No Divisible $ND
";
la etiqueta html
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
rupo
E
d it o r ia l
M
egabyte
147
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 je m 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 in D e sd e Terminar proceso
Codificación en PHP
148
G
rupo
E
d it o r ia l
M
egabyte
Capítulo 3: Estructuras lógicas repetitivas echo "5 * $nuni = $R
"; } ?> Diagrama de flujo
Resultado PHP en WEB
G
rupo
E
d it o r ia l
M
egabyte
1 49
Algoritmos y Diagramas de Flujo aplicados en PHP Explicación PHP PHP inicia con la etiqueta , 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
";
la etiqueta html
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.
Ejem plo 9 Escriba 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
150
G
rupo
E
d ito r ia l
M
egabyte
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 in D e sd e Fin_Desde Terminar proceso
Diagrama de flujo
G
rupo
E
d it o r ia l
M
egabyte
151
Algoritmos y Diagramas de Flujo aplicados en PHP Codificación en PHP
for ($num = 1; Snum <=10; $num++){ $R = Snum * Stabla; echo "Stabla * Snum = $R
"; } echo "
"; } ?>
Resultado PHP en WEB
152
G
rupo
E
d it o r ia l
M
egabyte
Capítulo 3: Estructuras lógicas repetitivas Explicación PHP PHP inicia con la etiqueta , 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
";
la etiqueta html
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 je m 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
rupo
E
d ito r ia l
M
egabyte
153
Algoritmos y Diagramas de Finjo aplicados en PHP
I: Entero C : Entero hacer: C = 0 Desde I = 1 Hasta 20000 INC I = I * 2 C = C+ 1 F in D e sd e Escribir C Terminar proceso
Codificación en PHP
"; } ?> Diagrama de flujo
154
G
rupo
E
d it o r ia l
M
egabyte
Capítulo 3: Estructuras lógicas repetitivas Resultado PHP en WEB
Explicación PHP PHP inicia con la etiqueta , 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
";
la etiqueta html
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
rupo
E
d it o r ia l
M
egabyte
1 55
Capítulo IV Arreglos Arrays Objetivos:
En este capitulo usted aprender a desarrollar Algoritmos Avanzado basados en Arreglos, para luego plasmarlo en un Diagramas de flujo y aplicarlo en el lenguaje PHP Contendió:
¿Que es un array? Arrays asociativos arrays Multidimensionales array_slice() arrayshiftf)
unsetf) array_push() Ejemplos
Algoritmos y Diagramas de flujo Aplicados en PHP
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 posteriorm ente se explicara algunos ejem plos mas avanzados donde se aplicara con algoritmos y diagramas de fujo.
Existen dos formas de crear arrays, estática o dinámicamente Para crear arrays de forma estática usamos php array() con la siguiente sintaxis:
Array array([n]=>|valor], [n2]=>[valor], [n3|=>[vaIor| ...)
Ejemplo 1 Para almacenar nombres de ciudades. Podríamos usar variables simples, ejemplo: G
rupo
E
d ito r ia l
M
egabyte
159
Algoritmos y Diagramas de Flujo aplicados en 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:
echo $ciudades|3];
?> También se puede crear arrays dinámicamente, solo agregando nuevos valores. Por ejemplo:
$eiudades|4| = "T rujillo";
?> 160
G
rupo
E
d it o r ia l
M
egabyte
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:
$ciudades[] = "Piura";
?> De esta manera podemos acceder a este ultimo valor utilizando $ciudades[5]
arrays asociativos Permite usar strings como índices, es decir, cadenas de texto como índices. Este tipo de array es conocido como array asociativo: E je m p lo 2
Sciudades = arrav( "Lima"=>"Miraflores", G
rupo
E
d it o r ia l
M
egabyte
161
Algoritmos y Diagramas de Flujo aplicados en PHP
"Arequipa"=>"Camana", "Loreto"=>" Amazonas");
echo $ciudades[Arequipa|;
?>
Resultado PHP en WEB
Listo
arrays Multidimensionales Un array multidimensional puede almacenar a su vez otro arrays:
Ejem plo 3
Sagenda = array("direccion" => "Lima N 400", "telefono" => Stelefonos, "email"
1 62
=> "
[email protected]");
G
rupo
E
d ito r ia l
M
egabyte
Capítulo 4: Arreglos - Arrays
Stelefonos = array("trabajo" => "2306440", "casa" "móvil"
=> "2459512", => "9228900");
?>
y podemos acceder a los valores de la siguiente manera:
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
rupo
E
d ito r ia l
M
egabyte
163
Algoritmos y Diagramas de Flujo aplicados en PHP
Ejemplo 4 Sfrutas = array ("Manzana", "Pera", "Plátano", "Ciruela", "Fresa");
Ssalida = arra y slice (Sfrutas, 0, 3); foreach (Ssalida as Smostrar) echo "Smostrar
"; echo "
";
Ssalida = array slice (Sfrutas, 3, 5); foreach (Ssalida as Smostrar) echo "Smostrar
"; echo "
";
Ssalida = array slice (Ssalida, 1); foreach (Ssalida as Smostrar) echo "Smostrar
"; echo "
"; ?> 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. 164
G
rupo
E
d it o r ia l
M
egabyte
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 = arra y slice (Sfrutas, 0, 3); foreach (Ssalida as Smostrar) echo "Smostrar
"; echo "
";
Para este segundo bloque solo le indicamos que muestre después del tercer nombre hasta el quinto.
Ssalida = arra y slice (Sfrutas, 3, 5); foreach (Ssalida as Smostrar) echo "Smostrar
"; echo "
"; G
rupo
E
d ito r ia l
M
egabyte
1 65
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 = a rrayslice ($salida, 1); foreach (Ssalida as Smostrar) echo "Smostrar
"; echo "
";
array_shift() Extrae el primer elemento del array y lo devuelve. Además, acorta la longitud del array eliminando el primer elemento del array.
Ejem plo 5 Sfrutas = array ("Manzana", "Pera", "Plátano", "Ciruela", "Fresa");
Ssalida = a rra y sh ift (Sfrutas); echo "La función devuelve: " . Ssalida . "
";
foreach (Sfrutas as Smostrar) echo "Smostrar
"; echo "
";
Ssalida = array shift (Sfrutas); echo "La función devuelve: " . Ssalida . "
";
foreach (Sfrutas as Smostrar) echo "Smostrar
"; ?> 166
G
rupo
E
d it o r ia l
M
egabyte
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 . "
";
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
rupo
E
d ito r ia l
M
egabyte
167
Algoritmos y Diagramas de Flujo aplicados en PHP foreach (Sfrutas as $mostrar) echo "Smostrar
"; echo "
";
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 . "
";
foreach ($frutas as Smostrar) echo "Smostrar
";
unset() Permite eliminar una variable. En el caso de los arrays, se puede utilizar para eliminar una casilla de un array asociativo solo los que tienen como índices a una cadena de caracteres. E je m p lo 6
$frutas = array ("frutal" => "Manzana", "fruta2" => "Pera", "fruta3" => "Plátano", "fruta4" => "Ciruela", "frutaS" => "Fresa");
foreach (Sfrutas as Smostrar) echo "Smostrar
"; echo "
";
unset ($frutas("fruta3"]);
168
G
rupo
E
d it o r ia l
M
egabyte
Capitulo 4: Arreglos - Arrays
foreach (Sfrutas as Smostrar) echo "Smostrar
";
?> 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
rupo
E
d it o r ia l
M
egabyte
169
Algoritmos y Diagramas de Flujo aplicados en PHP foreach (Sfrutas as Smostrar) echo "Smostrar
"; echo "
";
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
";
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 je m p lo 7
Sfrutas = array ("Manzana", "Pera", "Plátano", "Ciruela", "Fresa");
array_push($frutas, "Papaya", "Cereza", "Melón");
foreach (Sfrutas as Smostrar) echo "Smostrar
"; ?>
170
G
rupo
E
d it o r ia l
M
egabyte
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
"; G
rupo
E
d ito r ia l
M
egabyte
171
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.
Ejem plo 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
";
?>
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
rupo
E
d it o r ia l
M
egabyte
Capítulo 4: Arreglos - Arrays Resultado PHP en WEB
Ahora mostramos todos los arreglos:
foreach (Sresultado as Smostrar) echo "Smostrar
";
Finalizando Arrays PHP En 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
rupo
E
d it o r ia l
M
egabyte
Algoritmos y Diagramas de Flujo aplicados en PHP Snombres = “Joel De la Cruz”; En la variable Snombres se ha almacenado un nombre con apellido, para luego mostrarlo de la siguiente manera: echo Snombres; Pero ahora si desea almacenar mas nombres pero en la misma variable Snombres que utilizaría? ... Array!!! Correcto, entonces haríamos lo siguiente: Snombres = array ("Joel De la Cruz Mejia", “Cristhian De la Cruz”);
"Carmen Mejia", "Karol
En la variable Snombres se ha almacenado todos estos nombres con apellidos, para luego mostrarlo de la siguiente manera: foreach (Snombres as Smostrar) echo "Smostrar
"; 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.
Ejem plo 9 Construya 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 1 74
G
rupo
E
d it o r ia l
M
egabyte
Capítulo 4: Arreglos - Arrays Desde
NOMBRES como MOSTRAR Hacer SI MOSTRAR = BUSCAR entonces Escribir: Nombre Encontrado Fin si
F in D esd e Terminar proceso
D iagram a de flujo
G
rupo
E d it o r ia l M
egabyte
175
Algoritmos y Diagramas de Flujo aplicados en PHP Codificación en PHP Sbuscar = "Carmen";
Snom bres = array ("Joel", "C arm en", "C arol", "C risthian", "Mary"); foreach (Snombres as Smostrar)
if (Smostrar == $buscar){ echo "Nombre Encontrado: Smostrar"; } ?> Resultado PHP en WEB
Ejem plo 10 Construya un pseudocódigo, que inserte el nombre de una persona en un arreglo y luego muestre el nombre insertado.. 176
G
rupo
E
d ito r ia l
M
egabyte
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_si F in D e sd e Terminar proceso
G
rupo
E
d it o r ia l
M
egabyte
177
Algoritmos y Diagramas de Flujo aplicados en PHP
v
Resultado PHP en WEB
<^3
^
-
P rim eros pasos
h tt p :/ /jo e l. '*'
©
Ir
id
Ú ltim as noticias
Nombre Insertado: Sagi
Listo
Codificación en PHP Sinsertar = "Sagi"; 178
G
rupo
E
d ito r ia l
M
egabyte
Snom bres = array ("Joel", "C arm en", "C arol", "C risthian",
Capítulo 4: Arreglos - Arrays
foreach (Snombres as Smostrar)
if (Smostrar == $insertar){ echo "Nombre Insertado: Smostrar"; } ?> E je m 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, ELIMINAR Desde NOMBRES como INDICE -AMOSTRAR Hacer SI MOSTRAR o ELIMINAR entonces Escribir: Nombre Eliminado F in s i F in D e sd e Terminar proceso
Diagrama de flujo
s----------(
G
r ijpo
E
d ito r ia l
M
egabyte
INICIO
179
Algoritmos y Diagramas de Flujo aplicados en PHP
Codificación en PHP Seliminar = "NI";
Snom bres = array ("N I" =>"JoeI", "N2" =>"C arm en", "N3" =>"Carol", "N4" =>"Cristhian", "N5" =>"Mary");
unset ($nombres[$eliminarj); foreach (Snombres as $indice=>$mostrar) if (Smostrar <> $indice){
180
G
rupo
E d it o r ia l M
egabyte
Capítulo 4: Arreglos - Arrays
echo "N om bre elim inado < b r> "; } ?>
Resultado PH P en WEB
Ejem plo 12 Construya 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
rupo
E
d ito r ia l
M
egabyte
181
Algoritmos y Diagramas de Flujo aplicados en PHP
Desde
SUELDOS como INDICE -» MOSTRAR Hacer SI CODIGO = INDICE entonces calcular NSUELDO = MOSTRAR * 2.5 Escribir: Nuevo sueldo: NSUELDO F in si
F in D e sd e Terminar proceso
D iagram a de flujo
Capítulo 4: Arreglos - Arrays Codificación en PHP Scodigo = "CD-278";
$sueldos = array ("AB-234" =>"600", "CD-278" =>"500", "SD120" =>"300"); foreach (Ssueldos as $indice=>$m ostrar) if ($codigo == $indice){
$nsueIdo = $mostrar * 2.5; echo "Nuevo Sueldo Scodigo — Snsueldo
"; } ?> Resultado PHP en WEB
Ejem plo 13 Construya 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
rupo
E
d it o r ia l
M
egabyte
183
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, B Desde RESULTADO como INDICE A MOSTRAR Hacer SI MOSTRAR > 13 entonces Escribir: INDICE, MOSTRAR Fin si F in D e sd e Terminar proceso
Diagrama de flujo
184
G
rupo
E
d it o r ia l
M
egabyte
Capítulo 4: Arreglos - Arrays
R esultado P H P en W EB
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
rupo
E
d it o r ia l
M
egabyte
1 85
Algoritmos y Diagramas de Flujo aplicados en PHP foreach (Sresultado as $indice=>$mostrar) if (Smostrar > 13){ echo "Sindice -- Smostrar
"; } ?> E je m 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, B Desde
RESULTADO como INDICE -> MOSTRAR Hacer SI MOSTRAR > 13 entonces Eliminar: INDICE F in s i
F in D e sd e Desde
RESULTADO como INDICE -> MOSTRAR Hacer Escribir: INDICE, MOSTRAR
F in D e sd e Terminar proceso Diagrama de flujo
^
186
INICIO
^
G
rupo
E
d it o r ia l
M
egabyte
Capítulo 4: Arreglos - Arrays
Codificación en PH P $A = array ("Juan" =>"12", "Carlos" =>"16", "Jorge" =>"10", "Ricardo" =>"5", "Sagi" =>"20"); $B = array ("Maria" =>"7", "Luis" =>"18", "Alberto" =>"15", "Sergio" =>"11", "Marco" =>"0");
G
rupo
E
d ito r ia l
M
egabyte
187
Algoritmos y Diagramas de Flujo aplicados en PHP Sresultado = array_merge($A, $B); foreach (Sresultado as $indice=>$mostrar) if (Smostrar > 13){ unset ($resultado[$indice|); } foreach (Sresultado as $indice=>$mostrar) echo "Sindice — Smostrar
"; ?>
Resultado PHP en WEB
Ejem plo 15 Construya 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. 188
G
rupo
E
d it o r ia l
M
egabyte
Capítulo 4: Arreglos - Arrays Pseudocódigo: Iniciar proceso Declarar Variables INSERTAR: Carácter MOSTRAR : Carácter NOMBRES : Arreglo Desde
NOMBRES como MOSTRAR Hacer Escribir: MOSTRAR
F in D e sd e Hacer INSERTAR Desde NOMBRES como MOSTRAR Hacer Escribir: MOSTRAR Fin_Desde Terminar proceso
D iagram a de flujo
G
rupo
E
d ito r ia l
M
egabyte
189
Algoritmos y Diagramas de Flujo aplicados en PHP
Resultado PHP en WEB
Codificación en PHP Sinsertar = "Joel";
190
G
rupo
E
d ito r ia l
M
egabyte
Capítulo 4: Arreglos - Arrays Snombres = array ("Juan", "Pepe", "María", "Carol", "Luis");
foreach (Snombres as Smostrar) echo "Smostrar
"; echo "
";
array_push($nombres, Sinsertar);
foreach (Snombres as Smostrar) echo "Smostrar
"; ?>
E je m 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: M O STRA R S in o Escribir: MOSTRAR Fin Si F in D e sd e Terminar proceso
G
rupo
E
d it o r ia l
M
egabyte
191
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 "$mostrar
"; } else { echo "Smostrar
"; } ?> 192
G
rupo
E
d it o r ia l
M
egabyte
Capítulo 4: Arreglos - Arrays Resultado PHP en WEB
E je m 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_Desde S in o Si condición = 2
G
rupo
E
d ito r ia l
M
egabyte
1 93
Algoritmos y Diagramas de Flujo aplicados en PHP
Desde
TELEFONOS como MOSTRAR Hacer
Escribir: MOSTRAR F in D e sd e Fin Si S in o Si condición = 3 Desde PAIS como MOSTRAR Hacer Escribir: MOSTRAR F in D e sd e Fin_ Si F in S i Terminar proceso
Diagrama de flujo
194
G
rupo
E
d ito r ia l
M
egabyte
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", "2784532", "120-3234"); SPais = array ("Perú", "Brasil", "Chile", "Ecuador", "Bolivia");
if (Scondicion == 1){ foreach (SNombres as Smostrar) echo "Smostrar
"; }elseif (Scondicion ==2){ foreach (STelefonos as Smostrar) echo "Smostrar
";
G
rupo
E
d it o r ia l
M
egabyte
195
Algoritmos y Diagramas de Flujo aplicados en PHP
}elseif ($condicion ==3){ foreach (SPais as Smostrar) echo "Smostrar
"; } ?>
Resultado PHP en WEB
E je m 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
196
G
rupo
E
d it o r ia l
M
egabyte
Capítulo 4: Arreglos - Arrays TELEFONOS : cadena PAIS : cadena Hacer OPCION = 3 Caso = 1 Desde NOMBRES como MOSTRAR Hacer Escribir: MOSTRAR F in D e sd e Caso = 2 Desde
TELEFONOS como MOSTRAR Hacer Escribir: MOSTRAR F in D e sd e Fin_ Si
Caso = 3 Desde
PAIS como MOSTRAR Hacer Escribir: MOSTRAR F in D e sd e
Terminar proceso D iagram a de flujo
G
rupo
E
d it o r ia l
M
egabyte
197
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", "2784532", "120-3234"); SPais = array ("Perú", "Brasil", "Chile", "Ecuador", "Bolivia");
switch (Sopcion) {
case "1": foreach (SNombres as $mostrar) echo "Smostrar
"; case "2": foreach (STelefonos as Smostrar) echo "Smostrar
"; case "3":
198
G
rupo
E
d it o r ia l
M
egabyte
Capítulo 4: Arreglos - Arrays foreach (SPais as Smostrar) echo "Smostrar
"; } ?>
Resultado PHP en WEB
E je m 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
rupo
E
d ito r ia l
M
egabyte
199
Algoritmos y Diagramas de Flujo aplicados en PHP
Desde
MONEDAS como INDICE -> MOSTRAR Hacer Si INDICE = TIPO TOTAL = MOSTRAR * CANTIDAD Escribir: MOSTRAR F in S i
F in D e sd e Terminar proceso
D iagram a de flujo
200
G
rupo
E
d it o r ia l
M
egabyte
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 20 Construya un pseudocódigo, que muestre las notas de los alumnos seleccionando un código. G
rupo
E
d it o r ia l
M
egabyte
201
Algoritmos y Diagramas de Flujo aplicados en PHP P seudocó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 in D e sd e Terminar proceso Diagrama de flujo
202
G
rupo
E
d it o r ia l
M
egabyte
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
rupo
E
d it o r ia l
M
ecabvtf
203
Algoritmos y Diagramas de Flujo aplicados en PHP foreach ($notas as $indice=>$mostrar) echo "Sindice — $mostrar
"; ?>
R esultado PH P en WEB
Ejem plo 21 Construya un pseudocódigo, que genere un arreglo con datos personales y luego que se muestren. Pseudocódigo: Iniciar proceso Declarar 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
rupo
E
d ito r ia l
M
egabyte
Capítulo 4: Arreglos - Arrays Desde
DATOS como INDICE -> MOSTRAR Hacer Escribir: INDICE MOSTRAR
F in D e sd e Terminar proceso
Diagrama de flujo
Codificación en PHP
G
$Nom bres
= "Joel";
SApeüidos
= "De la Cruz";
STelefono
= "241-5239";
$email
= "[email protected]";
rupo
E
d ito r ia l
M
egabyte
205
Algoritmos y Diagramas de Flujo aplicados en PHP Sdatos = array ("Nom bres" =>"$Nom bres ", "Apellidos" = > " $ A p elIid o s" , "T elefono" = > " $ T elefo n o " , "em ail" =>"$email");
foreach ($datos as $indice=>$mostrar) echo "Sindice — $mostrar
"; ?>
Resultado PHP en WEB
E je m 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 206
G
rupo
E
d it o r ia l
M
egabyte
Capítulo 4: Arreglos - Arrays MOSTRAR: Real Desde
I = 1 Hasta 10 INC 1 = I + 1 Calcular ANIO = I + 1995 Hacer VAR = [ANIO]
Fin Desde Desde
VAR como MOSTRAR Hacer Escribir: MOSTRAR
F in D e sd e Terminar proceso
Diagrama de flujo
G
rupo
E
d it o r ia l
M
egabyte
207
Algoritmos y Diagramas de Flujo aplicados en PHP
Resultado PHP en WEB
”
¡
i
Prim eros pasos
■
• <■'
h ttp ://jo e l
'
Q Ir
m Ú lt mas n oticias
2003 2004 208 2005
G
rupo
E
d it o r ia l
M
egabyte
Capítulo 4: Arreglos - Arrays
array_push($var, Sanio);
4
} foreach (Svar as Smostrar) echo "Smostrar
”; echo "
";
?>
E je m 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 I = I' + 1 Escribir: La parte I es PARTES
FinJDesde Terminar proceso Diagrama de flujo
G
rupo
E
d it o r ia l
M
egabyte
209
Algoritmos y Diagramas de Flujo aplicados en PHP
Resultado PHP en WEB
^
^
Primeros pasos ©
La parte La parte La parte La parte
[0
h ttp ://jo e l v : ©
Ir j [ C L
Últimas no t cias
0 es Teclado 1 es Monitor 2 es Mouse 3 es Webcam
Listo
Codificación en PHP
" M on itor" ,
Snumelentos = count(Spartes); 210 for ($i=0; Si < Snumelentos; $i++) {
G
rupo
" M ouse",
E
d ito r ia l
M
egabyte
Esta impresión se realizo en los talleres gráficos de Grupo editorial Megabyte L IM A - P E R Ú
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.