Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   C++ Builder (https://www.clubdelphi.com/foros/forumdisplay.php?f=13)
-   -   polimorfismo (https://www.clubdelphi.com/foros/showthread.php?t=68878)

carmen_iriarte 12-07-2010 21:19:53

polimorfismo
 
buenas tardes, tengo un problema con un programa de polimorfismo en c++, necesito hacer el programa en c++ y php , en php ya esta listo corre y todo pero no logro hacerlo en c++ es que no tengo casi experiencia en este lenguaje sera que me podrian ayudar? gracias

escafandra 13-07-2010 10:33:26

Cita:

Empezado por carmen_iriarte (Mensaje 370119)
buenas tardes, tengo un problema con un programa de polimorfismo en c++...

Y ¿Cual es el problema?

Saludos.

Neftali [Germán.Estévez] 13-07-2010 11:26:41

Cita:

Empezado por escafandra (Mensaje 370166)
Y ¿Cual es el problema?

Reponder a eso estaría bien. :D:D
Te recomiendo también Carmen, que revises la Guía de estilo.

Bienvenida a los foros.

carmen_iriarte 13-07-2010 15:21:32

polimorfismo
 
que necesito pasar el programa que tengo en php a c++ pero no tengo conocimientos en este lenguaje.. pasa el codigo q tengo a ver si me pueden ayudar...son 4 clases mas el index,....el index esta al final:

<?php
error_reporting(E_ALL);
/**
* class.Asalariado.php
*/
if (0 > version_compare(PHP_VERSION, '5')) {
die('Este archivo fue generado para PHP 5');
}
/**
* include Empleado_1
*/
require_once('class.Empleado_2.php');
class Asalariado extends Empleado_2
{

// --- OPERATIONS ---
public function preparoPago()
{
return ($this->salario/2.0);
}
} /* end of class Asalariado */
?>
-----------------------------------------------
<?php
error_reporting(E_ALL);
/**
* class.Empleado_2.php
*/
if (0 > version_compare(PHP_VERSION, '5')) {
die('Este archivo fue generado para PHP 5');
}
class Empleado_2
{
// --- ATTRIBUTES ---

public $nombre = null;
public $apellido = null;
public $direccion = null;
public $cedula = 0;
public $salario = 0.0;
// --- OPERATIONS ---
public function setCedula($cedula)
{
$this->cedula=$cedula;
}
public function getCedula()
{
return $this->cedula;
}
public function setNombre($nombre)
{
$this->nombre=$nombre;
}
public function getNombre()
{
return $this->nombre;
}
public function setApellido($apellido)
{
$this->apellido=$apellido;
}
public function getApellido()
{
return $this->apellido;
}
public function envioCheque()
{
print "Enviar un cheque a " . $this->nombre . " " . $this->direccion;
}

} /* end of class Empleado_2 */
?>
-----------------------------------------------------------
<?php
error_reporting(E_ALL);
/**
* class.PorComision.php
*/
if (0 > version_compare(PHP_VERSION, '5')) {
die('Este archivo fue generado para PHP 5');
}
/**
* include Empleado_2
*/
require_once('TALLER/class.Empleado_2.php');
class PorComision extends Empleado_2
{
// --- ATTRIBUTES ---

public $ventasBrutas;
public $porcentajeComision;
// --- OPERATIONS ---
public function preparoPago()
{
return ($this->porcentajeComision * $this->ventasBrutas);
}
} /* end of class PorComision */
?>
---------------------------------------------------
<?php
error_reporting(E_ALL);
/**
* class.PorHoras.php
*/
if (0 > version_compare(PHP_VERSION, '5')) {
die('Este archivo fue generado para PHP 5');
}
/**
* include Empleado_2
*/
require_once('TALLER/class.Empleado_2.php');
class PorHoras extends Empleado_2
{
// --- ATTRIBUTES ---

public $tarifaHora;
public $horasTrabajadas;
// --- OPERATIONS ---
public function preparoPago()
{
return ($this->horasTrabajadas * $this->tarifaHora);
}
} /* end of class PorHoras */
?>
------------------------------------------------------
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
</head>
<body>
<?php
require_once('TALLER/class.Asalariado_2.php');
require_once('TALLER/class.PorHoras_2.php');
require_once('TALLER/class.PorComision.php');


$emp[0] = new Asalariado();
$emp[1] = new PorHoras();
$emp[2] = new PorComision();

$emp[0]->setNombre("Juan");
$emp[0]->setApellido("Herrera");
$emp[0]->setCedula("6555172");
$emp[0]->salario = 2382.00;
$emp[1]->setNombre("Pedro");
$emp[1]->setApellido("Perez");
$emp[1]->setCedula("1234567");
$emp[1]->horasTrabajadas = 50;
$emp[1]->tarifaHora = 100;

$emp[2]->setNombre("Carmen");
$emp[2]->setApellido("Iriarte");
$emp[2]->setCedula("18181472");
$emp[2]->porcentajeComision = 0.10;
$emp[2]->ventasBrutas = 4000;

$total = 0.0;
foreach ($emp as $actualEmp) {
print("Nombre, Apellido, Cedula, Otros<br>");
print("------------------------------------<br>");
print($actualEmp->getNombre() . ", " . $actualEmp->getApellido() . ", " . $actualEmp->getCedula() . ", " . get_class($actualEmp) . "<br>");
print("------------------------------------<br>");
print("Salario: " . $actualEmp->preparoPago() . "<br>");
$total = $total + $actualEmp->preparoPago();
print("------------------------------------<br>");
}
print("========================<br>");
print("Total a Pagar<br>");
print("========================<br>");
print($total . " Bs. <br>");

?>
</body>
</html>

Ñuño Martínez 14-07-2010 18:53:39

No te recomiendo que traduzcas de PHP a C++, entre otras cosas porque gran parte del lenguage PHP simplemente "no existe" en C++ por lo que hay que implementarlo desde cero (por ejemplo, "foreach").

Lo que deberías hacer es recodificar (esto es, a partir de los requisitos volver a planificar y crear el programa, esta vez en C++), pero si dices que no tienes conocimientos de C++ chungo lo tienes.

Antes de que preguntes si alguno de nosotros puede hacerlo por ti, ya te digo que yo, por ejemplo, tengo amplios conocimientos tanto de PHP como de C++, pero hace un tiempo juré que no volvería a codificar C++ jamás (salvo para ejemplificar y aconsejar, que no es el caso). Y el resto pues :rolleyes:


La franja horaria es GMT +2. Ahora son las 07:38:52.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi