bnghtz

mertani_sorozat_es_reciprok_sorozat.pl

Jun 1st, 2014
183
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Perl 1.76 KB | None | 0 0
  1. #! /usr/bin/perl
  2. use warnings;
  3.  
  4. # q - keresendo kvociens
  5. $q = 1;
  6. while (1)
  7. {
  8.   # n - sorozatban szereplo elemek futovaltozoja
  9.   # a - a sorozat elso eleme
  10.   # S - a sorozat sor osszege
  11.   $n = 1;
  12.   $a = 3;
  13.   $S = $a;
  14.  
  15.   # b - a reciprok sorozat elso eleme
  16.   # r - keresendo kvociens reciproka
  17.   # R - a reciprok sorozat sor osszege
  18.   $b = 1/$a;
  19.   $r = 1/$q;
  20.   $R = $b;
  21.  
  22.   # keressuk azt a sorozatot, aminek elso n elemenek osszege 93
  23.   # es a reciprok sorozatanak elso n elemenek osszege 31/48
  24.   #
  25.   # Tehat ha elso n-1 elem erteke 93nal kisebb, adjunk meg hozza meg egy elemet.
  26.   # Kozben szamoljuk a reciprok sorozat sorosszeget is.
  27.   while ($S < 93)
  28.   {
  29.     $a *= $q;
  30.     $b *= $r;
  31.     $S += $a;
  32.     $R += $b;
  33.     $n++;
  34.   }
  35.  
  36.   # ha megtalaltuk, irjuk ki az eredmenyt
  37.   # es jegyezzuk meg, h talaltunk vmit
  38.   if (($S == 93) && ($R == 31/48))
  39.   {
  40.     print "q = $q\n";
  41.     print "r = $r\n";
  42.     print "S($n) = $S\n";
  43.     print "R($n) = $R\n";
  44.     print "\n";
  45.     $hit = 1;
  46.   }
  47.  
  48.   # ha nem talaltuk meg, keressunk eggyel nagyob kvocienst, de ez Sn-nel nem lehet nagyobb
  49.   $q++;
  50.   last if $q > 93;
  51. }
  52.  
  53. print "nem talaltunk ilyen sorozatot\n" unless $hit;
  54.  
  55.  
  56.  
  57. =pod
  58. Hogy kell megoldani ezt a mértani sorozatos feladatot?
  59. a1=3
  60. Sn=93
  61. A tagok reciprokainak összege=31/48
  62.  
  63. =======================================================================
  64. an = a1 * q^(n-1)
  65. sn = a1 * (q^n - 1) / (q - 1) = 93
  66.  
  67. a2 = 3q
  68. a2^-1 = 1/3 * 1/q
  69. S2 = T = A tagok reciprokainak összege=31/48
  70. első tag: b1 = 1/a1 = 1/3
  71. quocines: r = 1/q
  72. T = 1/a1 * ((1/q)^n - 1) / (1/q - 1) = 31/48
  73.  
  74. 2 ismeretlen: n, q, 2 lineárisan független egyenlet, az egyenlet rendszer megoldható.
  75. 1/3 * ((1/q)^n - 1) / (1/q - 1) = 31/48
  76. 3 * (q^n - 1) / (q - 1) = 93
  77. =cut
Advertisement
Add Comment
Please, Sign In to add comment