Foros del Web » Programando para Internet » PHP »

PHP OO programa en php me tiene que imprimir una tabla y darme los porcentajes

Estas en el tema de programa en php me tiene que imprimir una tabla y darme los porcentajes en el foro de PHP en Foros del Web. escribir un programa en php que ingrese las ultimas elecciones a alcalde del pueblox, en la cual se tienen 4 candidatos y 5 distritos. se ...
  #1 (permalink)  
Antiguo 18/07/2012, 19:24
Avatar de carlos_18araque  
Fecha de Ingreso: julio-2012
Ubicación: Tovar, Mérida, Venezuela, Venezuela
Mensajes: 2
Antigüedad: 11 años, 9 meses
Puntos: 0
Exclamación programa en php me tiene que imprimir una tabla y darme los porcentajes

escribir un programa en php que ingrese las ultimas elecciones a alcalde del pueblox, en la cual se tienen 4 candidatos y 5 distritos. se desea lo siguiente:
a)imprimir la tabla con los datos y sus cabeceras incluidas.
b)calcular en imprimir el numero total de votos por cada candidato y el porcentaje de total de votos emitidos.
c)si algun candidato recibe mas del 50% de los datos, el programa imprimira un mensaje declarandolo ganador.
d)si ningun candidato recibe mas del 50% de los datos, el programa debe imprimir el nombre de los candidatos mas votados, que seran los que pasen a la segunda ronda de las elecciones.


ya monte la tabla me da el total de votos por candidato pero me falta el resto no se como hacerlo ayuda por fa aqui va el codigo

class elecciones{

private $result;
static $_instance;

public static function getInstance(){
if(!(self::$_instance instanceof self)){
self::$_instance = new self();
}
return self::$_instance;
}

public function total_votos($arr, $idx){
$sum = 0;
for($i=1; $i<6; $i++){
$sum += $arr[$idx][$i];
}
return $sum;
}

public function mayor_compra($arr){
$mayor = $this->total_votos($arr, 0);
$idx = 0;
for($i=1; $i<6; $i++){
if($this->total_votos($arr, $i) > $mayor){
$mayor = $this->total_votos($arr, $i);
$idx = $i;
}
}
echo 'Producto cuya compra es la mayor '.$arr[$idx]['nom'].' con '.$mayor.' Productos vendidos <br>';
}

public function mayor_descripcion($arr){
$mayor = $this->total_votos($arr, 1);
$idx = 1;
for($i=2; $i<6
; $i++){
if($this->total_votos($arr, $i) > $mayor){
$mayor = $this->total_votos($arr, $i);
$idx = $i;
}
}
echo 'La Mayor Venta por Marca es '.$mayor.' Autos Vendidos <br>';
}

public function menor_marca($arr){
$menor = $this->total_marca($arr, 1);
$idx = 1;
for($i=2; $i<6; $i++){
if($this->total_marca($arr, $i) < $menor){
$menor = $this->total_marca($arr, $i);
$idx = $i;
}
}
echo 'La Menor Venta por Marca es '.$menor.' Autos Vendidos <br>';
}

public function tabla_elecciones($arr){
echo '<table border="6" bordercolor="FF0000#255.0.0">';
echo '<td>Elecciones Pueblo CSM</td>';
echo '<td>Municipios </td>';
echo '<tr>';
echo '<td>Candidatos</td>';
echo '<td>Tovar</td>';
echo '<td>Guaraque</td>';
echo '<td>Bailadores</td>';
echo '<td>Santa cruz</td>';
echo '<td>Zea</td>';
echo '<td>Total votantes</strong></td>';
echo '<td>Porcentaje de Votos</strong></td>';
echo '</tr>';



for($i=0; $i<6; $i++){
echo '<tr>';
echo '<td>'.$arr[$i]['nom'].'</td>';
echo '<td>'.$arr[$i][1].'</td>';
echo '<td>'.$arr[$i][2].'</td>';
echo '<td>'.$arr[$i][3].'</td>';
echo '<td>'.$arr[$i][4].'</td>';
echo '<td>'.$arr[$i][5].'</td>';
echo '<td>'.$this->total_votos($arr, $i).'</td>';
echo '</tr>';

}
function porcentaje($total, $parte, $redondear = 2) {
return round($parte / $total * 100, $redondear);
}

$n1 = 234;
$n2 = 170;
$n3 = 235;
$n4 = 103;


$total = $n1+$n2+$n3+$n4;

echo "$n1 es el " . porcentaje($total, $n1, 2) . "% de 'Luis Capino' <br>";
echo "$n2 es el " . porcentaje($total, $n2, 2) . "% de 'Henry Candanga' <br>";
echo "$n3 es el " . porcentaje($total, $n3, 2) . "% de 'Juan copei' <br>";
echo "$n4 es el " . porcentaje($total, $n4, 2) . "% de 'Maria muu' <br>";

echo '</table>';
echo '<tr>';
echo '<td><strong>Totales</strong></td>';
echo '<td>'.$this->total_votos($arr, 1).'</td>';
echo '<td>'.$this->total_votos($arr, 2).'</td>';
echo '<td>'.$this->total_votos($arr, 3).'</td>';

'</td>';
echo '<td>'.$this->total_votos($arr).'</td>';
echo '</tr>';



}
}
?>

y este es el index


include('factura.php');

$obj = elecciones::getInstance();

$matriz = array(0 => array('nom' => 'Luis Capino',
1 => 100,
2 => 50,
3 => 40,
4 => 24,
5 => 20),
1 => array('nom' => 'Henry Candanga',
1 => 50,
2 => 60,
3 => 40,
4 => 10,
5 => 10),
2 => array('nom' => 'Juan copei',
1 => 50,
2 => 150,
3 => 10,
4 => 10,
5 => 15),
3 => array('nom' => 'Maria muu',
1 => 30,
2 => 30,
3 => 20,
4 => 20,
5 => 03)
);


$obj->tabla_elecciones($matriz);
$obj->total_votos($matriz);
$obj->porcentaje($matriz);
$obj->mayor_vendedor($matriz);
$obj->menor_vendedor($matriz);
$obj->menor_marca($matriz);
$obj->mayor_marca($matriz);




?>
  #2 (permalink)  
Antiguo 19/07/2012, 01:14
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: programa en php me tiene que imprimir una tabla y darme los porcentajes

No es politica de FW terminar ejercicios... si dices donde te encallas podemos ayudar... pero asi no.

Puesto que calcular % lo debes saber hacer

Y decidir si uno es mayor que 50% tambien

o elegir los un numero indeterminado de los mayores tambien....

Luego dinos lo que no sabes hacer....
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #3 (permalink)  
Antiguo 19/07/2012, 07:11
Avatar de carlos_18araque  
Fecha de Ingreso: julio-2012
Ubicación: Tovar, Mérida, Venezuela, Venezuela
Mensajes: 2
Antigüedad: 11 años, 9 meses
Puntos: 0
Respuesta: programa en php me tiene que imprimir una tabla y darme los porcentajes

estoy trancado en uno es mayor que 50% y que me de un mensaje de ganador como hago eso
  #4 (permalink)  
Antiguo 19/07/2012, 07:18
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: programa en php me tiene que imprimir una tabla y darme los porcentajes

Código PHP:
Ver original
  1. if ($nombrevar>.5){
  2.     echo "Ganador";
  3. }
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.

Etiquetas: porcentajes, programa, tabla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:08.