logo

Find koordinaterne for trekanten givet midtpunkt på hver side

Givet tre koordinater (x y), som er midtpunktet af trekantens sider. Opgaven er at finde trekantens koordinater. 

Eksempler:   

erstatte streng i streng java
Input : midx1 = 5 midy1 = 3 midx2 = 4 midy2 = 4 midx3 = 5 midy3 = 5 Output : x1 = 4 y1 = 2 x2 = 4 y2 = 6 x3 = 6 y3 = 4

koordinater for trekanten givet midtpunkt på hver side' title=



Solution can be verified by the figure.

Lad os separat løse for X-koordinater og Y-koordinater. For X-koordinater af toppunkter lad dem være x1x2x3. Så vil X-koordinaten for midterpunkter være (x1+ x2)/2 (x2+ x3)/2 (x3+ x1)/2. Bemærk summen af ​​disse 3 udtryk er lig med summen af ​​X-koordinater. Nu har vi summen af ​​3 variable og 3 udtryk for summen af ​​hvert par af dem find ud af værdierne af koordinater ved at løse ligninger. 
På samme måde løser vi for Y-koordinater.

hvordan man bestemmer skærmstørrelsen

Nedenfor er implementeringen af ​​denne tilgang:  

C++
// C++ program to find coordinate of the // triangle given midpoint of each side #include   #define N 3 using namespace std; // Return after solving the equations and // finding the vertices coordinate. vector<int> solve(int v[]) {  vector<int> res;  // Finding sum of all three coordinate.  int all3 = v[0] + v[1] + v[2];  // Solving the equation.  res.push_back(all3 - v[1]*2);  res.push_back(all3 - v[2]*2);  res.push_back(all3 - v[0]*2);  return res; } // Finds vertices of a triangles from given // middle vertices. void findVertex(int xmid[] int ymid[]) {  // Find X coordinates of vertices.  vector<int> V1 = solve(xmid);  // Find Y coordinates of vertices.  vector<int> V2 = solve(ymid);  // Output the solution.  for (int i = 0; i < 3; i++)  cout << V1[i] << ' '  << V2[i] <<endl; } // Driver code int main() {  int xmid[N] = { 5 4 5 };  int ymid[N] = { 3 4 5 };  findVertex(xmid ymid);  return 0; } 
Java
import java.util.Vector; // Java program to find coordinate of the  // triangle given midpoint of each side  class GFG { //static final int N = 3;  // Return after solving the equations and  // finding the vertices coordinate.   static Vector<Integer> solve(int v[]) {  Vector<Integer> res = new Vector<Integer>();  // Finding sum of all three coordinate.   int all3 = v[0] + v[1] + v[2];  // Solving the equation.   res.add(all3 - v[1] * 2);  res.add(all3 - v[2] * 2);  res.add(all3 - v[0] * 2);  return res;  } // Finds vertices of a triangles from given  // middle vertices.   static void findVertex(int xmid[] int ymid[]) {  // Find X coordinates of vertices.   Vector<Integer> V1 = solve(xmid);  // Find Y coordinates of vertices.   Vector<Integer> V2 = solve(ymid);  // Output the solution.   for (int i = 0; i < 3; i++) {  System.out.println(V1.get(i) + ' ' + V2.get(i));  }  } // Driver code   public static void main(String[] args) {  int xmid[] = {5 4 5};  int ymid[] = {3 4 5};  findVertex(xmid ymid);  } } // This code is contributed by // PrinciRaj1992 
Python3
# Python3 program to find coordinate of the # triangle given midpoint of each side N = 3 # Return after solving the equations and # finding the vertices coordinate. def solve(v): res = [] # Finding sum of all three coordinate. all3 = v[0] + v[1] + v[2] # Solving the equation. res.append(all3 - v[1] * 2) res.append(all3 - v[2] * 2) res.append(all3 - v[0] * 2) return res # Finds vertices of a triangles from given # middle vertices. def findVertex(xmid ymid): # Find X coordinates of vertices. V1 = solve(xmid) # Find Y coordinates of vertices. V2 = solve(ymid) # Output the solution. for i in range(0 3): print(V1[i] end=' ') print(V2[i]) # Driver code if __name__=='__main__': xmid = [5 4 5] ymid = [3 4 5] findVertex(xmid ymid) # This code is contributed by # Sanjit_Prasad 
C#
// C# program to find coordinate of the  // triangle given midpoint of each side  using System; using System.Collections; class GFG  {   //static final int N = 3;   // Return after solving the equations and   // finding the vertices coordinate.   static ArrayList solve(int []v)  {   ArrayList res = new ArrayList();   // Finding sum of all three coordinate.   int all3 = v[0] + v[1] + v[2];   // Solving the equation.   res.Add(all3 - v[1] * 2);   res.Add(all3 - v[2] * 2);   res.Add(all3 - v[0] * 2);   return res;   }   // Finds vertices of a triangles from given   // middle vertices.   static void findVertex(int []xmid int []ymid)  {   // Find X coordinates of vertices.   ArrayList V1 = solve(xmid);   // Find Y coordinates of vertices.   ArrayList V2 = solve(ymid);   // Output the solution.   for (int i = 0; i < 3; i++)  {   Console.WriteLine(V1[i] + ' ' + V2[i]);   }   }   // Driver code   public static void Main()   {   int []xmid = {5 4 5};   int []ymid = {3 4 5};   findVertex(xmid ymid);   }  }  // This code is contributed by mits 
PHP
 // PHP program to find coordinate of the  // triangle given midpoint of each side  $N = 3; // Return after solving the equations and  // finding the vertices coordinate.  function solve($v) { $res = array(); // Finding sum of all three coordinate.  $all3 = $v[0] + $v[1] + $v[2]; // Solving the equation.  array_push($res $all3 - $v[1] * 2); array_push($res $all3 - $v[2] * 2); array_push($res $all3 - $v[0] * 2); return $res; } // Finds vertices of a triangles from  // given middle vertices.  function findVertex($xmid $ymid) { // Find X coordinates of vertices.  $V1 = solve($xmid); // Find Y coordinates of vertices.  $V2 = solve($ymid); // Output the solution.  for ($i = 0; $i < 3; $i++) print($V1[$i] . ' ' . $V2[$i] . 'n'); } // Driver code  $xmid = array(5 4 5); $ymid = array(3 4 5); findVertex($xmid $ymid) // This code is contributed by mits ?> 
JavaScript
<script>  // JavaScript program to find coordinate of the  // triangle given midpoint of each side  // Return after solving the equations and  // finding the vertices coordinate.  function solve(v) {  var res = [];  // Finding sum of all three coordinate.  var all3 = v[0] + v[1] + v[2];  // Solving the equation.  res.push(all3 - v[1] * 2);  res.push(all3 - v[2] * 2);  res.push(all3 - v[0] * 2);  return res;  }  // Finds vertices of a triangles from given  // middle vertices.  function findVertex(xmid ymid) {  // Find X coordinates of vertices.  var V1 = solve(xmid);  // Find Y coordinates of vertices.  var V2 = solve(ymid);  // Output the solution.  for (var i = 0; i < 3; i++) {  document.write(V1[i] + ' ' + V2[i] + '  
'
); } } // Driver code var xmid = [5 4 5]; var ymid = [3 4 5]; findVertex(xmid ymid); </script>

Produktion:  

6 4 4 2 4 6

Tidskompleksitet: O(1)

konverter strin til int

Hjælpeplads : O(1), fordi den bruger konstant rum


 

Opret quiz