2016-03-25 2 views
-2

Ich möchte das folgende Skript in PHP studieren, es ist eigentlich in C, wie kann ich den exakt gleichen Code in PHP konvertieren?Coverting C-Skript zu PHP

int solution(int A[], int N) { 
int equi(int arr[], int n) { 
if (n==0) return -1; 
long long sum = 0; 
int i; 
for(i=0;i<n;i++) sum+=(long long) arr[i]; 

long long sum_left = 0;  
for(i=0;i<n;i++) { 
    long long sum_right = sum - sum_left - (long long) arr[i]; 
    if (sum_left == sum_right) return i; 
    sum_left += (long long) arr[i]; 
} 
return -1; 
} 

}

+0

PHP und C hat sehr nahe Syntax einfach nur den Datentyp entfernen. – Gokigooooks

Antwort

1

Sie müssen den Rückgabetyp für Funktionen herausnehmen (es sei denn, Sie möchten es in php7 tun) und variable Typen entfernen. In PHP startet die Funktion mit dem Schlüsselwort "function". Hier ist die mögliche Konvertierung Ihres Codes. Es sollte keinen Syntaxfehler geben, aber eine kleine Änderung im Code könnte eine genaue Funktionalität von C erfordern.

<?php 

function solution($A, $N) { 
    function equi($arr, $n) { 
     if ($n==0) return -1; 
     $sum = 0; 
     for($i=0;$i<$n;$i++) 
      $sum+=$arr[$i]; 

     $sum_left = 0;  
     for($i=0;$i<$n;$i++) { 
      $sum_right = $sum - $sum_left - $arr[$i]; 
      if ($sum_left == $sum_right) return $i; 
      $sum_left += $arr[$i]; 
     } 
     return -1; 
    } 
} 
1

Es gibt kein Werkzeug zur Verfügung, die direkte Umwandlung von C-Code zu PHP-Code machen. Sie müssen PHP lernen und den Code schreiben. PHP und C haben eine ähnliche Syntax. Testen Sie es mit allen möglichen Testfällen und stellen Sie sicher, dass Sie das gleiche Ergebnis wie C-Code erhalten.