Beruflich Dokumente
Kultur Dokumente
Megabyte
G R U P O E D I T O R T A L
Á 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
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.
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
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.
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.
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.
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
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.
R elación ales
Permiten evaluar las relaciones entre un par de operandos. Los operadores
relaciónales son:
Operador Acción
> M ayor que
>= M ayor o igual que
< M en o r que
<= M enor o igual que
= Igual
!= o o 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.
1 -0
2 .- A
3.- *, /, Mod, Not
4.- +, And
5.- >, < , > = , < = , < >, =, Or
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 4*n
Esta instrucción primero calcula la expresión 4*n y luego muestra ese resultado.
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.
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
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:
Ejem plo 1
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
Pseudocódigo:
1. Iniciar proceso
2. Declarar variables
H : real
B : real
A : real
3. LEER B
4. LEER H
5. A=(B *H )/2
6. ESCRIBIR A
7. Terminar el proceso
Explicación Pseudocódigo:
G rupo E d it o r ia l M egabyte 29
Algoritmos y Diagramas de Flujo aplicados en PHP
<?PHP
$B = "6";
$H = "10";
$A = ($B * $H / 2);
print "Resultado:
print $A;
?>
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 <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo "$ " y luego ingresamos el valor para cada
variable entre comillas y finalizando con ejemplo:
$B = "6";
$H = "10";
El print permite imprimir los valores ó comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:
print "Área de un Triangulo <br>";
print "Base = $B <br>";
print "Altura = $H <br>";
print "Resultado:
Si solo imprimirá el resultado no es necesario encerarlo entre comillas, ejemplo:
print $A;
la etiqueta html <br> es para dar un salto de línea y de esta manera evitara que
se vea todo en una línea.
Ejemplo 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
<?PHP
$A = "La";
SB = "Casa";
$C = "Blanca";
?>
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
<?PHP
$A = 3
$B = 6
$C = 4;
$R = pow(($A+$B-$C),3)/5;
?>
G rupo E d it o r ia l M egabyte 33
Algoritmos y Diagramas de Flujo aplicados en PHP
Explicación PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo y luego ingresamos el valor para cada
variable entre comillas y finalizando con ejemplo:
$A = 3;
SB = 6;
$C = 4;
Con pow llevamos a la potencia un valor numérico, ejemplo::
$R = pow(($A+$B-$C),3)/5;
El print permite imprimir los valores ó comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:
print "Resultado: <BR>";
Si solo imprimirá el resultado no es necesario encerarlo entre comillas, ejemplo:
print $R;
la etiqueta html <br> es para dar un salto de línea y de esta manera evitara que
se vea todo en una línea.
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
<?PHP
SCODIGO = "AB-2006";
$N1 = 16
$N2 = 11
$N3 = 18
$N4 = 15
?>
Explicación PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo y luego ingresamos el valor para cada
variable entre comillas y finalizando con ejemplo:
SCODIGO = "AB-2006";
$N1 = 16;
$N2 = 11;
$N3 = 18;
$N4 = 15;
Sumamos y dividimos las variables y almacenamos el resulto en $PRO, ejemplo::
$PRO = ($N l+$N 2+$N 3+$N 4)/4;
El print permite imprimir los valores ó comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:
print "Codigo: SCODIGO <br>";
print "Promedio: $PRO
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
PES, ALT : Real
3. LEER NOM, PES, ALT
4. Calcular PESO = PES * 0.4535924
5. Calcular ALTURA = ALT * 0.3048006
6. 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
<?PHP
$NOM = "Víctor";
$PES = 140;
SALT = 80;
Explicación PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo y luego ingresamos el valor para cada
variable entre comillas y finalizando con ejemplo:
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 <br>";
print "Peso: SPESO <br>";
print "Altura: SALTURA
la etiqueta html <br> es para dar un salto de línea y de esta manera evitara que
se vea todo en una línea.
Ejemplo 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
<?PHP
$EURO = 50;
SSOLES = SEURO * 4.11;
?>
Explicación PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo y luego ingresamos el valor para cada
variable entre comillas y finalizando con ejemplo:
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: <br>";
Si solo imprimirá el resultado no es necesario encerarlo entre comillas, ejemplo:
print SSOLES;
la etiqueta html <br> es para dar un salto de línea y de esta manera evitara que
se vea todo en una línea.
Ejemplo 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
<?PHP
$FECHA = date("d-m-Y");
$HORA = date("H:i:s");
?>
Explicación PHP
PHP inicia con la etiqueta <?PHP y tennina con ?>, cuando escribimos las
variables le anteponemos el signo y luego ingresamos el valor para cada
variable entre comillas y finalizando con ejemplo:
SFECHA = date("d-m-Y");
$HORA = date("H:i:s");
En PHP la fecha y hora se captura con date, seguidamente indicando el dia "d",
m es"m ", año "Y ", hora"H ", m inutos"i", segundos'V '.
El print permite imprimir los valores ó comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:
print "Fecha: $FECHA<br>";
print "Hora: $HORA";
la etiqueta html <br> es para dar un salto de línea y de esta manera evitara que
se vea todo en una línea.
Ejemplo 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
<?PHP
$CANT1 = 50;
$CANT2 = 60;
Explicación PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo y luego ingresamos el valor para cada
variable entre comillas y finalizando con ejemplo:
G rupo E d it o r ia l M ecabyte
Capítulo 1: Conceptos básicos
$CANT1 = 50;
SCANT2 = 60;
Ejemplo 9
Escriba un pseudocódigo, que dados los tres lados de un triángulo, determine su
área.
Formula:
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
Diagrama de flujo
Codificación en PHP
<?PHP
$L1 = 10;
$L2 = 13;
$L3 = 12;
Explicación PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo "$ " y luego ingresamos el valor para cada
variable entre comillas y finalizando con ejemplo:
$L1 = 10;
$L2 = 13;
$L3 = 12;
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. Calcular ÁREA = 4 * Pi * (RAD10A2)
6. Calcular VOLUMEN = 4/3 * Pi * (RADIOA3)
7. ESCRIBIR ÁREA, VOLUMEN
8. 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
<?PHP
$ RADIO = 20;
$PI = "3.141592";
Explicación PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo y luego ingresamos el valor para cada
variable entre comillas y finalizando con ejemplo:
G 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 <br>";
print "Volumen: SVOLUMEN";
la etiqueta html <br> es para dar un salto de línea y de esta manera evitara que
se vea todo en una línea.
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. Declarar Variables X I, Y l, X2, Y2, DISTANCIA : Real
3. Leer X I, Y l, X2, Y2
3. Calcular DISTANCIA =((X1 - X2)A2 + (Yl - Y2)A2)A0.5
4. ESCRIBIR DISTANCIA
5. Terminar el proceso
Diagrama de flujo
Codificación en PHP
<?PHP
$X1 = 20;
«X2 = 30;
$Y1 = 34;
«Y2 = 10;
G rupo E d it o r ia l M egabyte 51
Algoritmos y Diagramas de Flujo aplicados en PFIP
Explicación PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo "$ " y luego ingresamos el valor para cada
variable entre comillas y finalizando con ejemplo:
$X1 = 20;
$X2 = 30;
$Y1 = 34;
$Y2 = 10;
Calculamos la distancia.
SDISTANCIA = pow(pow (($X l-$X2),2) + pow(($Yl-$Y2),2),0.5);
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. Leer SI, NO
4. Calcular PSI = (SI * 100) / (SI + NO)
5. Calcular PNI = (NO * 100) / (SI + NO)
6. ESCRIBIR PSI, PNO
7. Terminar el proceso
<?PHP
$SI = 798;
$NO = 21;
•?>
G rupo E d it o r ia l M egabyte 53
Algoritmos y Diagramas de Flujo aplicados en PHP
Explicación PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo "S" y luego ingresamos el valor para cada
variable entre comillas y finalizando con ejemplo:
$SI = 798;
$NO = 21;
54 G rupo E d it o r ia l M egabyte
Capítulo 1: Conceptos básicos
la etiqueta html <br> es para dar un salto de línea y de esta manera evitara que
se vea todo en una línea.
Ejemplo 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
Codificación en PHP
<?PHP
SRADIO = 5;
SALTURA = 30;
SPI = "3.1416";
Explicación PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo "$" y luego ingresamos el valor para cada
variable entre comillas y finalizando con ejemplo:
$ RADIO = 5;
SALTURA = 30;
SPI = "3.1416";
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.
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
G rupo E d it o r ia l M egabyte 61
Algoritmos y Diagramas de Flujo aplicados en PHP
Si c o n d i c i ó n entonces
H acer o p e r a c ió n
Fin_Si
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
<?PHP
SCOLOR = "Blanco";
if (SCOLOR == "Blanco") {
print "Color Encontrado";
}
?>
Explicación PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo "$ " y luego ingresamos el valor para cada
variable entre comillas y finalizando con ejemplo:
G 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";
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
<?PHP
SNOTA = 9;
?>
Explicación PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo y luego ingresamos el valor para cada
variable entre comillas y finalizando con ejemplo:
SNOTA = 9;
IF iniciamos la condición luego encerramos entre paréntesis () la variable y
comparamos si es menor igual <= con el valor 10, si coincide mostramos entre {}
el resultado mensaje.
if (SNOTA <= 10) {
print "Desaprobado";
}
El print permite imprimir los valores ó comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:
print "Desaprobado";
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
<?PHP
«CANTIDAD = 80;
?>
Explicación PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo "«" y luego ingresamos el valor para cada
variable entre comillas y finalizando con ejemplo:
G 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
68 G rupo E d it o r ia l M egabyte
Capitulo 2: Estructuras lógicas selectivas
<?PH P
Explicación PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo "« " y luego ingresamos el valor para cada
variable entre comillas y finalizando con ejemplo:
SSUELDO = 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;
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
<?PHP
SCOLOR = "Negro";
if (SCOLOR == "Blanco") {
print "Color Encontrado";
}else{
print "Color NO Encontrado";
?>
Explicación PHP
PHP inicia con la etiqueta <?PHP y tennina con ?>, cuando escribimos las
variables le anteponemos el signo y luego ingresamos el valor para cada
variable entre comillas y finalizando con ejemplo:
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
<?PHP
$NOTA =12;
?>
Explicación PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo y luego ingresamos el valor para cada
variable entre comillas y finalizando con ejemplo:
74 G 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
<?PHP
«CANTIDAD = 80;
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 <?PH P y termina con ?>, cuando escribimos las
variables le anteponemos el signo "$ " y luego ingresamos el valor para cada
variable entre comillas y finalizando con ejemplo:
SCANTIDAD = 80;
IF iniciamos la 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
Codificación en PHP
<?PHP
SSUELDO = 700;
Explicación PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo "$" y luego ingresamos el valor para cada
variable entre comillas y finalizando con ejemplo:
G 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;
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
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
Diagrama de flujo
Codificación en PH P
<?PHP
$SU ELDO = 700;
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 <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo y luego ingresamos el valor para cada
variable entre comillas y finalizando con ejemplo:
SSUELDO = 700;
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
<?PHP
SSUELDO = 100;
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 <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo "$" y luego ingresamos el valor para cada
variable entre comillas y finalizando con ejemplo:
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
<?PHP
$A = 4;
$B = 9;
$C = 6;
90 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 <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo y luego ingresamos el valor para cada
variable entre comillas y finalizando con ejemplo:
IF iniciamos la condición luego encerramos entre paréntesis () la variable y
comparamos si A es mayor > que B
G rupo E d it o r ia l M egabyte
Capítulo 2: Estructuras lógicas selectivas
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
Codificación en PHP
< ?P H P
SNOTA = 18;
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo "$" y luego ingresamos el valor para cada
variable entre comillas y finalizando con ejemplo:
$NOTA = 18;
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
Codificación en PHP
<?PHP
$NUMERO = 18;
if ($NUMERO > 0) {
if ($NUMERO % 2 == 0) {
print "Numero Par";
}else{
print "Numero Impar";
}
}else{
print "Ingrese un Numero";
}
?>
Explicación PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo y luego ingresamos el valor para cada
variable entre comillas y finalizando con ejemplo:
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 {
/ / .....
}
(«NUMERO % 2 == 0)
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
Diagrama de flujo
Codificación en PHP
<?PHP
SEDAD 1 = 5;
SEDAD2 = 3;
}
}else{
print "Edades iguales";
}
}else{
print "Una de las edades es mayor a 10";
}
?>
Explicación PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo y luego ingresamos el valor para cada
variable entre comillas y finalizando con ejemplo:
SEDAD1 = 5;
S E D A D 2 = 3;
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
Diagrama de flujo
Codificación en PHP
< ?P H P
SNUM1 = 5;
$NUM2 = 3;
$NUM3 = 3;
Explicación PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo "$" y luego ingresamos el valor para cada
variable entre comillas y finalizando con ejemplo:
SNUM1 = 5;
SNUM2 = 3;
$NUM3 = 3;
IF iniciamos la condición luego encerramos entre paréntesis () la variable y
comparamos si algunos de los números son iguales.
if ($NUM I == $NUM2 OR $NUM1 == $NUM3
OR $NUM3 == $NUM2) {
/ / .....
} else {
/ / .....
}
Utilizamos OR para verificar si unos de los pares de números son iguales
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
<?PHP
SNUM1 = 5;
SNUM2 = 6;
$NUM3 = 7;
}else{
print "Ingrese solo números";
}
?>
Explicación PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo "$" y luego ingresamos el valor para cada
variable entre comillas y finalizando con ejemplo:
$NUM1 = 5;
$NUM2 = 6;
$NUM3 = 7;
G rupo E d it o r ia l M egabyte
Capítulo 2: Estructuras lógicas selectivas
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:
Ejemplo 17
Construya un pseudocódigo que pida dos números enteros y muestre por pantalla
el siguiente menú:
MENÚ
1. Sumar
2. Restar
3. Multiplicar
4. Dividir
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: R =A+B
Caso 2: R =A-B
Caso 3: R =A *B
Caso 4: R =A/ B
Fin_Caso
Escribir R
Terminar el proceso
Diagrama de flujo
Codificación en PHP
<?PHP
$A = 5;
$B = 6;
$M ENU = 3;
switch (SMENU) {
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;
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo y luego ingresamos el valor para cada
variable entre comillas y finalizando con ejemplo:
$A = 5;
$B = 6;
SMENU = 3;
switch evalúa y compara cada expresión de la sentencia case:
switch ($MENU) {
case 1:
11...
case 2:
11...
case 3:
11..
case 4:
11....
}
El p rin t permite imprimir los valores ó comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:
echo "Resultado $R";
E 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
Diagrama de flujo
c IN ICIO
/: DD, MM, AA
Codificación en PHP
<?PHP
$DD = 16;
$MM = 5;
$AA = 1778;
switch ($MM) {
case 1: $TD1AS = 31;
break;
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;
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";
}
?>
Explicación PHP
PHP inicia con la etiqueta <?PHP y tennina con ?>, cuando escribimos las
variables le anteponemos el signo y luego ingresamos el valor para cada
variable entre comillas y finalizando con ejemplo:
$DD = 16;
$MM = 5;
$AA = 1778;
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;
}
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
H acer
{Proceso}
M ientras (Condición)
{Fin del ciclo}
V = Vi
H acer
{proceso}
Calcular V = V + INC
M ientras que (Condición)
{Fin del ciclo}
V=Vi
H acer
{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
<?php
SSUELDO = 600;
SI = 0;
STOTAL = 0;
do {
D iagram a de flujo
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:
do {
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
Diagrama de flujo
Codificación en PHP
<?php
,
SANIO = 1995;
O
II
do {
SANIO = SANIO + 1;
echo "SANIO <br>";
SI = SI + i;
Explicación PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo y luego ingresamos el valor para cada
variable entre comillas y finalizando con ejemplo:
SANIO = 1995;
SI = 0;
El do ... while permite repetir una secuencia mientras $1 sea menor que < 10,
dentro de este bucle sumara los años hasta 10 veces y los ira mostrando uno por
uno echo "SANIO <br>";, también utilizamos el bucle para contar $1 el cual
permitirá indicarle al while que se detenga cuando este sea menor <10, si no se
define el $1, el bucle se repetirá indefinidamente:
do {
SANIO = SANIO + 1;
echo "SANIO <br>";
SI = SI + 1;
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
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
Codificación en PHP
<?php
$1 = 0 ;
$N = 1;
do {
if ($N % 2 == 0){
echo "$N <br>";
$CONT = $CONT + 1;
}
$1 = $1 + 1;
SN = $N + 1;
m s m G rupo E d it o r ia l M egabyte
Capítulo 3: Estructuras lógicas repetitivas
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 <br>";
echo "Total de números divisibles entre 2: SCONT";
la etiqueta html <br> es para dar un salto de línea y de esta manera evitara que
se vea todo en una línea.
El do ... while permite repetir una secuencia mientras $1 sea menor que < 20,
dentro de este bucle sumara los N números 20 veces y los ira mostrando echo
"$N <br>", solo los números divisibles entre 2.
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
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.
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
<?php
SNUM = 1;
SSUELDO = 500;
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:
SNUM = 1;
SSUELDO = 500;
El while permite repetir una secuencia mientras SNUM sea menor que < 20,
dentro de este bucle sumara los sueldos de 20 trabajadores y los ira mostrando
echo "SNUM = SSUELDO <br>". Note que solo debe mostrara hasta 10
trabajadores y para esto utilizamos SNUM == 10, para cuando cumpla la
condición automáticamente se detendrá con break, y mostrara la suma STOTAL
de sueldos. En SNUM++ es igual que SNUM = SNUM + 1.
Resultado PHP en WEB
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
<?php
$NUM = 1;
SANIO = 2000;
G rupo E d it o r ia l M egabyte
Capítulo 3: Estructuras lógicas repetitivas
}
$N U M ++;
}
?>
Explicación PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo y luego ingresamos el valor para cada
variable entre comillas y finalizando con ejemplo:
$NUM = 1;
$A N 10 = 2000;
G rupo E d it o r ia l M egabyte 1 39
Algoritmos y Diagramas de Flujo aplicados en PHP
El while permite repetir una secuencia mientras SNUM sea menor que < 10,
dentro de este bucle sumara los años y los ira mostrando echo "SANIO <br>";
Note que solo debe mostrara hasta el años actual y para esto utilizamos SANIO
== date("Y"), para cuando cumpla la condición automáticamente se detendrá
con break.
Diagrama de flujo
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;
$I++;
$N ++;
}
echo "S um a de núm eros NO divisibles entre 2: $SU M ";
?>
D iagram a de flujo
Explicación PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo "$ " y luego ingresamos el valor para cada
variable entre comillas y finalizando con ejemplo:
$1 = 0;
$N = 1;
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:
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
<?php
for ($num = 1; $num <=50; $num++){
if ($num % 3 == 0){
$SD = $SD + 1;
}e lse {
$ND = $ND + 1;
}
}
echo "Si Divisible $SD < b r> ";
echo "No Divisible $ND < b r> ";
?>
S É
r a f c f c jl
3 b ’ h t t p :/ /jo e l v <Q\r Q l_
Si Divisible 16
No Divisible 34
L isto
Explicación PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo y luego ingresamos el valor para cada
variable entre comillas y finalizando con ejemplo:
Snum = 1
la etiqueta html <br> es para dar un salto de línea y de esta manera evitara que
se vea todo en una línea.
El for (Snum = 1; Snum <=50; $num ++) permite iniciar NUM desde NUM
= 1, luego detiene el for cuando NUM sea menor igual <= a 50 y crea un contador
para que repita el bucle NUM++ que es igual a NUM = NUM + 1.
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
Codificación en PHP
<?php
for ($num = 1; $num <=10; $num++){
SR = $num * 5;
Diagrama de flujo
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 <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo y luego ingresamos el valor para cada
variable entre comillas y finalizando con ejemplo:
Snum = 1
la etiqueta html <br> es para dar un salto de línea y de esta manera evitara que
se vea todo en una línea.
El for ($num = 1; $nuni <=10; $num++) permite iniciar NUM desde NUM
=1, luego detiene el for cuando NUM sea menor igual <= a 10 y crea un contador
para que repita el bucle NUM++ que es igual a NUM = NUM + 1.
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
Fin_Desde
Terminar proceso
Diagrama de flujo
Codificación en PHP
<?php
for (Stabla = 1; $tabla <=9; $tabla++){
echo "<br><br>";
}
?>
la etiqueta html <br> es para dar un salto de línea y de esta manera evitara que
se vea todo en una línea.
El for ($num = 1; $num <=10; $num++) permite iniciar NUM desde NUM
=1, luego detiene el for cuando NUM sea menor igual <= a 10 y crea un contador
para que repita el bucle NUM++ que es igual a NUM = NUM + 1. igualmente
para for (Stabla = 1; Stabla <=9; $tabla++)
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
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
<?php
$c = 0;
for ($1 = 1; $1 <= 20000; $I*=2){
$c++;
echo "Números: $c <br>";
}
?>
Diagrama de flujo
Explicación PHP
PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las
variables le anteponemos el signo "$" y luego ingresamos el valor para cada
variable entre comillas y finalizando con ejemplo:
$c = 0;
El print permite imprimir los valores ó comentarios encerrados entre comillas,
que desea mostrar en la pantalla, ejemplo:
la etiqueta html <br> es para dar un salto de línea y de esta manera evitara que
se vea todo en una línea.
El for ($ 1 = 1 ; $1 <= 20000; $I*=2) permite iniciar 1 desde 1 =1, luego detiene
el for cuando I sea menor igual <= a 20000 y crea un contador para determinar
el termino de la progresión en bucle $ I *= 2
G 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
¿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.
Ejemplo 1
Para almacenar nombres de ciudades. Podríamos usar variables simples, ejemplo:
<?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.
<?php
echo $ciudades|3];
?>
<?php
?>
Agregando el valor al array. También por este mismo sistema se puede modificar
el valor de un array, e incluso añadir valores sin asignar índice, que será agregado
automáticamente por PHP:
<?php
$ciudades[] = "Piura";
?>
arrays asociativos
Permite usar strings como índices, es decir, cadenas de texto como índices. Este
tipo de array es conocido como array asociativo:
E je m p lo 2
<?php
Sciudades = arrav(
"Lima"=>"Miraflores",
"Arequipa"=>"Camana",
"Loreto"=>" Amazonas");
echo $ciudades[Arequipa|;
?>
Listo
arrays Multidimensionales
Un array multidimensional puede almacenar a su vez otro arrays:
Ejem plo 3
<?php
<?php
?>
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.
Ejemplo 4
<?
Sfrutas = array ("Manzana", "Pera", "Plátano", "Ciruela", "Fresa");
Explicación:
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.
Para este segundo bloque solo le indicamos que muestre después del tercer nombre
hasta el quinto.
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");
Explicación:
Ahora con array shif't encerramos la variable Sfrutas luego los almacenamos en
la variable Ssalida y luego con echo mostrar el primer nombre de la fruta del
arrays.
Ssalida = array shift (Sfrutas);
echo "La función devuelve: " . Ssalida . "<br>";
Luego con foreach encerramos la variable Sfrutas, donde están los nombres de
frutas que deseamos ver, los nuevos nombres se mostraran como "AS" variable
Smostrar donde con "echo" lo mostramos, noten que no se mostrar el primer
nombre de la fruta.
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.
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");
unset ($frutas("fruta3"]);
?>
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.
Ahora con unset encerramos la variable Sfrutas luego le indicamos el índice que
tiene que eliminar.
unset (Sfrutas["fruta3"]);
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");
Resultado PH P en WEB
Explicación:
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
<?
?>
Explicación:
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 "Carmen Mejia", "Karol
Mejia", “Cristhian De la Cruz”);
En la variable Snombres se ha almacenado todos estos nombres con apellidos,
para luego mostrarlo de la siguiente manera:
foreach (Snombres as Smostrar)
echo "Smostrar <br>";
Utilizamos foreach para que muestre toda la cadena de caracteres línea por
línea y sea mas útil trabajarlo.
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
D iagram a de flujo
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";
}
?>
Ejem plo 10
Construya un pseudocódigo, que inserte el nombre de una persona en un arreglo
y luego muestre el nombre insertado..
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
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
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
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){
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
D iagram a de flujo
Capítulo 4: Arreglos - Arrays
Codificación en PHP
<?
Scodigo = "CD-278";
?>
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.
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
R esultado P H P en W EB
Codificación en PH P
<?
G rupo E d it o r ia l M egabyte 1 85
Algoritmos y Diagramas de Flujo aplicados en PHP
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
^ INICIO ^
Codificación en PH P
<?
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.
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
Codificación en PHP
<?
Sinsertar = "Joel";
array_push($nombres, Sinsertar);
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
Diagrama de flujo
Codificación en PHP
<?
Sanio = "20".date("y");
Svaranios = array ("2005", "2006", "2007","2008", "2009");
foreach (Svaranios as Smostrar)
if (Smostrar == $anio){
echo "<b>$mostrar</b><br>";
} else {
echo "Smostrar <br>";
}
?>
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
Diagrama de flujo
Codificación en PHP
<?
Scondicion = 2;
SNombres = array ("Mary", "Carol", "Luis", "Juan", "Markus");
STelefonos = array ("234-5467", "897-2345", "123-4357", "278-
4532", "120-3234");
SPais = array ("Perú", "Brasil", "Chile", "Ecuador", "Bolivia");
if (Scondicion == 1){
foreach (SNombres as Smostrar)
echo "Smostrar <br>";
}elseif (Scondicion ==2){
foreach (STelefonos as Smostrar)
echo "Smostrar <br>";
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
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
Codificación en PHP
<?
$opcion = 3;
SNombres = array ("Mary", "Carol", "Luis", "Juan", "Markus");
STelefonos = array ("234-5467", "897-2345", "123-4357", "278-
4532", "120-3234");
SPais = array ("Perú", "Brasil", "Chile", "Ecuador", "Bolivia");
switch (Sopcion) {
case "1":
foreach (SNombres as $mostrar)
echo "Smostrar <br>";
case "2":
foreach (STelefonos as Smostrar)
echo "Smostrar <br>";
case "3":
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
D iagram a de flujo
Codificación en PHP
<?
Stipo = "Dolar";
$canti(lad = 250;
if (Sindice == $tipo){
Stotal = Smostrar * Scantidad;
echo "Total Stipo: Stotal";
}
?>
Ejemplo 20
Construya un pseudocódigo, que muestre las notas de los alumnos seleccionando
un código.
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
Diagrama de flujo
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");
}
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
Diagrama de flujo
Codificación en PHP
<?
$Nom bres = "Joel";
SApeüidos = "De la Cruz";
STelefono = "241-5239";
$email = "email@mymail.com";
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
MOSTRAR: Real
Diagrama de flujo
2005
Capítulo 4: Arreglos - Arrays
array_push($var, Sanio);
4
}
foreach (Svar as Smostrar)
echo "Smostrar <br>”;
echo "<p>";
?>
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
Diagrama de flujo
^ ^ [0 h ttp ://jo e l v : © Ir j [ C L
La parte 0 es Teclado
La parte 1 es Monitor
La parte 2 es Mouse
La parte 3 es Webcam
Listo
Codificación en PHP
<?php
S p artes = a rra y (" T ecla d o " , " M on itor" , " M ouse",
"Webcam");
210
Snumelentos = count(Spartes); G rupo E d ito r ia l M egabyte