Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Martinsrj

[Resolvido] Dificuldade de migrar de JAVA para PHP

Recommended Posts

Olá pessoal, bom dia!

Tenho um código em JAVA Calculadora que fiz para praticar os conceitos da linguagem:

public class Calculadora {
 
private int x=6;
private int y=3;
public int getX(){
 return x;
}
public void setX(int x){
 this.x=x;
}
public int getY(){
 return y;
}
public void setY(int y){
 this.y=y;
}
public Calculadora(){}
public void soma(){
int soma = x+y;
System.out.println("A soma vale:" +soma);
}
public void diferenca(){
int diferenca=x-y;
System.out.println("A diferenca vale:" +diferenca);
}
public void multiplicacao(){
int multiplicacao=x*y;
System.out.println("A multiplicacao vale:" +multiplicacao);
}
public void divisao(){
int divisao=x/y;
System.out.println("A divisao vale:" +divisao);
}
public void mostraAtributo(){
 System.out.println("O Valor de X vale:" + x + " O Valor de Y vale:" + y);
}
}
 
public class Principal {
public static void main(String[] args) {
 Calculadora obj=new Calculadora ();
 obj.soma();
 obj.diferenca();
 obj.multiplicacao();
 obj.divisao();
    obj.mostraAtributo();
 } 
}

Em php consegui chegar ate aqui:

<?php
class Calculadora
{
	private $x = 6;
	private $y = 3;
	
	/* método construtor */
	function __construct($x, $y)
	{
		$this->x = $x;
		$this->y = $y;
	}
	function SetX($x)
	{
		$this->x = $x;
	}
	function GetX($x)
	{
		return $this->x;
	}
	function SetY($y)
	{
		$this->y = $y;
	}
	function GetY($y)
	{
		return $this->y;
	}

	/* método soma */

?>
Alguem pode me ajudar a finalizar a Calculadora em php utilizando os mesmo conceito que coloquei em JAVA?

 

Abraços.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fiz da seguinte forma, porem da o seguinte erro:

Warning: include_once(classes/Calculadora.class.php) [function.include-once]: failed to open stream: No such file or directory in C:\Arquivos de programas\Apache Software Foundation\Apache2.2\htdocs\poo\principal.php on line 2

 

Warning: include_once() [function.include]: Failed opening 'classes/Calculadora.class.php' for inclusion (include_path='.;C:\php5\pear') in C:\Arquivos de programas\Apache Software Foundation\Apache2.2\htdocs\poo\principal.php on line 2

 

Fatal error: Class 'Calculadora' not found in C:\Arquivos de programas\Apache Software Foundation\Apache2.2\htdocs\poo\principal.php on line 5

 

O Codigo da classe Calculadora:

<?php
class Calculadora
{
	private $x = 6;
	private $y = 3;
	
	/* método construtor */
	function __construct($x, $y)
	{
		$this->x = $x;
		$this->y = $y;
	}
	function SetX($x)
	{
		$this->x = $x;
	}
	function GetX($x)
	{
		return $this->x;
	}
	function SetY($y)
	{
		$this->y = $y;
	}
	function GetY($y)
	{
		return $this->y;
	}
	/* método soma e Subtração */
	function Soma()
	{
		$this->Soma = $x + $y;
	}
	function Subtracao()
	{
		$this->Subtracao = $x - $y;
	}
}
?>
Aqui e o programa principal (principal.php):

<?php
include_once 'classes/Calculadora.class.php';

// instancia o objeto
$objValor = new Calculadora();
/*
$objValor = new Calculadora;
Atribui um novo valor a x e a y:
$objValor->SetX(10);
$objValor->SetY(20);
Leitura:
$objValor->GetX();
$objValor->GetY();
*/
echo "<br>\n";
echo "A Soma dos numeros é:  {$objValor->Soma()}";
echo "<br>";
echo "A Subtração dos numeros é: {$objValor->Subtracao()}";
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

<?php

class Calculadora {

private $x = 6;

private $y = 3;

 

public function __construct(){

} //Calculadora(){}

 

 

public function getX(){

return $this->x;

}

 

public function setX( $x ){

$this->x = $x;

}

 

public function getY(){

return $this->y;

}

 

public function setY( $y ){

$this->y = $y;

}

 

public function soma(){

$soma = $this->x + $this->y;

printf( "A soma vale: %d\n" , $soma );

}

 

public function diferenca(){

$diferenca = $this->x - $this->y;

printf( "A diferenca vale: %d\n" , $diferenca );

}

 

public function multiplicacao(){

$multiplicacao = $this->x * $this->y;

printf( "A multiplicacao vale: %d\n" , $multiplicacao );

}

 

public function divisao(){

$divisao = $this->x / $this->y;

printf( "A divisao vale: %d\n" , $divisao );

}

 

public function mostraAtributo(){

printf( "O Valor de X vale: %d\nO Valor de Y vale: %d\n" , $this->x , $this->y );

}

}

 

class Principal {

public static function main(){

$obj = new Calculadora( );

 

$obj->soma();

$obj->diferenca();

$obj->multiplicacao();

$obj->divisao();

$obj->mostraAtributo();

}

}

 

Principal::main();

Compartilhar este post


Link para o post
Compartilhar em outros sites

O erro é bem claro. Não encontrou o arquivo no caminho identificado.

 

Warning: include_once(classes/Calculadora.class.php) [function.include-once]: failed to open stream: No such file or directory in

 

Qual a estrutura de pastas e os arquivos? Em qual pasta está o arquivo que está tentando incluir a classe Calculadora?

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia João!

Funcionou direitinho conforme eu fiz em JAVA. Muito obrigado por ter me ajuda em ter colocado no php. Pelo que vi, você fez com o mesmo conceito do programa em JAVA, correto?

Resposta:

 

Uma duvida que fiquei foi: pra que serve %d\nO ?

Resposta Paulo: Pelo que eu entendi foi para encaixar o atributo X atraves do comando $this->x, estou correto???

 

Resposta:

 

Desde ja agradeço pela ajuda.

 

<?php
class Calculadora {
 private $x = 6;
 private $y = 3;

 public function __construct(){
 } //Calculadora(){}


 public function getX(){
 return $this->x;
 }

 public function setX( $x ){
 $this->x = $x;
 }

 public function getY(){
 return $this->y;
 }

 public function setY( $y ){
 $this->y = $y;
 }

 public function soma(){
 $soma = $this->x + $this->y;
 printf( "A soma vale: %d\n" , $soma );
 }

 public function diferenca(){
 $diferenca = $this->x - $this->y;
 printf( "A diferenca vale: %d\n" , $diferenca );
 }

 public function multiplicacao(){
 $multiplicacao = $this->x * $this->y;
 printf( "A multiplicacao vale: %d\n" , $multiplicacao );
 }

 public function divisao(){
 $divisao = $this->x / $this->y;
 printf( "A divisao vale: %d\n" , $divisao );
 }

 public function mostraAtributo(){
 printf( "O Valor de X vale: %d\nO Valor de Y vale: %d\n" , $this->x , $this->y );
 }
}

class Principal {
 public static function main(){
 $obj = new Calculadora( );

 $obj->soma();
 $obj->diferenca();
 $obj->multiplicacao();
 $obj->divisao();
 $obj->mostraAtributo();
 }
}

Principal::main();

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.