[LON-CAPA-cvs] cvs: loncom /homework/templates Plot_data.problem

www www@source.lon-capa.org
Sun, 01 Aug 2010 14:15:12 -0000


www		Sun Aug  1 14:15:12 2010 EDT

  Modified files:              
    /loncom/homework/templates	Plot_data.problem 
  Log:
  Bandaid for Bug #6242: put a safeguard into the sample code
  
  
Index: loncom/homework/templates/Plot_data.problem
diff -u loncom/homework/templates/Plot_data.problem:1.5 loncom/homework/templates/Plot_data.problem:1.6
--- loncom/homework/templates/Plot_data.problem:1.5	Mon Jul  6 17:12:47 2009
+++ loncom/homework/templates/Plot_data.problem	Sun Aug  1 14:15:12 2010
@@ -1,12 +1,19 @@
 <problem>
 
 <script type="loncapa/perl">
+#
+# This example populates arrays with the x and y coordinates of the plot.
+# For continuous functions, another approach is to use curve plots.
+#
 $amplitude = &random(1,4,0.5);
 $x_min = -5;
 $x_max =  5;
 for ($x=$x_min;$x<=$x_max;$x=$x+0.05) {
    push(@X,$x);
    push(@Y,$amplitude*sin($x));
+# Safeguard:
+# The following line limits the size of the array to 1000 to avoid infinite loops
+   if (($#X>1000) || ($#Y>1000)) { last; }
 }
 </script>