PHP - Operaciones básicas

 
Vista:
Imágen de perfil de Gustavo
Val: 8
Ha aumentado su posición en 16 puestos en PHP (en relación al último mes)
Gráfica de PHP

Operaciones básicas

Publicado por Gustavo (5 intervenciones) el 19/07/2018 19:21:09
Hola colegas.
Hoy tengo una duda con algo de PHP y es que estoy ingresando a este lenguaje que para mi es new. Me dicen que cree una funcion() que realice las operaciones aritméticas básicas (suma, resta, multiplicación y división) entre dos números, recibiendo como parámetros los dos datos sobre los que se realizará la operación y un tercer parámetro que le indique a la función la operación a realizar, el parámetro de la operación vendria siendo opcional pero si se lo deja vacío la suma debe hacerse por defecto, la función debe seleccionar qué operación hacer, ejecutarla y retornar el resultado. Almacenando esta funcion en un archivo .php y llamarlo desde un index.

La idea mia seria como un switch que me daria varias opciones

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
function operaciones($n1,$n2,$op='s'){
    switch ($op){
        case 's' :
            $valor = $n1 + $n2;
            break;
 
        case 'r':
            $valor = $n1 - $n2;
            break;
 
        case 'm':
            $valor = $n1 * $n2;
            break;
 
        case 'd':
            $valor = $n1 / $n2;
            break;
    }
        return $valor;
}

Al llegar al index.php lo que tengo dentro del <body> es un require_once 'ruta del archivo'
Pero solo es eso lo que tengo.

Podrian ayudarme?
Muchas gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Operaciones básicas

Publicado por xve (6935 intervenciones) el 19/07/2018 23:15:15
Hola Gustavo, entiendo que te falta llamar a la función y mostrar los datos, no?... puedes hacer algo así:

1
2
3
4
5
6
<body>
<?php
require("archivo.php");
echo operaciones(10,2,"m");
?>
</body>

Es esto lo que necesitas?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Gustavo
Val: 8
Ha aumentado su posición en 16 puestos en PHP (en relación al último mes)
Gráfica de PHP

Operaciones básicas

Publicado por Gustavo (5 intervenciones) el 20/07/2018 04:52:26
xve gracias por interesarte en mi tema.

Pues mira, lo coloco así como lo pones tu y no me ejecuta el index.php sino que me manda para la pagina principal de xampp :/
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Operaciones básicas

Publicado por xve (6935 intervenciones) el 20/07/2018 10:51:07
No entiendo porque te redirecciona...en ese código no hay nada que haga redireccionar!!

puede ser que tengas un archivo .htaccess?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Operaciones básicas

Publicado por jarcan (1 intervención) el 27/11/2022 23:45:40
amigo buena tarde, intenta coloocar la funcion include dentro del body de la siguiente manera:

<?php

include "funcion.php";

echo operaciones(23,5,"s");

?>

no olvidar que la funcion debe estar dentro de etiquetas php, de lo contrario no funciona.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 729
Bronce
Ha aumentado 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

Operaciones básicas

Publicado por gonzalo (615 intervenciones) el 21/07/2018 04:47:27
la funcion esta bien asi como esta, pero, y si te equivocas de letra? yo usaria signos en lugar de letras

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
function operaciones($n1,$n2,$op='+'){
 
    switch ($op){
 
        case '+' :
            $valor = $n1 + $n2;
            break;
 
        case '-':
            $valor = $n1 - $n2;
            break;
 
        case '*':
            $valor = $n1 * $n2;
            break;
 
        case '/':
            $valor = $n1 / $n2;
            break;
        default:
            echo("operacion $op no admitida<br>");
            $valor=0;
    }
 
    return $valor;
 
}

te falta detectar la division de cero o entre cero, que pasa si te mandan ese parametro?


1
2
3
4
5
6
7
8
case '/':
if($n1!=0 & $n2!=0)
{
    $valor = $n1 / $n2;
}else
{
    echo("Error: division cero.");
}

de ahi en mas .. .todo se ve bien.

salu2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar