Skip to content

Commit 61f10f1

Browse files
authored
Merge branch 'mouredev:main' into main
2 parents 9318c3b + 947c0af commit 61f10f1

File tree

10 files changed

+2005
-606
lines changed

10 files changed

+2005
-606
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,344 @@
1+
<?php
2+
3+
# Operadores
4+
5+
$a = 4;
6+
$b = 15;
7+
8+
// Operadores aritmeticos
9+
print "suma: 10 + 15 = " . 10 + 15;
10+
print "resta: 10 - 15 = " . 10 - 15;
11+
print "multiplicacion: 10 x 10 = " . 10 * 10;
12+
print "division: 20 / 10 = " . 20 / 10;
13+
print "modulo: 20 % 2 = " . 20 % 2;
14+
print "exponente: 10 ** 2 = " . 10 ** 2;
15+
16+
// Operadores de comparacion
17+
print "igualdad: 10 == 5 es " . (10 == 5 ? 'true' : 'false');
18+
echo "desigualdad: 10 != 4 es " . (10 != 4 ? 'true' : 'false');
19+
print "mayor que: 10 > 2 es " . (10 > 2 ? 'true' : 'false');
20+
echo "menor que: 3 < 1 es " . (3 < 1 ? 'true' : 'false');
21+
print "mayor o igual que: 8 >= 7 es " . (8 >= 7 ? 'true' : 'false');
22+
print "menor o igual que: 2 <= 2 es " . (2 <= 2 ? 'true' : 'false');
23+
24+
// Operadores lógicos
25+
26+
# AND && : sirve para que dos condiciones se cumplan.
27+
# OR || : Sirve para que al menos una de las condiciones se cumpla
28+
# NOT ! : Sirve para revertir un valor booleano true a false y visebersa.
29+
30+
print "&& AND: 20 + 5 == 25 && 8 - 7 == 1 es " . (20 + 5 == 25 && 8 - 7 == 1 ? 'true' : 'false');
31+
print "|| OR: 10 - 2 == 8 || 5 - 2 == 4 es " . (10 - 2 == 8 || 5 - 2 == 4 ? 'true' : 'false');
32+
33+
34+
// Operador de asignacion
35+
36+
$variable_int = 22; #asignacion
37+
$variable_int += 8; # suma y asignacion
38+
$variable_int -= 2; # resta y asignacion
39+
$variable_int *= 2; # multiplicación y asignacion
40+
$variable_int /= 4; # division y asignacion
41+
$variable_int %= 4; # módulo y asignación
42+
$variable_int **= 2; # exponente y asignacion
43+
$variable_str = 'carlos ';
44+
$variable_str .= 'samuel'; #concatenacion y asignacion.
45+
print $variable_str;
46+
print $variable_int;
47+
48+
/*
49+
Operadores de indentidad:
50+
Nos sirve para comparar el valor de la posicion en memoria.
51+
*/
52+
$n1 = 10;
53+
$n2 = 10;
54+
print "10 === 10 es " . ($n1 === $n2 ? 'true' : 'false'); # es identico
55+
print "10 !== 10 es " . ($n1 !== $n2 ? 'true' : 'false'); # es distinto
56+
57+
// Operadores bit a bit
58+
# Los operadores bit a bit nos permiten realizar operaciones a nivel de bit sobre numeros enteros. Lo que hace es transforma el int a bit y realiza una operacion que al final nos da el resultado de lo que nos dio en bit, convertido en integer.
59+
60+
# AND -> solo si los dos valores son 1, entonces será 1.
61+
# OR -> si almenos un valor es 1, entonces será 1.
62+
# XOR -> compara bit a bit, si son diferentes entonces será 1, sino 0.
63+
# ~ NOT -> revierte cada bit a bit que encuentra. si esta activo, lo desactiva.
64+
65+
66+
$a = 10; #1010
67+
$b = 3; #0011
68+
69+
print "& AND: 10 & 3 = " . ($a & $b); #0010
70+
print "| OR: 10 | 3 = " . ($a | $b); #1011
71+
print "^ XOR: 10 ^ 3 = " . ($a ^ $b); #1001
72+
print "~ NOT: ~ 10 = " . (~$a);
73+
74+
75+
// ESTRUCTURAS DE CONTROL
76+
77+
$a = 3;
78+
$b = 1;
79+
80+
# if
81+
if ($a > $b) {
82+
echo "a es mayor que b";
83+
}
84+
85+
$nombre = 'juan';
86+
if ($nombre == 'juan') {
87+
echo "los nombres coinciden";
88+
}
89+
90+
$nombre = 'juan';
91+
if ($nombre != 'pablo') {
92+
echo "los nombres son distintos";
93+
}
94+
95+
# if else
96+
$usuario = 'usuario';
97+
$password = '123456';
98+
if (
99+
$usuario == 'usuario' && $password == '12345'
100+
) {
101+
echo "Bienvenido";
102+
} else {
103+
echo "Error al ingresar credenciales";
104+
}
105+
106+
#if elseif else
107+
$nombre = 'juan';
108+
if ($nombre == 'juan') {
109+
echo "escribiste tu primer nombre";
110+
} elseif ($nombre == 'pablo') {
111+
echo "escribiste tu segundo nombre";
112+
} else {
113+
echo "No ingresaste un nombre";
114+
}
115+
116+
# switch
117+
$opcion = '3';
118+
switch ($opcion) {
119+
case '1':
120+
print "opcion 1";
121+
break;
122+
123+
case '2':
124+
print "opcion 2";
125+
break;
126+
127+
case '3':
128+
print "opcion 3";
129+
break;
130+
131+
default:
132+
print "ingresa una opcion válida";
133+
break;
134+
}
135+
136+
#ternario
137+
$edad = 14;
138+
print $edad >= 18 ? 'Es mayor de edad' : 'Eres menor';
139+
140+
141+
// ESTRUCTURAS DE CONTROL ITERATIVAS
142+
143+
#FOR
144+
145+
#imprimir numeros del 1 - 10
146+
for ($i = 1; $i <= 10; $i++) {
147+
print $i . "\n";
148+
}
149+
150+
#tabla de multiplicar hasta 10
151+
$n_tabla = 2;
152+
for ($i = 1; $i <= 10; $i++) {
153+
print $n_tabla . " x " . $i . " = " . ($n_tabla * $i) . "\n";
154+
}
155+
156+
#suma de los primero 100 numeros
157+
$suma = 0;
158+
for ($i = 1; $i <= 100; $i++) {
159+
$suma += $i;
160+
}
161+
echo "la suma de los primeros 100 numeros es : $suma";
162+
163+
// WHILE
164+
165+
#sumar numeros del 1 al 5
166+
$n = 1;
167+
168+
while ($n <= 5) {
169+
print $n++;
170+
}
171+
172+
#mostrar los numeros pares del 1 al 20
173+
$n = 2;
174+
$pares = "";
175+
176+
while ($n <= 20) {
177+
if ($n % 2 == 0) {
178+
$pares .= $n . "\n";
179+
}
180+
$n++;
181+
}
182+
print $pares;
183+
184+
#factorial de un numero
185+
$factorial = 6;
186+
$resul = 1;
187+
188+
while ($factorial >= 1) {
189+
$resul *= $factorial;
190+
$factorial--;
191+
}
192+
echo "el resultado es: $resul";
193+
194+
#Serie fibonacci de los primero 100 numeros.
195+
$n_factorial = 10;
196+
$a = 0;
197+
$b = 1;
198+
$result = 0;
199+
$contador = 2;
200+
$total_fibonacci = "$a, $b, ";
201+
202+
while ($contador <= $n_factorial) {
203+
$result = $a + $b;
204+
$a = $b;
205+
$b = $result;
206+
$total_fibonacci .= "$result, ";
207+
$contador++;
208+
}
209+
print $total_fibonacci;
210+
211+
# Numero primo
212+
$n_primo = 100;
213+
$resul = "es primo";
214+
215+
for ($i = 2; $i <= sqrt($n_primo); $i++) {
216+
if ($n_primo % $i == 0) {
217+
$resul = "no es primo";
218+
break;
219+
}
220+
}
221+
echo $resul;
222+
223+
# foreach
224+
$array = array(1, 2, 3, 4);
225+
226+
foreach ($array as $valor) {
227+
$valor = $valor * 2;
228+
echo $valor;
229+
}
230+
231+
// Menejo de excepciones - try catch
232+
233+
function dividir($numero)
234+
{
235+
if (!$numero) {
236+
throw new Exception("Error division por 0 \n");
237+
}
238+
return 1 / $numero;
239+
}
240+
241+
try {
242+
echo dividir(12) . "\n";
243+
} catch (Exception $e) {
244+
echo "Excepción capturada: " . $e->getMessage();
245+
} finally {
246+
echo "finalizó el manejo de excepciones \n";
247+
}
248+
print "sigue funcionando";
249+
250+
# Ejercicio con Try catch
251+
252+
/*
253+
Crea una función que reciba dos números y un operador (+, -, *, /) como parámetros. La función debe realizar la operación correspondiente, pero debe lanzar una excepción si:
254+
255+
El operador no es válido.
256+
Se intenta dividir por cero.
257+
*/
258+
259+
function calculadora($n1, $n2, $operador)
260+
{
261+
262+
#validacion
263+
if ($n1 == 0 || $n2 == 0) {
264+
throw new Exception("Ingresa un numero mayor a 0");
265+
return;
266+
}
267+
268+
switch ($operador) {
269+
case "+":
270+
return $n1 + $n2;
271+
break;
272+
case "-":
273+
return $n1 - $n2;
274+
break;
275+
case "*":
276+
return $n1 * $n2;
277+
break;
278+
case "/":
279+
return $n1 / $n2;
280+
break;
281+
default:
282+
throw new Exception("El operador no es válido");
283+
break;
284+
}
285+
}
286+
287+
try {
288+
echo calculadora(5, 4, "%");
289+
} catch (Throwable $t) {
290+
print "Error: " . $t->getMessage();
291+
}
292+
293+
294+
295+
296+
/* DIFICULTAD EXTRA (opcional):
297+
Crea un programa que imprima por consola todos los números comprendidos
298+
entre 10 y 55 (incluidos), pares, y que no son ni el 16 ni múltiplos de 3.
299+
*/
300+
301+
for ($i = 10; $i < 56; $i++) {
302+
if ($i % 2 == 0 && $i % 3 !== 0 && $i != 16) {
303+
print "$i \n";
304+
}
305+
}
306+
307+
/* EJERCICIO EXTRA:
308+
Imprime todos los números entre 1 y 50 que sean múltiplos de 5.
309+
*/
310+
311+
for ($i = 1; $i < 51; $i++) {
312+
if ($i % 5 == 0) {
313+
echo "$i \n";
314+
}
315+
}
316+
317+
/*
318+
Ejercicio extra: Suma de múltiplos de 7
319+
Calcula la suma de todos los múltiplos de 7 entre 1 y 100.
320+
*/
321+
$suma = 0;
322+
for ($i = 1; $i <= 100; $i++) {
323+
if ($i % 7 == 0) {
324+
$suma += $i;
325+
}
326+
}
327+
echo "la sumatoria de los multiplos de 7 es: $suma";
328+
329+
330+
/*
331+
Ejercicio extra: Múltiplos de 8 hasta un número dado
332+
Pide al usuario un número máximo y, a partir de 1, imprime todos los múltiplos de 8 que sean menores o iguales a ese número.
333+
*/
334+
335+
function multiplos_ocho($limite)
336+
{
337+
for ($i = 1; $i <= $limite; $i++) {
338+
if ($i % 8 == 0) {
339+
echo "$i \n";
340+
}
341+
}
342+
}
343+
344+
multiplos_ocho(40);

0 commit comments

Comments
 (0)