Tema destacado: Únete al Grupo Steam elhacker.NET
Autor
|
Tema: Multiplicaciones de matrices (Leído 1,002 veces)
|
|
|
AckeR
Desconectado
Mensajes: 109
Tu única Limitación Es tú Imaginación (:
|
Podrías adjuntar el código que ya llevas hecho  y recuerda usar la etiquta GeSHi para ver mejor el code 
|
|
|
|
|
En línea
|
 ...DaR LaS GraCiaS No CuestA NadA...
|
|
|
legomanticore
Desconectado
Mensajes: 11
|
ahora mismo subo lo que llevo hecho aki dejo el codigo lo hiba a subir a megaupload pero no le vi sentido a q esperaras un rato para bajar un archivo de 4 kb ... perdona la molestia y q se vea todo raro esk soy nuevo en esto del uso de GeSHi >_______< y pss bueno ahi esta el codigo lo tengo en 4 partes distintas la pagina lleva esto: -----[b]libreria[/b]---------
<html> <?php
function genera_matriz($filas,$columnas,$indice) { $x=1; while ($x <= $filas) { $y=1; while ($y <= $columnas) { echo "<input type=text size=2 name="."'$indice$x$y'"."/>"; $y++; } echo "<br>"; $x++; } echo "<br>"; } ?> </html>
----------[b]Main[/b]----------
<html>
<body bgcolor="blue"> <font face="arial" size="5">Proyecto Matriz!!</font> <br> <br> <font color="blue" face="arial"> <iframe name="uno" width="70%" height="100%" src="problema.php" frameborder="1" scrolling="no" align="top"> </iframe> <iframe name="dos" width="30%" height="100%" src="resultado.php" frameborder="1" scrolling="no" align="top" marginheight="0" marginwidth="0"> </iframe> </font> </body>
</html>
-------[b]Problema[/b]---------
<?php session_start(); ?> <html> <body bgcolor="blue"> <font face="Tahoma" size="4"> <marquee><center>Seleccione la operacion que desea realizar</center></marquee> </font>
<form target="uno" action="problema.php" method="post"> <font face="Tahoma" size="3"> Operación a realizar: <select name="operacion"> <option> suma </option> <option> resta </option> <option> multiplicacion </option> <option> transpuesta </option> </select> <br> <input TYPE="submit" value="Captura matriz"/> </font> </form>
<?php if (isset($_REQUEST["operacion"])) { $_SESSION["operacion"] = $_REQUEST["operacion"]; if (($_REQUEST["operacion"]=="suma")or( $_REQUEST["operacion"]=="resta") or ( $_REQUEST["operacion"]=="multiplicacion")) { $captura=2;} if ($_REQUEST["operacion"]=="transpuesta") { $captura=1;} echo "<form target=uno action=problema.php method=post>"; $x=0; echo "<font face=Tahoma size=3>"; while ($captura>$x) { $x++; echo "filas $x:"; echo "<br>"; echo "<input TYPE=text name="."'f$x'"."/>"; echo "<br>"; echo "columnas $x:"; echo "<br>"; echo "<input TYPE=text name="."'c$x'"."/>"; echo "<br>"; } echo "</font>"; echo "<BR><BR><input TYPE=submit value="."'capturar valores de matriz'".">"; echo "</form>"; }
?> <?php /* Llamado a librería que genera los inputs para captura de datos de matriz */ include 'libreria.php'; if ((isset($_REQUEST["f1"]))or(isset($_REQUEST["c1"]))) { /*Almacenar dimensiones para utilizarlas posteriormente en el calculo solicitado*/ $_SESSION["f1"]=$_REQUEST["f1"]; $_SESSION["c1"]=$_REQUEST["c1"]; echo "<form target=dos action=resultado.php method=post>"; /* Llamada a la función existente en la librería*/ genera_matriz($_REQUEST["f1"],$_REQUEST["c1"],"I"); if ((isset($_REQUEST["f2"]))and(isset($_REQUEST["c2"]))) { /*Almacenar dimensiones para utilizarlas posteriormente en el calculo solicitado*/ $_SESSION["f2"]=$_REQUEST["f2"]; $_SESSION["c2"]=$_REQUEST["c2"]; /* Llamada a la función existente en la librería*/
genera_matriz($_REQUEST["f2"],$_REQUEST["c2"],"J"); } echo "<input TYPE=submit value="."'resolver matriz'".">"; echo "</form>"; } ?> </body>
</html>
----------[b]Resultado[/b]----------
<?php session_start()?> <html> <body bgcolor="blue"> <center> <font face="arial" size="2"> <br> <b>Resultado del problema</b> <?php If (isset($_REQUEST["I11"])) { /* Se realiza calculo de matrices dependiendo de la operación seleccionada */ If ($_SESSION["operacion"]=="suma") { $x=1; $y=1; while ($x <= $_SESSION["f1"]) { while ($y <= $_SESSION["c1"]) { echo "<br>"; $matriz_resultado["$x$y"] = $_REQUEST["I$x$y"]+$_REQUEST["J$x$y"]; $y++; } $y=1; $x++; } }
If ((isset($_REQUEST["I11"]))and(isset($_REQUEST["J11"]))) { /* Se realiza calculo de matrices dependiendo de la operación seleccionada */ If ($_SESSION["operacion"]=="resta") { $x=1; $y=1; while ($x <= $_SESSION["f1"]) { while ($y <= $_SESSION["c1"]) { echo "<br>"; $matriz_resultado["$x$y"] = $_REQUEST["I$x$y"]-$_REQUEST["J$x$y"]; $y++; } $y=1; $x++; } } } If (isset($_REQUEST["I11"])) { If ($_SESSION["operacion"]=="transpuesta") { $x=1; $y=1; while ($x <= $_SESSION["f1"]) { while ($y <= $_SESSION["c1"]) { $matriz_resultado["$x$y"] = $_REQUEST["I$y$x"]; $y++; } $y=1; $x++; } } } $x=1; $y=1; echo "<br><br>"; echo "<table border=1 >"; while ($x <= $_SESSION["f1"]) { echo "<tr height=50 width=50>"; while ($y <= $_SESSION["c1"]) { echo "<td height=50 width=50>"; echo "<center>"; echo $matriz_resultado["$x$y"] ; echo "</center>"; $y++; echo "</td>"; } $y=1; $x++; echo "</tr>"; } echo "</table>"; } ?> </font> </center> </body> </html>
|
|
|
|
« Última modificación: 20 Diciembre 2011, 18:57 por legomanticore »
|
En línea
|
|
|
|
Shell Root
Desconectado
Mensajes: 2.456
Alex Jurado
|
Tienes que saber primero como se multiplican las matrices, saca la lógica y la formula y será mucho más fácil programarlo. :http://es.wikipedia.org/wiki/Multiplicaci%C3%B3n_de_matrices
|
|
|
|
|
En línea
|
 ---
|
|
|
legomanticore
Desconectado
Mensajes: 11
|
de hecho si se como multiplicar matrices xD hasta sacar transpuesta e inversa y todo ese rollo :3 pero graxie :3
|
|
|
|
|
En línea
|
|
|
|
Shell Root
Desconectado
Mensajes: 2.456
Alex Jurado
|
Entonces cual es tu problema?
|
|
|
|
|
En línea
|
 ---
|
|
|
legomanticore
Desconectado
Mensajes: 11
|
que no entiendo bien el como hacer el codigo, la verdad ... lo eh intentado de varias formas y no me sale... :/ 
|
|
|
|
|
En línea
|
|
|
|
legomanticore
Desconectado
Mensajes: 11
|
Podrías adjuntar el código que ya llevas hecho  y recuerda usar la etiquta GeSHi para ver mejor el code  crees k puedas ayudarme bro? =(
|
|
|
|
|
En línea
|
|
|
|
Shell Root
Desconectado
Mensajes: 2.456
Alex Jurado
|
El código lo hice apartir de este en Java, :http://www.microplagio.com/articulos/script-multiplicacion-de-matrices-en-java/ class Matriz{ function multiplicacion( $Mat1, $Mat2 ){ $suma = 0; $result = array(); for( $i=0; $i<count($Mat1); $i++ ){ for( $j=0; $j<count($Mat2); $j++ ){ $suma = 0; for( $k=0; $k<count($Mat2); $k++ ){ $suma += $Mat1[$i][$k] * $Mat2[$k][$j]; } $result[$i][$j] = $suma; } } return $result; } function mostrar( $Mat ){ for( $i=0; $i<count($Mat); $i++ ){ for( $j=0; $j<count($Mat[$i]); $j++ ){ print $Mat[$i][$j]." | "; } print "<br/>"; } } } $Mat1[0] = array(1, 2, 3, 4); $Mat1[1] = array(5, 6, 7, 8); $Mat2[0] = array(1, 2, 3, 4); $Mat2[1] = array(5, 6, 7, 8); $Matriz = new Matriz(); $Mat = $Matriz->multiplicacion($Mat1, $Mat2); $Matriz->mostrar($Mat);
|
|
|
|
|
En línea
|
 ---
|
|
|
legomanticore
Desconectado
Mensajes: 11
|
okz gracias  ahora me toca colocarlo como debe para que jale con las otras 3 funciones k ia tengo ^_^
|
|
|
|
|
En línea
|
|
|
|
|
|